Ответ
Нет, Deployment сам по себе не сохраняет состояние приложения (stateless). Он управляет только желаемым количеством идентичных Pod-реплик и их стратегией обновления.
Для хранения состояния используются другие ресурсы Kubernetes:
- PersistentVolume (PV) / PersistentVolumeClaim (PVC): Для постоянного хранения данных на диске, которые переживут перезапуск Pod.
# Пример PVC в манифесте Pod/Deployment spec: containers: - name: app volumeMounts: - mountPath: "/data" name: storage volumes: - name: storage persistentVolumeClaim: claimName: my-app-pvc - ConfigMap / Secret: Для хранения конфигурации и чувствительных данных, которые инжектируются в Pod как переменные среды или файлы.
- Внешние stateful-сервисы: Базы данных (например, запущенные как StatefulSet), объектные хранилища (S3) и т.д.
StatefulSet — это ресурс Kubernetes, предназначенный именно для stateful-приложений, где важны устойчивые идентификаторы Pod, стабильные сетевые имена и постоянное хранилище.