Spec-Zone.ru › Kubernetes 1.24

Развёртывание

Развёртывание позволяет выполнять декларативные обновления для Pod и ReplicaSet.

apiVersion: apps/v1

import "k8s.io/api/apps/v1"

Развёртывание

Развёртывание позволяет выполнять декларативные обновления для Pod и ReplicaSet.

  • apiVersion: apps/v1

  • kind: Развёртывание

  • metadata (ObjectMeta)

    Стандартные метаданные объекта. Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

  • spec (DeploymentSpec)

    Описание желаемого поведения развёртывания.

  • status (DeploymentStatus)

    Наиболее недавно наблюдаемое состояние развёртывания.

DeploymentSpec

DeploymentSpec — это описание желаемого поведения развёртывания.

  • selector (LabelSelector), обязательно

    Селектор меток для pod. Существующие ReplicaSet, чьи pod соответствуют этому селектору, будут затронуты этим развёртыванием. Он должен соответствовать меткам шаблона pod.

  • template (PodTemplateSpec), обязательно

    Шаблон описывает pod, которые будут созданы.

  • replicas (int32)

    Количество желаемых pod. Это указатель, чтобы различать явное значение нуля и отсутствие значения. По умолчанию 1.

  • minReadySeconds (int32)

    Минимальное количество секунд, в течение которых новый созданный pod должен быть готов без сбоев контейнеров, чтобы считаться доступным. По умолчанию 0 (pod будет считаться доступным сразу после готовности).

  • strategy (DeploymentStrategy)

    Стратегия исправления: retainKeys

    Стратегия развёртывания, используемая для замены существующих pod новыми.

    DeploymentStrategy описывает, как заменить существующие pod новыми.

    • strategy.type (string)

      Тип развёртывания. Может быть "Recreate" или "RollingUpdate". По умолчанию RollingUpdate.

    • strategy.rollingUpdate (RollingUpdateDeployment)

      Параметры настройки динамического обновления. Присутствуют только если DeploymentStrategyType = RollingUpdate.

      Описание желаемого поведения динамического обновления.

      • strategy.rollingUpdate.maxSurge (IntOrString)

        Максимальное количество pod, которое может быть запланировано сверх желаемого количества pod. Значение может быть абсолютным числом (например, 5) или процентной долей желаемых pod (например, 10%). Это не может быть 0, если MaxUnavailable равно 0. Абсолютное число вычисляется из процента путем округления вверх. По умолчанию 25%. Пример: если это установлено на 30%, новый ReplicaSet может быть масштабирован немедленно при запуске динамического обновления, таким образом, общее количество старых и новых pod не превысит 130% от желаемого количества pod. После уничтожения старых pod, новый ReplicaSet может быть дальше масштабирован, гарантируя, что общее количество работающих pod в любой момент во время обновления не превысит 130% от желаемого количества pod.

        IntOrString — это тип, который может содержать int32 или строку. При использовании в JSON или YAML маршаллировании и унмаршаллировании он производит или потребляет внутренний тип. Это позволяет, например, иметь поле JSON, которое может принимать имя или число.

      • strategy.rollingUpdate.maxUnavailable (IntOrString)

        Максимальное количество недоступных pod во время обновления. Значение может быть абсолютным числом (например, 5) или процентной долей желаемых pod (например, 10%). Абсолютное число вычисляется из процента путем округления вниз. Это не может быть 0, если MaxSurge равно 0. По умолчанию 25%. Пример: если это установлено на 30%, старый ReplicaSet может быть уменьшен до 70% от желаемого количества pod немедленно при запуске динамического обновления. После готовности новых pod, старый ReplicaSet может быть уменьшен дальше, за которым следует увеличение нового ReplicaSet, гарантируя, что общее количество доступных pod в любой момент во время обновления составляет как минимум 70% от желаемого количества pod.

        IntOrString — это тип, который может содержать int32 или строку. При использовании в JSON или YAML маршаллировании и унмаршаллировании он производит или потребляет внутренний тип. Это позволяет, например, иметь поле JSON, которое может принимать имя или число.

  • revisionHistoryLimit (int32)

    Количество старых ReplicaSet для сохранения, чтобы разрешить откат. Это указатель, чтобы различать явное значение нуля и отсутствие значения. По умолчанию 10.

  • progressDeadlineSeconds (int32)

    Максимальное время в секундах для развёртывания, чтобы добиться прогресса, прежде чем оно будет считаться неудачным. Контроллер развёртывания продолжит обрабатывать неудачные развёртывания, и условие с причиной ProgressDeadlineExceeded будет отображено в состоянии развёртывания. Обратите внимание, что прогресс не будет оцениваться в то время, когда развёртывание приостановлено. По умолчанию 600 сек.

  • paused (boolean)

    Указывает, что развёртывание приостановлено.

DeploymentStatus

DeploymentStatus — это наиболее недавно наблюдаемое состояние развёртывания.

  • replicas (int32)

    Общее количество pod, не завершённых, на которые нацелено это развёртывание (их метки соответствуют селектору).

  • availableReplicas (int32)

    Общее количество доступных pod (готовых как минимум minReadySeconds), на которые нацелено это развёртывание.

  • readyReplicas (int32)

    readyReplicas — это количество pod, на которые нацелено данное развёртывание, с условием Ready.

  • unavailableReplicas (int32)

    Общее количество недоступных pod, на которые нацелено это развёртывание. Это общее количество pod, которые всё ещё необходимы для того, чтобы развёртывание имело 100% доступной ёмкости. Они могут быть pod, которые работают, но ещё не доступны, или pod, которые ещё не были созданы.

  • updatedReplicas (int32)

    Общее количество не завершённых pod, на которые нацелено это развёртывание, имеющие желаемый шаблон спецификации.

  • collisionCount (int32)

    Количество коллизий хешей для развёртывания. Контроллер развёртывания использует это поле в качестве механизма избегания коллизий при необходимости создания имени для новейшего ReplicaSet.

  • conditions ([]DeploymentCondition)

    Стратегия исправления: слияние по ключу type

    Представляет последнюю доступную информацию о текущем состоянии развёртывания.

    DeploymentCondition описывает состояние развёртывания в определённый момент.

    • conditions.status (string), обязательно

      Состояние условия, одно из True, False, Unknown.

    • conditions.type (string), обязательно

      Тип условия развёртывания.

    • conditions.lastTransitionTime (Time)

      Последний момент, когда условие перешло из одного состояния в другое.

      Time — это оболочка вокруг time.Time, которая поддерживает правильную маршаллизацию в YAML и JSON. Оболочки предоставляются для многих фабричных методов, которые предлагает пакет time.

    • conditions.lastUpdateTime (Time)

      Последний момент, когда это условие было обновлено.

      Time — это оболочка вокруг time.Time, которая поддерживает правильную маршаллизацию в YAML и JSON. Оболочки предоставляются для многих фабричных методов, которые предлагает пакет time.

    • conditions.message (string)

      Читаемое человеком сообщение, указывающее подробности о переходе.

    • conditions.reason (string)

      Причина последнего перехода состояния условия.

  • observedGeneration (int64)

    Поколение, наблюдаемое контроллером развёртывания.

СписокРазвёртываний

DeploymentList — это список развёртываний.

  • apiVersion: apps/v1

  • kind: СписокРазвёртываний

  • metadata (ListMeta)

    Стандартные метаданные списка.

  • items ([]Развёртывание), обязательно

    Items — это список развёртываний.

© 2022 The Kubernetes Authors | Documentation Distributed under CC BY 4.0
Copyright © 2022 The Linux Foundation ®. All rights reserved.
https://v1-24.docs.kubernetes.io/docs/reference/kubernetes-api/workload-resources/deployment-v1/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API