Развертывание
Развертывание обеспечивает декларативное обновление подов и ReplicaSet.
Документация по концепции «Развертывание»
-
Развертывание управляет набором подов для выполнения рабочей нагрузки приложения, обычно не сохраняющей состояние.
apiVersion: apps/v1
import "k8s.io/api/apps/v1"
Развертывание
Развертывание обеспечивает декларативное обновление подов и ReplicaSet.
| Поле | Описание |
|---|---|
apiVersionstring |
APIVersion определяет версионированную схему этого представления объекта. Серверы должны преобразовывать распознанные схемы в последнее внутреннее значение и могут отклонять нераспознанные значения. Подробнее: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
kindstring |
Kind — строковое значение, представляющее ресурс REST, который описывает этот объект. Серверы могут определить его по конечной точке, на которую клиент отправляет запросы. Изменение не допускается. Используется формат CamelCase. Подробнее: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
metadataObjectMeta |
Стандартные метаданные объекта. Подробнее: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata |
specDeploymentSpec |
Спецификация желаемого поведения развертывания. |
statusDeploymentStatus |
Последнее наблюдаемое состояние развертывания. |
DeploymentSpec
DeploymentSpec — спецификация желаемого поведения развертывания.
| Поле | Описание |
|---|---|
minReadySecondsinteger |
Минимальное количество секунд, в течение которых созданный под должен быть готовым, а ни один из его контейнеров не должен завершаться сбоем, чтобы под считался доступным. По умолчанию — 0 (под считается доступным сразу после перехода в состояние готовности). |
pausedboolean |
Указывает, что развертывание приостановлено. |
progressDeadlineSecondsinteger |
Максимальное время в секундах, в течение которого развертывание должно продвигаться, прежде чем будет считаться неудачным. Контроллер развертывания продолжит обработку неудачных развертываний, а в состоянии развертывания появится условие с причиной ProgressDeadlineExceeded. Обратите внимание: во время приостановки развертывания его продвижение не оценивается. По умолчанию — 600 с. |
replicasinteger |
Желаемое количество подов. Это указатель, позволяющий отличить явно заданное значение 0 от отсутствующего значения. По умолчанию — 1. |
revisionHistoryLimitinteger |
Количество старых ReplicaSet, сохраняемых для возможности отката. Это указатель, позволяющий отличить явно заданное значение 0 от отсутствующего значения. По умолчанию — 10. |
selector *LabelSelector |
Селектор меток для подов. Существующие ReplicaSet, поды которых выбраны этим селектором, будут затронуты данным развертыванием. Селектор должен соответствовать меткам шаблона пода. |
strategyDeploymentStrategy стратегия слияния при исправлении: retainKeys |
Стратегия развертывания, используемая для замены существующих подов новыми. |
strategy.rollingUpdateRollingUpdateDeployment |
Параметры конфигурации последовательного обновления. Присутствуют только при DeploymentStrategyType = RollingUpdate. |
strategy.rollingUpdate.maxSurge |
Максимальное количество подов, которое можно запланировать сверх желаемого количества подов. Значение может быть абсолютным числом (например, 5) или процентом от желаемого количества подов (например, 10%). Если MaxUnavailable равно 0, это значение не может быть равно 0. Абсолютное число вычисляется из процента с округлением вверх. По умолчанию — 25%. Например, если задано значение 30%, новый ReplicaSet можно сразу увеличить при начале последовательного обновления так, чтобы общее количество старых и новых подов не превышало 130% от желаемого количества. После удаления старых подов новый ReplicaSet можно увеличить дальше, обеспечив, чтобы общее количество подов, работающих в любой момент обновления, не превышало 130% от желаемого количества. |
strategy.rollingUpdate.maxUnavailable |
Максимальное количество подов, которые могут быть недоступны во время обновления. Значение может быть абсолютным числом (например, 5) или процентом от желаемого количества подов (например, 10%). Абсолютное число вычисляется из процента с округлением вниз. Если MaxSurge равно 0, это значение не может быть равно 0. По умолчанию — 25%. Например, если задано значение 30%, старый ReplicaSet можно сразу уменьшить до 70% от желаемого количества подов при начале последовательного обновления. После готовности новых подов старый ReplicaSet можно уменьшить дальше, а затем увеличить новый ReplicaSet, обеспечив, чтобы общее количество доступных подов на протяжении всего обновления составляло не менее 70% от желаемого количества. |
strategy.typestring |
Тип развертывания. Может быть "Recreate" или "RollingUpdate". По умолчанию — RollingUpdate. Возможные значения перечисления: - `"Recreate"` Удалить все существующие поды перед созданием новых. - `"RollingUpdate"` Заменить старые ReplicaSet новыми с помощью последовательного обновления: постепенно уменьшать количество старых ReplicaSet и увеличивать количество новых. |
template *PodTemplateSpec |
Шаблон описывает создаваемые поды. Единственное допустимое значение template.spec.restartPolicy — "Always". |
DeploymentStatus
DeploymentStatus — последнее наблюдаемое состояние развертывания.
| Поле | Описание |
|---|---|
availableReplicasinteger |
Общее количество доступных подов, не находящихся в процессе завершения (готовых не менее minReadySeconds), на которые нацелено это развертывание. |
collisionCountinteger |
Количество коллизий хешей для развертывания. Контроллер развертывания использует это поле для предотвращения коллизий при создании имени новейшего ReplicaSet. |
conditionsМассив DeploymentCondition стратегия слияния при исправлении: слияние по ключу type
|
Представляет последние доступные наблюдения за текущим состоянием развертывания. |
observedGenerationinteger |
Поколение, наблюдаемое контроллером развертывания. |
readyReplicasinteger |
Общее количество подов, не находящихся в процессе завершения, на которые нацелено это развертывание и у которых есть условие Ready. |
replicasinteger |
Общее количество подов, не находящихся в процессе завершения, на которые нацелено это развертывание (их метки соответствуют селектору). |
terminatingReplicasinteger |
Общее количество завершающихся подов, на которые нацелено это развертывание. У завершающихся подов поле .metadata.deletionTimestamp имеет ненулевое значение, а поле .status.phase еще не достигло состояния Failed или Succeeded. Это поле находится на стадии бета-тестирования и требует включения функции DeploymentReplicaSetTerminatingReplicas (включена по умолчанию). |
unavailableReplicasinteger |
Общее количество недоступных подов, на которые нацелено это развертывание. Это общее количество подов, которые еще необходимы для обеспечения 100% доступной емкости развертывания. Это могут быть работающие, но еще недоступные поды, либо поды, которые еще не созданы. |
updatedReplicasinteger |
Общее количество подов, не находящихся в процессе завершения, на которые нацелено это развертывание и которые имеют желаемую спецификацию шаблона. |
DeploymentList
DeploymentList — это список развертываний.
| Поле | Описание |
|---|---|
apiVersionstring |
APIVersion определяет версионированную схему этого представления объекта. Серверы должны преобразовывать распознанные схемы в последнее внутреннее значение и могут отклонять нераспознанные значения. Подробнее: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
items *Массив Deployment |
Items — это список развертываний. |
kindstring |
Kind — строковое значение, представляющее ресурс REST, который описывает этот объект. Серверы могут определить его по конечной точке, на которую клиент отправляет запросы. Изменение не допускается. Используется формат CamelCase. Подробнее: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
metadataListMeta |
Стандартные метаданные списка. |
DeploymentCondition
DeploymentCondition описывает состояние развертывания в определенный момент времени.
| Поле | Описание |
|---|---|
lastTransitionTimeTime |
Время последнего перехода условия из одного состояния в другое. |
lastUpdateTimeTime |
Время последнего обновления этого условия. |
messagestring |
Понятное человеку сообщение с подробной информацией о переходе. |
reasonstring |
Причина последнего перехода условия. |
status *string |
Состояние условия: True, False или Unknown. |
type *string |
Тип условия развертывания. |
© 2026 The Kubernetes Authors | Documentation Distributed under CC BY 4.0
Copyright © 2026 The Linux Foundation ®. All rights reserved.
https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/