Стадия жизненного цикла модуля: Предварительная версия (preview)
У модуля есть требования для установки
Deckhouse Platform устанавливает CRD, но не удаляет их при отключении модуля. Если вам больше не нужны созданные CRD, удалите их.
OpensearchClass
Область: Cluster
Версия: v1alpha1
-
строкаapiVersion
APIVersion определяет версионную схему этого представления объекта.
Серверы должны преобразовывать распознанные схемы в последнее внутреннее значение и могут отклонять нераспознанные значения. Подробнее: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
-
строкаkind
Kind — это строковое значение, представляющее REST-ресурс, который представляет этот объект.
Серверы могут определить это из конечной точки, на которую клиент отправляет запросы. Не может быть обновлено. В CamelCase. Подробнее: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
-
объектmetadata
-
объектspec
OpensearchClassSpec определяет политику класса OpenSearch на уровне администратора: допустимые диапазоны cores/memory, переопределяемые пользователем параметры и настройки размещения подов.
Неизменяем после создания.
-
объектspec.nodeAffinityОграничивает узлы, на которых может быть размещён под, на основе меток узлов. Концептуально аналогично
nodeSelector, но с более гибкими правилами.-
массив объектовspec.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution
Планировщик предпочтет разворачивать поды на узлы, которые удовлетворяют выражениям affinity, указанным этим полем, но он может выбрать узел, который нарушает одно или несколько выражений.
Наиболее предпочтительный узел — это тот, у которого наибольшая сумма весов, т.е. для каждого узла, который соответствует всем требованиям планирования (запрос ресурсов, выражения affinity requiredDuringScheduling и т.д.), вычислить сумму, перебирая элементы этого поля и добавляя “weight” к сумме, если узел соответствует соответствующим matchExpressions; узел(ы) с наибольшей суммой являются наиболее предпочтительными.
-
объектspec.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preferenceУсловие селектора узла, связанное с соответствующим весом (weight).
-
массив объектовspec.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchExpressionsСписок требований селектора узла по лейблам узла.
-
строкаspec.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchExpressions.keyКлюч лейбла, к которому применяется селектор.
-
строкаspec.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchExpressions.operator
Представляет отношение ключа к набору значений.
Поддерживаемые операторы:
In;NotIn;Exists;DoesNotExist;Gt;Lt.
-
массив строкspec.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchExpressions.values
Массив строковых значений, который заполняется в зависимости от оператора:
- при операторе
InилиNotInмассив значений НЕ должен быть пустым; - при операторе
ExistsилиDoesNotExist, массив значений должен быть пустым; - при операторе
GtилиLtмассив значений должен иметь один элемент, который будет интерпретирован как целое число.
Этот массив заменяется при применении strategic merge patch.
- при операторе
-
-
массив объектовspec.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchFieldsСписок требований селектора узла по полям узла.
-
строкаspec.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchFields.keyКлюч лейбла, к которому применяется селектор.
-
строкаspec.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchFields.operator
Представляет отношение ключа к набору значений.
Поддерживаемые операторы:
In;NotIn;Exists;DoesNotExist;Gt;Lt.
-
массив строкspec.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchFields.values
Массив строковых значений, который заполняется в зависимости от оператора:
- при операторе
InилиNotInмассив значений НЕ должен быть пустым; - при операторе
ExistsилиDoesNotExist, массив значений должен быть пустым; - при операторе
GtилиLtмассив значений должен иметь один элемент, который будет интерпретирован как целое число.
Этот массив заменяется при применении strategic merge patch.
- при операторе
-
-
-
целое числоspec.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.weightВес, определяющий приоритет сопоставления соответствующему
nodeSelectorTerm, в диапазоне 1-100.
-
-
объектspec.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution
Если требования affinity, указанные этим полем, не выполняются во время планирования, под не будет запланирован на узел.
Если требования affinity, указанные этим полем, перестают выполняться в какой-то момент во время выполнения пода (например, из-за обновления), система может или не может попытаться в конечном итоге выселить под с его узла.
-
массив объектовspec.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms
Обязательный параметр
Список условий селектора узла. Термины объединяются по логикеИЛИ.-
массив объектовspec.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchExpressionsСписок требований селектора узла по лейблам узла.
-
строкаspec.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchExpressions.keyКлюч лейбла, к которому применяется селектор.
-
строкаspec.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchExpressions.operator
Представляет отношение ключа к набору значений.
Поддерживаемые операторы:
In;NotIn;Exists;DoesNotExist;Gt;Lt.
-
массив строкspec.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchExpressions.values
Массив строковых значений, который заполняется в зависимости от оператора:
- при операторе
InилиNotInмассив значений НЕ должен быть пустым; - при операторе
ExistsилиDoesNotExist, массив значений должен быть пустым; - при операторе
GtилиLtмассив значений должен иметь один элемент, который будет интерпретирован как целое число.
Этот массив заменяется при применении strategic merge patch.
- при операторе
-
-
массив объектовspec.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchFieldsСписок требований селектора узла по полям узла.
-
строкаspec.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchFields.keyКлюч лейбла, к которому применяется селектор.
-
строкаspec.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchFields.operator
Представляет отношение ключа к набору значений.
Поддерживаемые операторы:
In;NotIn;Exists;DoesNotExist;Gt;Lt.
-
массив строкspec.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchFields.values
Массив строковых значений, который заполняется в зависимости от оператора:
- при операторе
InилиNotInмассив значений НЕ должен быть пустым; - при операторе
ExistsилиDoesNotExist, массив значений должен быть пустым; - при операторе
GtилиLtмассив значений должен иметь один элемент, который будет интерпретирован как целое число.
Этот массив заменяется при применении strategic merge patch.
- при операторе
-
-
-
-
-
объектspec.nodeSelectorПозволяет назначать поды сервиса на указанные узлы. Аналогично параметру
spec.nodeSelectorдля Kubernetes Pods. -
массив строкspec.overridableConfigurationСписок параметров конфигурации, которые пользователь может переопределить в своём ресурсе Opensearch.
-
строкаspec.overridableConfiguration.Элемент массиваConfigurationType — тип параметра конфигурации.
-
-
массив объектовspec.sizingPolicies
Обязательный параметр
Допустимые диапазоны cores/memory и шаги дляspec.instanceOpensearch.-
массив строкspec.sizingPolicies.coreFractionsДоля гарантированных CPU (requests) относительно limits ядер, допустимая для данной политики.
Пример:
coreFractions: - 10% - 30% - 50% - 100% -
объектspec.sizingPolicies.coresДопустимый диапазон количества ядер CPU.
-
целое числоspec.sizingPolicies.cores.max
Обязательный параметр
Верхний предел допустимого количества ядер CPU.Пример:
max: 6 -
целое числоspec.sizingPolicies.cores.min
Обязательный параметр
Нижний предел допустимого количества ядер CPU.Пример:
min: 1
-
-
объектspec.sizingPolicies.memoryОпределяет допустимый диапазон памяти и шаг.
-
строка или числоspec.sizingPolicies.memory.max
Обязательный параметр
Верхний предел объёма памяти.Шаблон:
^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$Пример:
max: 5Gi -
строка или числоspec.sizingPolicies.memory.min
Обязательный параметр
Нижний предел объёма памяти.Шаблон:
^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$Пример:
min: 128Mi -
строка или числоspec.sizingPolicies.memory.step
Обязательный параметр
Шаг изменения объёма памяти. Указанный объём памяти должен быть кратен этому значению.Шаблон:
^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$Пример:
step: 100Mi
-
-
-
массив объектовspec.tolerationsTolerations сервисных подов.
-
строкаspec.tolerations.effectЭффект taint для сопоставления. Пустое значение означает сопоставление со всеми эффектами taint. При указании допустимые значения: NoSchedule, PreferNoSchedule и NoExecute.
-
строкаspec.tolerations.key
Key — ключ taint, к которому применяется толерантность. Пустое значение означает сопоставление со всеми ключами taint.
Если ключ пустой, оператор должен быть Exists; эта комбинация означает сопоставление со всеми значениями и всеми ключами.
-
строкаspec.tolerations.operator
Operator представляет отношение ключа к значению.
Допустимые операторы: Exists, Equal, Lt и Gt. По умолчанию Equal.
-
целое числоspec.tolerations.tolerationSeconds
TolerationSeconds представляет период времени, в течение которого толерантность (которая должна быть с эффектом NoExecute, иначе это поле игнорируется) толерирует taint.
По умолчанию не установлено, что означает толерировать taint вечно (не вытеснять).
-
строкаspec.tolerations.value
Value — значение taint, с которым сопоставляется толерантность.
Если оператор Exists, значение должно быть пустым, иначе просто обычная строка.
-
-
массив объектовspec.validationsCEL-правила валидации, применяемые к пользовательской конфигурации Opensearch.
-
строкаspec.validations.messageСообщение, отображаемое при нарушении правила
rule.Пример:
message: '''maxConnections should be greater than 100''\' -
строкаspec.validations.rule
CEL-правило для валидации конфигурации Opensearch.
Доступные предопределённые переменные:
instance.memory.sizeinstance.cpu.cores
Пример:
rule: configuration.maxConnections > 100
-
-
-
объектstatusstatus отражает текущее наблюдаемое состояние OpensearchClass.
Opensearch
Область: Namespaced
Версия: v1alpha1
-
строкаapiVersion
APIVersion определяет версионную схему этого представления объекта.
Серверы должны преобразовывать распознанные схемы в последнее внутреннее значение и могут отклонять нераспознанные значения. Подробнее: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
-
строкаkind
Kind — это строковое значение, представляющее REST-ресурс, который представляет этот объект.
Серверы могут определить это из конечной точки, на которую клиент отправляет запросы. Не может быть обновлено. В CamelCase. Подробнее: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
-
объектmetadata
-
объектspecOpensearchSpec определяет желаемое состояние OpenSearch
-
объектspec.instance
Обязательный параметр
Требования к ресурсам каждого сгенерированного Pod.
Подробнее в документации Kubernetes.
-
объектspec.instance.cpu
Обязательный параметр
-
строкаspec.instance.cpu.coreFraction
Обязательный параметр
Гарантированная доля CPU (requests) относительно лимита (limits) ядер. Например,50%означает, что requests равны половине от limits.Пример:
coreFraction: 50% -
целое числоspec.instance.cpu.cores
Обязательный параметр
Количество ядер CPU.
-
-
объектspec.instance.memory
Обязательный параметр
-
строка или числоspec.instance.memory.size
Обязательный параметр
Объём памяти пода.Шаблон:
^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$Пример:
size: 1Gi
-
-
объектspec.instance.persistentVolumeClaim
-
строка или числоspec.instance.persistentVolumeClaim.size
Обязательный параметр
Размер persistent volume для данных Opensearch.По умолчанию:
1GiШаблон:
^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$Пример:
size: 1Gi -
строкаspec.instance.persistentVolumeClaim.storageClassName
Имя StorageClass для данных Opensearch.
Если не задано, используется StorageClass по умолчанию в кластере. Параметр применяется только при создании и не может быть изменён позже.
Пример:
storageClassName: local-path
-
-
-
объектspec.mTLS
Настройки mutual TLS (проверка клиентских сертификатов) на HTTP-уровне.
Работает независимо от серверного TLS (spec.tls).
-
объектspec.mTLS.ca
Обязательный параметр
Источник CA-сертификата, которым подписаны клиентские сертификаты.-
объектspec.mTLS.ca.certManager
Ссылка на cert-manager Issuer или ClusterIssuer, чей CA используется для проверки клиентских сертификатов.
Используется только при mode: CertManager.
Должно быть указано ровно одно из полей:
- clusterIssuerName;
- issuerName.
-
строкаspec.mTLS.ca.certManager.clusterIssuerName
Имя cert-manager ClusterIssuer.
Не может быть задано одновременно с issuerName.
-
строкаspec.mTLS.ca.certManager.issuerName
Имя cert-manager Issuer в namespace сервиса.
Не может быть задано одновременно с clusterIssuerName.
-
объектspec.mTLS.ca.customCA
Ссылка на пользовательский Secret с CA-сертификатом для проверки клиентских сертификатов.
Используется только при mode: CustomCA.
-
строкаspec.mTLS.ca.customCA.clientCASecret
Обязательный параметр
Имя Secret в том же namespace, содержащего ключ ca.crt.Минимальная длина:
1
-
-
строкаspec.mTLS.ca.mode
Обязательный параметр
Источник клиентского CA-сертификата.
Возможные значения:
- CustomCA — пользовательский Secret с ca.crt;
- CertManager — CA из cert-manager Issuer/ClusterIssuer;
- Istio — CA из Istio service mesh (namespace d8-istio).
Допустимые значения:
CustomCA,CertManager,Istio
-
-
строкаspec.mTLS.mode
Обязательный параметр
Режим проверки клиентских сертификатов.
Возможные значения:
- ConnectionOnly — сервер запрашивает клиентский сертификат для TLS-канала, но не использует его для аутентификации (clientauth_mode=OPTIONAL);
- ConnectionAndAuth — сервер требует клиентский сертификат и использует его как удостоверение для аутентификации (clientauth_mode=REQUIRE).
Допустимые значения:
ConnectionOnly,ConnectionAndAuth
-
-
строкаspec.observability
Режим мониторинга инстанса:
Enabled— полный мониторинг с алертами;Disabled— мониторинг отключён;EnabledWithoutAlerts— мониторинг без алертов.
По умолчанию:
EnabledДопустимые значения:
Enabled,Disabled,EnabledWithoutAlerts -
строкаspec.opensearchClassName
Обязательный параметр
Имя ресурсаOpensearchClass, используемого для валидации конфигурации инстанса.По умолчанию:
defaultПример:
opensearchClassName: default -
объектspec.tlsНастройки TLS сервера Opensearch (cert-manager или пользовательский сертификат).
-
объектspec.tls.certManager
Настройки cert-manager для управления серверным TLS-сертификатом Opensearch.
Используется только при mode: CertManager.
Должно быть указано ровно одно из полей:
- clusterIssuerName;
- issuerName.
-
строкаspec.tls.certManager.clusterIssuerName
Имя cert-manager ClusterIssuer.
Используется для выпуска сертификата через ClusterIssuer. Не может быть задано одновременно с issuerName.
-
строкаspec.tls.certManager.issuerName
Имя cert-manager Issuer в namespace сервиса.
Используется для выпуска сертификата через namespaced Issuer. Не может быть задано одновременно с clusterIssuerName.
-
объектspec.tls.customCertificate
Настройки пользовательского серверного TLS-сертификата.
Используется только при mode: CustomCertificate.
-
строкаspec.tls.customCertificate.serverCASecret
Обязательный параметр
Имя Secret с ключом ca.crt.
Содержит CA-сертификат, которым подписан serverTLSSecret. Оператор проверяет наличие Secret и ключа ca.crt, но не монтирует его в pod сервиса.
-
строкаspec.tls.customCertificate.serverTLSSecret
Обязательный параметр
Имя Secret типа kubernetes.io/tls с ключами tls.crt и tls.key.
Сертификат должен содержать SAN с DNS-именами сервиса Opensearch, иначе клиенты с полной TLS-проверкой будут отклонять соединение.
-
-
строкаspec.tls.mode
Режим управления серверными TLS-сертификатами Opensearch.
Возможные значения:
- CertManager — сертификат выпускается и управляется cert-manager;
- CustomCertificate — используется пользовательский TLS-сертификат из Secret.
По умолчанию: CertManager.
По умолчанию:
CertManagerДопустимые значения:
CertManager,CustomCertificate
-
-
-
объектstatusstatus отражает текущее наблюдаемое состояние Opensearch.
-
массив объектовstatus.conditions
-
строкаstatus.conditions.lastTransitionTime
-
строкаstatus.conditions.messageСообщение с подробностями о переходе.
-
целое числоstatus.conditions.observedGenerationПоколение объекта, при котором было установлено данное условие.
-
строкаstatus.conditions.reasonПричина последнего изменения условия.
-
строкаstatus.conditions.statusСтатус условия — одно из значений True, False, Unknown.
-
строкаstatus.conditions.typeТип условия.
-
-
объектstatus.instancesReportedState
-
объектstatus.instancesReportedState.<KEY_NAME>
<KEY_NAME>— имя параметра (ключ объекта).-
строкаstatus.instancesReportedState.<KEY_NAME>.configHash
-
-
-
объектstatus.lastValidConfigurationПоследняя конфигурация, успешно прошедшая валидацию.
-
объектstatus.lastValidConfiguration.configuration
-
объектstatus.lastValidConfiguration.instance
-
объектstatus.lastValidConfiguration.instance.cpu
Обязательный параметр
-
строкаstatus.lastValidConfiguration.instance.cpu.coreFraction
Обязательный параметр
Множитель для расчётаrequestsCPU относительноlimits.Пример:
coreFraction: 50% -
целое числоstatus.lastValidConfiguration.instance.cpu.cores
Обязательный параметр
Количество ядер CPU.
-
-
объектstatus.lastValidConfiguration.instance.memory
Обязательный параметр
-
строка или числоstatus.lastValidConfiguration.instance.memory.size
Обязательный параметр
Объём памяти.Шаблон:
^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$Пример:
size: 1Gi
-
-
объектstatus.lastValidConfiguration.instance.persistentVolumeClaim
-
строка или числоstatus.lastValidConfiguration.instance.persistentVolumeClaim.size
Обязательный параметр
Размер хранилища.По умолчанию:
1GiШаблон:
^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$Пример:
size: 1Gi -
строкаstatus.lastValidConfiguration.instance.persistentVolumeClaim.storageClassName
Имя StorageClass, используемого для хранения данных Opensearch.
Если значение не задано, используется StorageClass по умолчанию в кластере. Параметр применяется только при создании и не может быть изменён позже.
Пример:
storageClassName: local-path
-
-
-
объектstatus.lastValidConfiguration.schedulingПараметры планирования подов из последней валидной конфигурации.
-
объектstatus.lastValidConfiguration.scheduling.affinityГруппа правил affinity для планирования подов.
-
объектstatus.lastValidConfiguration.scheduling.affinity.nodeAffinityПравила node affinity для пода.
-
массив объектовstatus.lastValidConfiguration.scheduling.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecutionПланировщик предпочитает размещать поды на узлах, удовлетворяющих условиям affinity, но может выбрать узел, нарушающий одно или несколько из них.
-
объектstatus.lastValidConfiguration.scheduling.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preferenceУсловие выбора узла, связанное с соответствующим весом.
-
массив объектовstatus.lastValidConfiguration.scheduling.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchExpressionsСписок требований к узлам по меткам.
-
строкаstatus.lastValidConfiguration.scheduling.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchExpressions.keyКлюч метки, к которому применяется селектор.
-
строкаstatus.lastValidConfiguration.scheduling.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchExpressions.operatorОписывает связь ключа с набором значений. Допустимые операторы: In, NotIn, Exists, DoesNotExist, Gt, Lt.
-
массив строкstatus.lastValidConfiguration.scheduling.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchExpressions.valuesМассив строковых значений для оператора.
-
-
массив объектовstatus.lastValidConfiguration.scheduling.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchFieldsСписок требований к узлам по полям.
-
строкаstatus.lastValidConfiguration.scheduling.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchFields.keyКлюч поля, к которому применяется селектор.
-
строкаstatus.lastValidConfiguration.scheduling.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchFields.operatorОписывает связь ключа с набором значений. Допустимые операторы: In, NotIn, Exists, DoesNotExist, Gt, Lt.
-
массив строкstatus.lastValidConfiguration.scheduling.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchFields.valuesМассив строковых значений для оператора.
-
-
-
целое числоstatus.lastValidConfiguration.scheduling.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.weightВес совпадения с nodeSelectorTerm, в диапазоне 1–100.
-
-
объектstatus.lastValidConfiguration.scheduling.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecutionЕсли требования не выполнены при планировании, под не будет размещён на узле.
-
массив объектовstatus.lastValidConfiguration.scheduling.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms
Обязательный параметр
Обязательное поле. Список условий выбора узлов (объединяются по ИЛИ).-
массив объектовstatus.lastValidConfiguration.scheduling.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchExpressionsСписок требований к узлам по меткам.
-
строкаstatus.lastValidConfiguration.scheduling.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchExpressions.keyКлюч метки.
-
строкаstatus.lastValidConfiguration.scheduling.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchExpressions.operatorОператор сравнения.
-
массив строкstatus.lastValidConfiguration.scheduling.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchExpressions.valuesМассив значений.
-
-
массив объектовstatus.lastValidConfiguration.scheduling.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchFieldsСписок требований к узлам по полям.
-
строкаstatus.lastValidConfiguration.scheduling.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchFields.keyКлюч поля.
-
строкаstatus.lastValidConfiguration.scheduling.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchFields.operatorОператор сравнения.
-
массив строкstatus.lastValidConfiguration.scheduling.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchFields.valuesМассив значений.
-
-
-
-
-
объектstatus.lastValidConfiguration.scheduling.affinity.podAffinityПравила pod affinity (например, размещение пода на том же узле, зоне и т.д., что и другой под или группа подов).
-
массив объектовstatus.lastValidConfiguration.scheduling.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecutionПланировщик предпочитает узлы, удовлетворяющие условиям affinity, но может выбрать и другие.
-
объектstatus.lastValidConfiguration.scheduling.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTermОбязательное поле. Условие pod affinity, связанное с весом.
-
объектstatus.lastValidConfiguration.scheduling.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector
Запрос по меткам к набору ресурсов (подов).
Null означает отсутствие совпадений.
-
массив объектовstatus.lastValidConfiguration.scheduling.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressionsСписок требований к меткам (объединяются по И).
-
строкаstatus.lastValidConfiguration.scheduling.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.keyКлюч метки.
-
строкаstatus.lastValidConfiguration.scheduling.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.operatorОператор связи ключа с набором значений. Допустимые операторы: In, NotIn, Exists, DoesNotExist.
-
массив строкstatus.lastValidConfiguration.scheduling.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.valuesМассив значений для оператора.
-
-
объектstatus.lastValidConfiguration.scheduling.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchLabelsСловарь пар {ключ, значение}. Эквивалентен набору matchExpressions с оператором In и массивом из одного значения. Требования объединяются по И.
-
-
массив строкstatus.lastValidConfiguration.scheduling.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.matchLabelKeys
Ключи меток пода, сужающие набор подов, учитываемых при affinity.
Для каждого ключа берётся значение из меток текущего пода и добавляется к labelSelector как условие
key in (value). -
массив строкstatus.lastValidConfiguration.scheduling.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.mismatchLabelKeys
Ключи меток пода, исключающие поды из affinity.
Для каждого ключа берётся значение из меток текущего пода и добавляется к labelSelector как условие
key notin (value). -
объектstatus.lastValidConfiguration.scheduling.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector
Запрос по меткам к набору namespace’ов, к которым применяется условие.
Пустой селектор соответствует всем namespace’ам.
-
массив объектовstatus.lastValidConfiguration.scheduling.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressionsСписок требований к меткам (объединяются по И).
-
строкаstatus.lastValidConfiguration.scheduling.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.keyКлюч метки.
-
строкаstatus.lastValidConfiguration.scheduling.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.operatorОператор связи ключа с набором значений.
-
массив строкstatus.lastValidConfiguration.scheduling.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.valuesМассив значений для оператора.
-
-
объектstatus.lastValidConfiguration.scheduling.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchLabelsСловарь пар {ключ, значение}. Требования объединяются по И.
-
-
массив строкstatus.lastValidConfiguration.scheduling.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaces
Статический список имён namespace’ов, к которым применяется условие.
Итоговый набор — объединение значений этого поля и namespaceSelector. Null или пустой список означает namespace текущего пода.
-
строкаstatus.lastValidConfiguration.scheduling.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.topologyKey
Обязательный параметр
Ключ метки узла, определяющий топологию размещения подов.
Поды считаются размещёнными вместе, если запущены на узлах с одинаковым значением метки topologyKey. Пустое значение не допускается.
-
-
целое числоstatus.lastValidConfiguration.scheduling.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.weightВес совпадения с podAffinityTerm, в диапазоне 1–100.
-
-
массив объектовstatus.lastValidConfiguration.scheduling.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution
Если требования не выполнены при планировании, под не будет размещён на узле.
При наличии нескольких элементов списки узлов для каждого podAffinityTerm пересекаются.
-
объектstatus.lastValidConfiguration.scheduling.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelectorЗапрос по меткам к набору подов. Null означает отсутствие совпадений.
-
массив объектовstatus.lastValidConfiguration.scheduling.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressionsСписок требований к меткам (объединяются по И).
-
строкаstatus.lastValidConfiguration.scheduling.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.keyКлюч метки.
-
строкаstatus.lastValidConfiguration.scheduling.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.operatorОператор сравнения.
-
массив строкstatus.lastValidConfiguration.scheduling.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.valuesМассив значений.
-
-
объектstatus.lastValidConfiguration.scheduling.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchLabelsСловарь пар {ключ, значение}. Требования объединяются по И.
-
-
массив строкstatus.lastValidConfiguration.scheduling.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.matchLabelKeysНабор ключей меток подов для учёта при вычислении affinity.
-
массив строкstatus.lastValidConfiguration.scheduling.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.mismatchLabelKeysНабор ключей меток подов для исключения при вычислении affinity.
-
объектstatus.lastValidConfiguration.scheduling.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelectorЗапрос по меткам к набору namespace’ов.
-
массив объектовstatus.lastValidConfiguration.scheduling.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressionsСписок требований к меткам.
-
строкаstatus.lastValidConfiguration.scheduling.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.keyКлюч метки.
-
строкаstatus.lastValidConfiguration.scheduling.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.operatorОператор сравнения.
-
массив строкstatus.lastValidConfiguration.scheduling.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.valuesМассив значений.
-
-
объектstatus.lastValidConfiguration.scheduling.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchLabelsСловарь пар {ключ, значение}.
-
-
массив строкstatus.lastValidConfiguration.scheduling.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaces
Статический список имён namespace’ов, к которым применяется условие.
Итоговый набор — объединение значений этого поля и namespaceSelector. Null или пустой список означает namespace текущего пода.
-
строкаstatus.lastValidConfiguration.scheduling.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.topologyKeyКлюч топологии для определения совместного размещения подов.
-
-
-
объектstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinityПравила pod anti-affinity (например, запрет размещения пода на том же узле, зоне и т.д., что и другой под или группа подов).
-
массив объектовstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecutionПланировщик предпочтёт узлы, удовлетворяющие правилам anti-affinity, но может выбрать другие.
-
объектstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTermОбязательное поле. Условие pod anti-affinity, связанное с весом.
-
объектstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelectorЗапрос по меткам к набору подов. Null означает отсутствие совпадений.
-
массив объектовstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressionsСписок требований к меткам.
-
строкаstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.keyКлюч метки.
-
строкаstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.operatorОператор сравнения.
-
массив строкstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.valuesМассив значений.
-
-
объектstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchLabelsСловарь пар {ключ, значение}. Эквивалентен набору matchExpressions с оператором In и массивом из одного значения. Требования объединяются по И.
-
-
массив строкstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.matchLabelKeysНабор ключей меток подов для учёта при вычислении anti-affinity.
-
массив строкstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.mismatchLabelKeysНабор ключей меток подов для исключения при вычислении anti-affinity.
-
объектstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelectorЗапрос по меткам к набору namespace’ов.
-
массив объектовstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressionsСписок требований к меткам.
-
строкаstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.keyКлюч метки.
-
строкаstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.operatorОператор сравнения.
-
массив строкstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.valuesМассив значений.
-
-
объектstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchLabelsСловарь пар {ключ, значение}. Требования объединяются по И.
-
-
массив строкstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaces
Статический список имён namespace’ов, к которым применяется условие.
Итоговый набор — объединение значений этого поля и namespaceSelector. Null или пустой список означает namespace текущего пода.
-
строкаstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.topologyKey
Обязательный параметр
Ключ топологии. Пустое значение не допускается.
-
-
целое числоstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.weightВес совпадения с podAffinityTerm, в диапазоне 1–100.
-
-
массив объектовstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution
Если требования anti-affinity не выполнены при планировании, под не будет размещён на узле.
При наличии нескольких элементов списки узлов пересекаются.
-
объектstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelectorЗапрос по меткам к набору подов.
-
массив объектовstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressionsСписок требований к меткам.
-
строкаstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.keyКлюч метки.
-
строкаstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.operatorОператор сравнения.
-
массив строкstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.valuesМассив значений.
-
-
объектstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchLabelsСловарь пар {ключ, значение}. Эквивалентен набору matchExpressions с оператором In и массивом из одного значения. Требования объединяются по И.
-
-
массив строкstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.matchLabelKeysНабор ключей меток для учёта при anti-affinity.
-
массив строкstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.mismatchLabelKeysНабор ключей меток для исключения при anti-affinity.
-
объектstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelectorЗапрос по меткам к набору namespace’ов.
-
массив объектовstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressionsСписок требований к меткам.
-
строкаstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.keyКлюч метки.
-
строкаstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.operatorОператор сравнения.
-
массив строкstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.valuesМассив значений.
-
-
объектstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchLabelsСловарь пар {ключ, значение}. Требования объединяются по И.
-
-
массив строкstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaces
Статический список имён namespace’ов, к которым применяется условие.
Итоговый набор — объединение значений этого поля и namespaceSelector. Null или пустой список означает namespace текущего пода.
-
строкаstatus.lastValidConfiguration.scheduling.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.topologyKey
Ключ метки узла, определяющий топологию размещения подов.
Под не должен быть размещён на узле с тем же значением topologyKey, что и поды, соответствующие labelSelector. Пустое значение не допускается.
-
-
-
-
объектstatus.lastValidConfiguration.scheduling.nodeSelector
-
массив объектовstatus.lastValidConfiguration.scheduling.tolerations
-
строкаstatus.lastValidConfiguration.scheduling.tolerations.effect
Эффект taint для сопоставления. Пустое значение соответствует всем эффектам.
Допустимые значения: NoSchedule, PreferNoSchedule, NoExecute.
-
строкаstatus.lastValidConfiguration.scheduling.tolerations.key
Ключ taint. Пустое значение соответствует всем ключам.
Если ключ пустой, оператор должен быть Exists.
-
строкаstatus.lastValidConfiguration.scheduling.tolerations.operator
Оператор связи ключа со значением.
Допустимые операторы: Exists, Equal, Lt, Gt. По умолчанию: Equal.
-
целое числоstatus.lastValidConfiguration.scheduling.tolerations.tolerationSeconds
Период (в секундах), в течение которого toleration с эффектом NoExecute допускает taint.
По умолчанию не задан — toleration действует бессрочно.
-
строкаstatus.lastValidConfiguration.scheduling.tolerations.valueЗначение taint. При операторе Exists должно быть пустым.
-
-
массив строкstatus.lastValidConfiguration.scheduling.warnings
-
-
-
строкаstatus.lastValidatedConfigurationHash
-