Pod

Pod є колекцією контейнерів, які можуть працювати на хості. Цей ресурс створюється клієнтами та планується на хости.

apiVersion: v1

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

Pod

Pod є колекцією контейнерів, які можуть працювати на хості. Цей ресурс створюється клієнтами та планується на хости.


ПолеОпис
apiVersion
string
APIVersion визначає версію схеми цього представлення обʼєкта. Сервери повинні конвертувати розпізнані схеми до останнього внутрішнього значення і можуть відхиляти нерозпізнані значення. Детальніше: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
kind
string
Kind визначає тип REST-ресурсу, який представляє цей обʼєкт. Сервери можуть визначати це з точки доступу, до якої клієнт надсилає запити. Не може бути оновлено. У CamelCase. Детальніше: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
metadata
ObjectMeta
Стан стандартних метаданих обʼєкта. Детальніше: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
spec
PodSpec
Специфікація бажаної поведінки пода. Детальніше: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
status
PodStatus
Найбільш недавно спостережуваний стан пода. Ці дані можуть бути не актуальними. Заповнюється системою. Тільки для читання. Детальніше: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status

PodSpec

PodSpec є описом пода.


ПолеОпис
activeDeadlineSeconds
integer
Опціональна тривалість у секундах, протягом якої под може бути активним на вузлі відносно StartTime, перш ніж система активно спробує позначити його як невдалий і завершити повʼязані контейнери. Значення повинно бути додатним цілим числом.
affinity
Affinity
Якщо вказано, обмеження планування пода
automountServiceAccountToken
boolean
AutomountServiceAccountToken вказує, чи слід автоматично монтувати токен службового облікового запису.
containers *
Container array
patch strategy: злиття за ключем name
Список контейнерів, що належать поду. Контейнери наразі не можна додавати або видаляти. У поді має бути принаймні один контейнер. Не можна оновлювати.
dnsConfig
PodDNSConfig
Вказує параметри DNS для пода. Параметри, вказані тут, будуть обʼєднані зі згенерованою конфігурацією DNS на основі DNSPolicy.
dnsPolicy
string
Встановлює політику DNS для пода. Зазвичай "ClusterFirst". Дійсні значення: 'ClusterFirstWithHostNet', 'ClusterFirst', 'Default' або 'None'. Параметри DNS, вказані в DNSConfig, будуть обʼєднані з політикою, обраною за допомогою DNSPolicy. Щоб мати можливість встановлювати параметри DNS разом з hostNetwork, потрібно явно вказати політику DNS як 'ClusterFirstWithHostNet'.

Можливі значення enum:
  • "ClusterFirst" вказує, що под повинен використовувати DNS кластера спочатку, якщо hostNetwork не встановлено в true, якщо він доступний, тоді використовується стандартні налаштування DNS (визначені kubelet).
  • "ClusterFirstWithHostNet" вказує, що под повинен використовувати DNS кластера спочатку, якщо він доступний, тоді використовується стандартні налаштування DNS (визначені kubelet).
  • "Default" вказує, що под повинен використовувати стандартні налаштування DNS (визначені kubelet).
  • "None" вказує, що под повинен використовувати порожні налаштування DNS. Параметри DNS, такі як nameservers і search paths, повинні бути визначені через DNSConfig.
enableServiceLinks
boolean
EnableServiceLinks вказує, чи слід робити інʼєкцію інформації про сервіси в змінні середовища пода, відповідно до синтаксису Docker links. Опціонально: зазвичай — true.
ephemeralContainers
EphemeralContainer array
patch strategy: злиття за ключем name
Список ефермерних контейнерів, що запускаються в цьому поді. Ефермерні контейнери можуть запускатися в наявному поді для виконання дій, ініційованих користувачем, таких як налагодження. Цей список не можна вказати при створенні пода, і його не можна змінити, оновлюючи специфікацію пода. Щоб додати ефермерний контейнер до наявного пода, використовуйте субресурс ephemeralcontainers пода.
hostAliases
HostAlias array
patch strategy: злиття за ключем ip
HostAliases є опціональним списком хостів та IP-адрес, які будуть додані до файлу hosts пода, якщо вони вказані.
hostIPC
boolean
Використовувати простір імен IPC хоста. Опціонально: зазвичай — false.
hostNetwork
boolean
Для цього пода запрошено мережу хоста. Використовується простір імен мережі хоста. При використанні HostNetwork слід вказати порти, щоб планувальник мав про це інформацію. Якщо `hostNetwork` має значення true, вказані поля hostPort у визначеннях портів повинні збігатися з containerPort, а для полів hostPort, що не вказані у визначеннях портів, стандартно встановлюється значення, яке збігається з containerPort. Стандартно — false.
hostPID
boolean
Використовувати простір імен PID хоста. Опціонально: зазвичай — false.
hostUsers
boolean
Використовувати простір імен користувачів хоста. Опціонально: зазвичай — true. Якщо встановлено true або не вказано, под буде запущено в просторі імен користувачів хоста, що корисно, коли под потребує функції, доступної лише в просторі імен користувачів хоста, наприклад, завантаження модуля ядра з CAP_SYS_MODULE. Якщо встановлено false, для пода створюється новий userns. Встановлення false корисне для зменшення ризику виходу з контейнера, навіть дозволяючи користувачам запускати свої контейнери як root без фактичних привілеїв root на хості.
hostname
string
Вказує імʼя хоста пода. Якщо не вказано, імʼя хоста пода буде встановлено на системно визначене значення.
hostnameOverride
string
HostnameOverride вказує явне перевизначення імені хоста пода, як його сприймає под. Це поле лише вказує імʼя хоста пода і не впливає на його DNS-записи. Коли це поле встановлено на непорожній рядок:
  • Воно має пріоритет над значеннями, встановленими в hostname та subdomain.
  • Імʼя хоста пода буде встановлено на це значення.
  • setHostnameAsFQDN має бути nil або встановлено на false.
  • hostNetwork має бути встановлено на false. Це поле має бути дійсним субдоменом DNS, як визначено в RFC 1123, і містити не більше 64 символів. Потрібно, щоб функціональний прапорець HostnameOverride був увімкнений.
imagePullSecrets
LocalObjectReference array
patch strategy: злиття за ключем name
ImagePullSecrets є опціональним списком посилань на секрети в тому ж просторі імен, які використовуються для витягування будь-яких образів, що використовуються цим PodSpec. Якщо вказано, ці секрети будуть передані окремим реалізаціям витягування для їх використання. Більше інформації: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod
initContainers
Container array
patch strategy: злиття за ключем name
Список контейнерів ініціалізації, що належатьт поду. Інітконтейнери виконується послідовно перед запуском основних контейнерів. Якщо будь-який інітконтейнер не вдається, под вважається таким, що зазнав невдачі, і обробляється відповідно до його restartPolicy. Імʼя для інітконтейнера або звичайного контейнера має бути унікальним серед усіх контейнерів. Інітконтейнери не можуть мати дії Lifecycle, проб Readiness, Liveness або Startup. Вимоги до ресурсів інітконтейнера враховуються під час планування шляхом знаходження найвищого запиту/обмеження для кожного типу ресурсу, а потім використання максимуму цього значення або суми звичайних контейнерів. Обмеження застосовуються до інітконтейнерів аналогічним чином. Інітконтейнери наразі не можна додавати або видаляти. Не можна оновлювати. Більше інформації: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/
nodeName
string
NodeName вказує, на якому вузлі заплановано цей под. Якщо порожньо, цей под є кандидатом для планування за допомогою планувальника, визначеного в schedulerName. Після встановлення цього поля kubelet для цього вузла стає відповідальним за життєвий цикл цього поду. Це поле не слід використовувати для вираження намірів того, щоб под був запланований на конкретному вузлі. https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodename
nodeSelector
object
NodeSelector є селектором, який повинен бути істинним, щоб под підходив для вузла. Селектор повинен відповідати міткам вузла, щоб под був запланований на цьому вузлі. Більше інформації: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
os
PodOS

Визначає операційну систему контейнерів у поді. Деякі поля поду та контейнера обмежені, якщо це поле встановлено.

Якщо в поле OS встановлено значення linux, наступні поля не повинні бути встановл:

  • securityContext.windowsOptions

Якщо в поле OS встановлено значення windows, наступні поля не повинні бути встановлені

:
  • spec.hostPID
  • spec.hostIPC
  • spec.hostUsers
  • spec.resources
  • spec.securityContext.appArmorProfile
  • spec.securityContext.seLinuxOptions
  • spec.securityContext.seccompProfile
  • spec.securityContext.fsGroup
  • spec.securityContext.fsGroupChangePolicy
  • spec.securityContext.sysctls
  • spec.shareProcessNamespace
  • spec.securityContext.runAsUser
  • spec.securityContext.runAsGroup
  • spec.securityContext.supplementalGroups
  • spec.securityContext.supplementalGroupsPolicy
  • spec.containers[*].securityContext.appArmorProfile
  • spec.containers[*].securityContext.seLinuxOptions
  • spec.containers[*].securityContext.seccompProfile
  • spec.containers[*].securityContext.capabilities
  • spec.containers[*].securityContext.readOnlyRootFilesystem
  • spec.containers[*].securityContext.privileged
  • spec.containers[*].securityContext.allowPrivilegeEscalation
  • spec.containers[*].securityContext.procMount
  • spec.containers[*].securityContext.runAsUser
  • spec.containers[*].securityContext.runAsGroup
overhead
object
Overhead представляє ресурси накладних витрат пода для вказаного RuntimeClass. Це поле буде автоматично заповнене під час допуску контролером RuntimeClass. Якщо контролер допуску RuntimeClass увімкнено, overhead не повинен бути встановлений у запитах на створення Podʼа. Контролер допуску RuntimeClass відхилить запити на створення Podʼа, у яких overhead вже встановлено. Якщо RuntimeClass налаштовано та вибрано в PodSpec, Overhead буде встановлено на значення, визначене у відповідному RuntimeClass, інакше воно залишиться невстановленим і буде розглядатися як нуль. Більше інформації: https://git.k8s.io/enhancements/keps/sig-node/688-pod-overhead/README.md
preemptionPolicy
string
PreemptionPolicy є Політикою випередження подів з нижчим пріоритетом. Одне з: Never, PreemptLowerPriority. Стандартно встановлено PreemptLowerPriority, якщо не вказано.

Можливі значення enum:
  • "Never" означає, що под ніколи не випереджає інші поди з нижчим пріоритетом.
  • "PreemptLowerPriority" означає, що под може випереджати інші поди з нижчим пріоритетом.
priority
integer
Значення пріоритету. Різні системні компоненти використовують це поле для визначення пріоритету пода. Коли Priority Admission Controller увімкнено, він запобігає користувачам встановлювати це поле. Контролер допуску заповнює це поле з PriorityClassName. Чим вище значення, тим вищий пріоритет.
priorityClassName
string
Якщо вказано, визначає пріоритет пода. "system-node-critical" та "system-cluster-critical" є двома спеціальними ключовими словами, які вказують на найвищі пріоритети, при цьому перше є найвищим пріоритетом. Будь-яке інше імʼя повинно бути визначене шляхом створення обʼєкта PriorityClass з цим імʼям. Якщо не вказано, пріоритет пода буде зазвичай або нульовим, якщо немає стандартного значення.
readinessGates
PodReadinessGate array
Якщо вказано, всі readiness gates будуть оцінюватися для готовності пода. Под вважається готовим, коли всі його контейнери готові І (AND) всі стани, зазначені в readiness gates, мають статус "True". Більше інформації: https://git.k8s.io/enhancements/keps/sig-network/580-pod-readiness-gates
resourceClaims
PodResourceClaim array
patch strategy: merge,retainKeys за ключем name
ResourceClaims визначає, які ResourceClaims повинні бути виділені та зарезервовані перед тим, як поду буде дозволено запуститися. Ресурси будуть доступні тим контейнерам, які їх споживають за іменем. Це стабільне поле, але вимагає, щоб було увімкнено функціональну можливість DynamicResourceAllocation. Це поле є незмінним.
resources
ResourceRequirements
Resources визначає загальну кількість ресурсів CPU та памʼяті, необхідних для всіх контейнерів у поді. Підтримується вказівка запитів (Requests) та обмежень (Limits) лише для ресурсів "cpu", "memory" та "hugepages-". ResourceClaims не підтримуються. Це поле дозволяє тонко керувати розподілом ресурсів для всього пода, дозволяючи спільне використання ресурсів між контейнерами в поді. Це альфа-поле і вимагає увімкнення функціональної можливості PodLevelResources.
restartPolicy
string
Політика перезапуску для всіх контейнерів у поді. Одне з значень: Always, OnFailure, Never. У деяких контекстах може бути дозволено лише підмножину цих значень. Стандартно — Always. Більше інформації: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#restart-policy

Можливі значення enum:
  • "Always"
  • "Never"
  • "OnFailure"
runtimeClassName
string
RuntimeClassName посилається на обʼєкт RuntimeClass у групі node.k8s.io, який повинен бути використаний для запуску цього пода. Якщо жоден ресурс RuntimeClass не відповідає вказаному імені класу, под не буде запущено. Якщо не встановлено або порожньо, буде використано "legacy" RuntimeClass, який є неявним класом з порожнім визначенням, що використовує стандартний обробник. Більше інформації: https://git.k8s.io/enhancements/keps/sig-node/585-runtime-class
schedulerName
string
Якщо вказано, под буде оброблено вказаним планувальником. Якщо не вказано, под буде оброблено стандартним планувальником.
schedulingGates
PodSchedulingGate array
patch strategy: злиття за ключем name
SchedulingGates є непрозорим списком значень, які, якщо вказані, блокуватимуть планування пода. Якщо schedulingGates не порожній, под залишатиметься в стані SchedulingGated, і планувальник не намагатиметься його запланувати. SchedulingGates можна встановити лише під час створення пода і видалити лише згодом.
schedulingGroup
PodSchedulingGroup
SchedulingGroup надає посилання на обʼєкт групування середовища виконання безпосереднього планування, до якого належить цей Pod. Це поле використовується планувальником для ідентифікації групи та застосування правильних політик планування групи. Ассоціація з групою також впливає на інші аспекти життєвого циклу Podʼів, які мають значення в ширшому контексті планування, такі як передача пріоритетів, приєднання ресурсів тощо. Якщо не вказано, Pod розглядається як одиниця у всіх цих аспектах. Обʼєкт групи, на який посилається це поле, може не існувати на момент створення Podʼа. Це поле є незмінним, але обʼєкт групи з тим самим імʼям може бути відтворений з іншими політиками. Роблячи це під час планування Podʼа, розміщення може не відповідати очікуваним політикам.
securityContext
PodSecurityContext
SecurityContext містить атрибути безпеки на рівні пода та загальні налаштування контейнера. Опціонально: зазвичай порожньо. Див. опис типу для стандартних значень кожного поля.
serviceAccount
string
DeprecatedServiceAccount є застарілим псевдонімом для ServiceAccountName. Застаріло: використовуйте serviceAccountName замість цього.
serviceAccountName
string
ServiceAccountName є імʼям ServiceAccount, який використовується для запуску цього пода. Більше інформації: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/
setHostnameAsFQDN
boolean
Якщо true, імʼя хоста пода буде налаштовано як повне доменне імʼя (FQDN) Podʼа, а не просто коротке імʼя (стандартно). У контейнерах Linux це означає встановлення FQDN у полі hostname ядра (поле nodename структури utsname). У контейнерах Windows це означає встановлення значення реєстру hostname для ключа реєстру HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters на FQDN. Якщо под не має FQDN, це не має ефекту. Стандартне значення — false.
shareProcessNamespace
boolean
Спільний простір імен процесів між усіма контейнерами в поді. Якщо це встановлено, контейнери зможуть бачити та надсилати сигнали процесам з інших контейнерів у тому ж поді, і перший процес у кожному контейнері не буде мати PID 1. HostPID і ShareProcessNamespace не можуть бути встановлені одночасно. Опціонально: стандартне значення — false.
subdomain
string
Якщо вказано, повне доменне імʼя хоста Podʼа буде "<hostname>.<subdomain>.<pod namespace>.svc.<cluster domain>". Якщо не вказано, под не матиме доменного імені взагалі.
terminationGracePeriodSeconds
integer
Опціональна тривалість у секундах, необхідна для належного завершення роботи пода. Може бути зменшена в запиті на видалення. Значення повинно бути невідʼємним цілим числом. Значення нуль означає негайну зупинку через сигнал завершення (немає можливості для завершення роботи). Якщо це значення дорівнює nil, буде використано стандартний період очікування. Період очікування — це тривалість у секундах після того, як процеси, що працюють у поді, отримують сигнал завершення, і час, коли процеси примусово зупиняються за допомогою сигналу kill. Встановіть це значення довше, ніж очікуваний час очищення для вашого процесу. Стандартне значення — 30 секунд.
tolerations
Toleration array
Якщо вказано, толерантності пода.
topologySpreadConstraints
TopologySpreadConstraint array
patch strategy: злиття за ключем topologyKey
TopologySpreadConstraints описує, як група подів повинна розподілятися по топологічних доменах. Планувальник буде розміщувати поди таким чином, щоб дотримуватися цих обмежень. Всі topologySpreadConstraints обʼєднуються за логікою AND.
volumes
Volume array
patch strategy: merge,retainKeys on key name
Список томів, які можуть бути змонтовані контейнерами, що належать до пода. Більше інформації: https://kubernetes.io/docs/concepts/storage/volumes

PodStatus

PodStatus представляє інформацію про стан пода. Стан може відставати від фактичного стану системи, особливо якщо вузол, на якому розміщено под, не може звʼязатися з вузлом панелі управління.


ПолеОпис
allocatedResources
object
AllocatedResources є загальною кількістю запитів, виділених для цього пода вузлом. Якщо запити на рівні пода не встановлені, це буде загальна кількість запитів, агрегованих по контейнерах у поді.
conditions
PodCondition array
patch strategy: злиття за ключем type
Поточний стан обслуговування пода. Більше інформації: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#pod-conditions
containerStatuses
ContainerStatus array
Стани контейнерів у цьому поді. Кожен контейнер у поді повинен мати не більше одного стану в цьому списку, і всі стани повинні належати контейнерам у поді. Однак це не контролюється. Якщо стан для відсутнього контейнера присутній у списку, або список містить дублікати імен, поведінка різних компонентів Kubernetes не визначена, і ці стани можуть бути проігноровані. Більше інформації: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#pod-and-container-status
ephemeralContainerStatuses
ContainerStatus array
Стани будь-яких ефермерних контейнерів, які запускалися в цьому поді. Кожен ефермерний контейнер у поді повинен мати не більше одного стану в цьому списку, і всі стани повинні належати контейнерам у поді. Однак це не контролюється. Якщо стан для відсутнього контейнера присутній у списку, або список містить дублікати імен, поведінка різних компонентів Kubernetes не визначена, і ці стани можуть бути проігноровані. Більше інформації: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#pod-and-container-status
extendedResourceClaimStatus
PodExtendedResourceClaimStatus
Стан розширеного запиту ресурсів, підтримуваного DRA.
hostIP
string
hostIP містить IP-адресу хоста, до якого призначено под. Порожнє, якщо под ще не запущено. Под може бути призначений вузлу, який має проблему в kubelet, що, в свою чергу, означає, що HostIP не буде оновлено, навіть якщо вузол призначено поду.
hostIPs
HostIP array
patch strategy: злиття за ключем ip
hostIPs містить IP-адреси, виділені хосту. Якщо це поле вказано, перший запис повинен відповідати полю hostIP. Цей список порожній, якщо под ще не запущено. Под може бути призначений вузлу, який має проблему в kubelet, що, в свою чергу, означає, що HostIPs не буде оновлено, навіть якщо вузол призначено цьому поду.
initContainerStatuses
ContainerStatus array
Стан ініціалізаційних контейнерів у цьому поді. Останній успішно запущений ініціалізаційний контейнер, який не підлягає перезапуску, матиме ready = true, а останній запущений контейнер матиме встановлений startTime. Кожен ініціалізаційний контейнер у поді повинен мати не більше одного стану в цьому списку, і всі стани повинні належати контейнерам у поді. Однак це не контролюється. Якщо стан для відсутнього контейнера присутній у списку, або список містить дублікати імен, поведінка різних компонентів Kubernetes не визначена, і ці стани можуть бути проігноровані. Більше інформації: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#pod-and-container-status
message
string
Зрозуміле для людини повідомлення, що вказує деталі щодо того, чому под знаходиться в цьому стані.
nodeAllocatableResourceClaimStatuses
NodeAllocatableResourceClaimStatus array
NodeAllocatableResourceClaimStatuses містить стан ресурсів, доступних вузлу, які були виділені для цього пода через запити DRA. Це включає ресурси, які наразі повідомляються у v1.Node status.allocatable, але не є розширеними ресурсами (див. https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/#extended-resources). Приклади включають "cpu", "memory", "ephemeral-storage" та hugepages.
nominatedNodeName
string
nominatedNodeName встановлюється лише тоді, коли цей под передує іншим подам на вузлі, але його не можна запланувати негайно, оскільки жертви випередження отримують свої періоди належного завершення. Це поле не гарантує, що под буде заплановано на цьому вузлі. Планувальник може вирішити розмістити под в іншому місці, якщо інші вузли стануть доступними раніше. Планувальник також може вирішити надати ресурси на цьому вузлі поду з вищим пріоритетом, який створено після випередження. В результаті це поле може відрізнятися від PodSpec.nodeName, коли под заплановано.
observedGeneration
integer
Якщо встановлено, це представляє .metadata.generation, на основі якого було встановлено стан пода. Щоб використовувати це поле, потрібно ввімкнути функціональну можливість PodObservedGenerationTracking.
phase
string
Фаза пода є простим, високорівневим підсумком того, на якому етапі життєвого циклу знаходиться под. Масив conditions, поля reason і message, а також масиви станів окремих контейнерів містять більше деталей про стан пода. Існує пʼять можливих значень фази:
Pending
Под був прийнятий системою Kubernetes, але один або кілька контейнерів ще не створені. Це включає час до планування, а також час, витрачений на завантаження образів через мережу, що може зайняти деякий час.
Running
Под був привʼязаний до вузла, і всі контейнери були створені. Принаймні один контейнер все ще працює або знаходиться в процесі запуску чи перезапуску.
Succeeded
Всі контейнери в поді завершилися успішно і не будуть перезапущені.
Failed
Всі контейнери в поді завершилися, і принаймні один контейнер завершився з помилкою. Контейнер або вийшов з ненульовим кодом завершення, або був зупинений системою.
Unknown
З якоїсь причини стан пода не вдалося отримати, зазвичай через помилку в комунікації з хостом пода.
Більше інформації: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#pod-phase

Можливі значення enum:
  • "Failed" означає, що всі контейнери в поді завершилися, і принаймні один контейнер завершився з помилкою (вийшов з ненульовим кодом завершення або був зупинений системою).
  • "Pending" означає, що под був прийнятий системою, але один або кілька контейнерів ще не запущені. Це включає час до прив'язки до вузла, а також час, витрачений на завантаження образів на хост.
  • "Running" означає, що под був привʼязаний до вузла і всі контейнери були запущені. Принаймні один контейнер все ще працює або знаходиться в процесі перезапуску.
  • "Succeeded" означає, що всі контейнери в поді добровільно завершилися з кодом виходу 0, і система не буде перезапускати жоден з цих контейнерів.
  • "Unknown" означає, що з якоїсь причини стан пода не вдалося отримати, зазвичай через помилку в комунікації з хостом пода. Застаріле: не встановлюється з 2015 року (74da3b14b0c0f658b3bb8d2def5094686d0e9095)
podIP
string
podIP адреса, виділена поду. Доступна принаймні всередині кластера. Порожньо, якщо ще не виділено.
podIPs
PodIP array
patch strategy: злиття за ключем ip
podIPs містить IP-адреси, виділені поду. Якщо це поле вказано, 0-й елемент повинен відповідати полю podIP. Подам може бути виділено не більше одного значення для кожного з IPv4 та IPv6. Цей список порожній, якщо IP-адреси ще не були виділені.
qosClass
string
Класифікація якості обслуговування (Quality of Service, QOS) призначена поду на основі вимог до ресурсів. Див. тип PodQOSClass для доступних класів QOS. Більше інформації: https://kubernetes.io/docs/concepts/workloads/pods/pod-qos/#quality-of-service-classes

Можливі значення enum:
  • "BestEffort" означає клас QOS BestEffort.
  • "Burstable" означає клас QOS Burstable.
  • "Guaranteed" означає клас QOS Guaranteed.
reason
string
Коротке повідомлення у форматі CamelCase, що вказує на деталі того, чому под знаходиться в цьому стані. Наприклад, 'Evicted'
resize
string
Статус зміни ресурсів, бажаних для контейнерів поду. Порожньо, якщо зміна ресурсів не очікується. Будь-які зміни ресурсів контейнера автоматично встановлять це значення на "Proposed". Застаріло: Статус зміни ресурсів переміщено до двох станів поду PodResizePending та PodResizeInProgress. PodResizePending відстежує стани, коли специфікація була змінена, але Kubelet ще не виділив ресурси. PodResizeInProgress відстежує зміни в процесі виконання і має бути присутнім, коли виділені ресурси != підтверджені ресурси.
resourceClaimStatuses
PodResourceClaimStatus array
patch strategy: merge,retainKeys за ключем name
Статус заявок на ресурси.
resources
ResourceRequirements
Resources представляє запити та обмеження обчислювальних ресурсів, які були застосовані на рівні поду, якщо запити або обмеження на рівні поду встановлені в PodSpec.Resources
startTime
Time
Дата та час у форматі RFC 3339, коли обʼєкт був підтверджений Kubelet. Це відбувається до того, як Kubelet завантажив образ(и) контейнера для поду.

PodList

PodList is a list of Pods.


ПолеОпис
apiVersion
string
APIVersion визначає версію схеми цього представлення обʼєкта. Сервери повинні конвертувати розпізнані схеми до останнього внутрішнього значення і можуть відхиляти нерозпізнані значення. Детальніше: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
items *
Pod array
Список подів. Детальніше: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md
kind
string
Kind визначає тип REST-ресурсу, який представляє цей обʼєкт. Сервери можуть визначати це з точки доступу, до якої клієнт надсилає запити. Не може бути оновлено. У CamelCase. Детальніше: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
metadata
ListMeta
Стандартні метадані списку. Детальніше: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

Affinity

Affinity є групою правил планування за спорідненістю.


ПолеОпис
nodeAffinity
NodeAffinity
Описує правила планування за спорідненістю вузлів для пода.
podAffinity
PodAffinity
Описує правила планування за спорідненістю подів (наприклад, розміщення цього пода на тому ж вузлі, у тій же зоні тощо, що й інші поди).
podAntiAffinity
PodAntiAffinity
Описує правила планування за антиспорідненістю подів (наприклад, уникати розміщення цього пода на тому ж вузлі, у тій же зоні тощо, що й інші поди).

AppArmorProfile

AppArmorProfile визначає налаштування AppArmor для пода або контейнера.


ПолеОпис
localhostProfile
string
localhostProfile вказує на профіль, завантажений на вузлі, який слід використовувати. Профіль повинен бути попередньо налаштований на вузлі для роботи. Повинен відповідати завантаженій назві профілю. Повинен бути встановлений лише тоді, коли type дорівнює "Localhost".
type *
string
type вказує, який тип профілю AppArmor буде застосовано. Дійсні варіанти:
  • Localhost — профіль, попередньо завантажений на вузлі.
  • RuntimeDefault — стандартний профіль середовища виконання контейнера.
  • Unconfined — без застосування AppArmor.

Можливі значення enum:
  • Localhost вказує, що слід використовувати профіль, попередньо завантажений на вузлі.
  • RuntimeDefault вказує, що слід використовувати стандартний профіль AppArmor середовища виконання контейнера.
  • Unconfined вказує, що профіль AppArmor не буде застосовано.

AzureFileVolumeSource

AzureFile представляє монтування Azure File Service на хості та привʼязку до пода.


ПолеОпис
readOnly
boolean
readOnly зазвичай дорівнює false (читання/запис). Встановлення ReadOnly тут примусово встановить параметр ReadOnly у VolumeMounts.
secretName *
string
secretName вказує на назву секрету, який містить імʼя облікового запису Azure Storage та ключ
shareName *
string
shareName вказує на назву Azure File Share

CSIVolumeSource

Представляє джерело розташування тому для монтування, кероване зовнішнім драйвером CSI.


ПолеОпис
driver *
string
driver є назвою CSI драйвера, який працює з цим томом. Зверніться до адміністратора для отримання правильної назви, як зареєстровано в кластері.
fsType
string
fsType вказує файлову систему для монтування. Наприклад: "ext4", "xfs", "ntfs". Якщо не вказано, порожнє значення передається відповідному CSI драйверу, який визначить стандартну файлову систему.
nodePublishSecretRef
LocalObjectReference
nodePublishSecretRef є посиланням на обʼєкт секрету, який містить конфіденційну інформацію для передачі CSI драйверу для завершення викликів CSI NodePublishVolume та NodeUnpublishVolume. Це поле є необовʼязковим і може бути порожнім, якщо секрет не потрібен. Якщо обʼєкт секрету містить більше одного секрету, передаються всі посилання на секрети.
readOnly
boolean
readOnly вказує на конфігурацію лише для читання для тому. Стандартне значення — false (читання/запис).
volumeAttributes
object
volumeAttributes зберігає властивості, специфічні для драйвера, які передаються CSI драйверу. Зверніться до документації вашого драйвера для отримання підтримуваних значень.

Capabilities

Додає та видаляє POSIX-можливості з працюючих контейнерів.


ПолеОпис
add
string array
Додані можливості
drop
string array
Видалені можливості

CephFSVolumeSource

Представляє монтування файлової системи Ceph, яке триває протягом життя пода. Томи Cephfs не підтримують управління власністю або переназначення SELinux.


ПолеОпис
monitors *
string array
monitors є обовʼязковим: Monitors є колекцією Ceph моніторів. Більше інформації: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
path
string
path є опціональним: Використовується як змонтований корінь, а не повне дерево Ceph, стандартно — /
readOnly
boolean
readOnly є опціональним: Стандартне значення — false (читання/запис). ReadOnly тут примусово встановлює налаштування ReadOnly у VolumeMounts. Більше інформації: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
secretFile
string
secretFile є опціональним: SecretFile є шляхом до вʼязки ключів для користувача, стандартно — /etc/ceph/user.secret. Більше інформації: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
secretRef
LocalObjectReference
secretRef є опціональним: SecretRef є посиланням на секрет для автентифікації користувача, стандартно — порожній. Більше інформації: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
user
string
user є опціональним: User є імʼям користувача rados, стандартно — admin. Більше інформації: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it

CinderVolumeSource

Представляє ресурс тома Cinder в Openstack. Том Cinder повинен існувати перед монтуванням до контейнера. Том також повинен знаходитися в тому ж регіоні, що й kubelet. Томи Cinder підтримують управління власністю та переназначення SELinux.


ПолеОпис
fsType
string
fsType є типом файлової системи для монтування. Повинен бути підтримуваним типом файлової системи операційної системи хоста. Приклади: "ext4", "xfs", "ntfs". Якщо не вказано, неявно вважається "ext4". Більше інформації: https://examples.k8s.io/mysql-cinder-pd/README.md
readOnly
boolean
readOnly є опціональним: Стандартне значення — false (читання/запис). ReadOnly тут примусово встановлює налаштування ReadOnly у VolumeMounts. Більше інформації: https://examples.k8s.io/mysql-cinder-pd/README.md
secretRef
LocalObjectReference
secretRef є опціональним: Посилання на обʼєкт секрету, що містить параметри для підключення до OpenStack. Більше інформації: https://examples.k8s.io/mysql-cinder-pd/README.md
volumeID *
string
volumeID використовується для ідентифікації тому в Cinder. Більше інформації: https://examples.k8s.io/mysql-cinder-pd/README.md

ClusterTrustBundleProjection

ClusterTrustBundleProjection описує, як вибрати набір обʼєктів ClusterTrustBundle і зробити проєкцію їх вмісту у файлову систему пода.


ПолеОпис
labelSelector
LabelSelector
Вибирає всі ClusterTrustBundles, що відповідають цьому селектору міток. Діє лише якщо встановлено signerName. Взаємовиключно з name. Якщо не встановлено, інтерпретується як "не мати збігу ні з чим". Якщо встановлено, але порожньо, інтерпретується як "мати збіг з усіма".
name
string
Вибирає один ClusterTrustBundle за імʼям об'єкта. Взаємовиключно з signerName та labelSelector.
optional
boolean
Якщо true, не блокувати запуск пода, якщо посилання на ClusterTrustBundle(s) недоступне. Якщо використовується name, то дозволяється, щоб вказаний ClusterTrustBundle не існував. Якщо використовується signerName, то комбінація signerName та labelSelector може не відповідати жодному ClusterTrustBundle.
path *
string
Відносний шлях від кореня тому до файлу, куди буде записано пакунок.
signerName
string
Вибирає всі ClusterTrustBundles, що відповідають цьому імені підписувача. Взаємовиключно з name. Вміст усіх вибраних ClusterTrustBundles буде обʼєднано та видалено дублікати.

ConfigMapEnvSource

ConfigMapEnvSource вибирає ConfigMap для заповнення змінних середовища.

Вміст поля Data цільової ConfigMap буде представляти пари ключ-значення як змінні середовища.


ПолеОпис
name
string
Імʼя референта. Це поле фактично обовʼязкове, але через зворотну сумісність дозволяється залишати його порожнім. Екземпляри цього типу з порожнім значенням тут майже напевно неправильні. Більше інформації: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
optional
boolean
Вказує, чи має бути визначено ConfigMap

ConfigMapKeySelector

Вибирає ключ з ConfigMap.


ПолеОпис
key *
string
Ключ для вибору.
name
string
Імʼя референта. Це поле фактично обовʼязкове, але через зворотну сумісність дозволяється залишати його порожнім. Екземпляри цього типу з порожнім значенням тут майже напевно неправильні. Більше інформації: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
optional
boolean
Вказує, чи має бути визначено ConfigMap або його ключ

ConfigMapProjection

Перетворює ConfigMap у проєкційний том.

Вміст поля Data цільової ConfigMap буде представлено в проєкційному томі як файли, використовуючи ключі з поля Data як імена файлів, якщо елемент items не заповнений конкретними відображеннями ключів на шляхи. Зверніть увагу, що це ідентично джерелу тома configmap без стандартного режиму.


ПолеОпис
items
KeyToPath array
Якщо не вказано, кожну пару ключ-значення в полі Data вказаного ConfigMap буде спроєцьовано в том як файл, імʼя якого є ключем, а вміст — значенням. Якщо вказано, перелічені ключі будуть спроєцьовані в зазначені шляхи, а невказані ключі не будуть присутні. Якщо вказано ключ, якого немає в ConfigMap, налаштування тому завершиться помилкою, якщо він не позначений як необовʼязковий. Шляхи повинні бути відносними і не можуть містити '..' або починатися з '..'.
name
string
Імʼя референта. Це поле фактично обовʼязкове, але через зворотну сумісність дозволяється залишати його порожнім. Екземпляри цього типу з порожнім значенням тут майже напевно неправильні. Більше інформації: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
optional
boolean
Вказує, чи має бути визначено ConfigMap або його ключ

ConfigMapVolumeSource

Перетворює ConfigMap у том.

Вміст поля Data цільового ConfigMap буде представлено в томі як файли, використовуючи ключі з поля Data як імена файлів, якщо елемент items не заповнений конкретними зіставленням ключів на шляхи. Томи ConfigMap підтримують управління власністю та переназначення SELinux.


ПолеОпис
defaultMode
integer
defaultMode є опціональним: біти режиму, які використовуються для встановлення стандартних дозволів на створені файли. Має бути восьмеричне значення від 0000 до 0777 або десяткове значення від 0 до 511. YAML приймає як восьмеричні, так і десяткові значення, JSON вимагає десяткових значень для бітів режиму. Стандартно — 0644. Теки всередині шляху не впливають на це налаштування. Це може конфліктувати з іншими параметрами, які впливають на режим файлу, такими як fsGroup, і результатом можуть бути інші встановлені біти режиму.
items
KeyToPath array
Якщо не вказано, кожну пару ключ-значення в полі Data вказаного ConfigMap буде спроєцьовано в том як файл, імʼя якого є ключем, а вміст — значенням. Якщо вказано, перелічені ключі будуть спроєцьовані в зазначені шляхи, а невказані ключі не будуть присутні. Якщо вказано ключ, якого немає в ConfigMap, налаштування тому завершиться помилкою, якщо він не позначений як необовʼязковий. Шляхи повинні бути відносними і не можуть містити '..' або починатися з '..'.
name
string
Імʼя референта. Це поле фактично обовʼязкове, але через зворотну сумісність дозволяється залишати його порожнім. Екземпляри цього типу з порожнім значенням тут майже напевно неправильні. Більше інформації: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
optional
boolean
optional вказує, чи повинен бути визначений ConfigMap або його ключі

Container

Один контейнер застосунку, який ви хочете запустити всередині пода.


ПолеОпис
args
string array
Аргументи для точки входу. Використовується CMD образу контейнера, якщо це не вказано. Посилання на змінні $(VAR_NAME) розгортаються за допомогою середовища контейнера. Якщо змінну не вдається розпізнати, посилання у вхідному рядку залишиться без змін. Подвійні $$ зменшуються до одного $, що дозволяє екранувати синтаксис $(VAR_NAME): тобто "$$(VAR_NAME)" створить рядок "$(VAR_NAME)". Екрановані посилання ніколи не будуть розгортатись, незалежно від того, чи існує змінна. Не можна оновлювати. Більше інформації: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
command
string array
Масив точок входу. Не виконується в межах оболонки. Використовується ENTRYPOINT образу контейнера, якщо це не вказано. Посилання на змінні $(VAR_NAME) розгортаються за допомогою середовища контейнера. Якщо змінну не вдається розпізнати, посилання у вхідному рядку залишиться без змін. Подвійні $$ зменшуються до одного $, що дозволяє екранувати синтаксис $(VAR_NAME): тобто "$$(VAR_NAME)" створить рядок "$(VAR_NAME)". Екрановані посилання ніколи не будуть розгортатись, незалежно від того, чи існує змінна. Не можна оновлювати. Більше інформації: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
env
EnvVar array
patch strategy: злиття за ключем name
Список змінних середовища для встановлення в контейнері. Не можна оновлювати.
envFrom
EnvFromSource array
Список джерел для заповнення змінних середовища в контейнері. Ключі, визначені в джерелі, можуть складатися з будь-яких друкованих ASCII-символів, крім '='. Якщо ключ існує в кількох джерелах, значення, повʼязане з останнім джерелом, матиме пріоритет. Значення, визначені в Env з дубльованим ключем, матимуть пріоритет. Не можна оновлювати.
image
string
Назва образу контейнера. Більше інформації: https://kubernetes.io/docs/concepts/containers/images. Це поле є необовʼязковим, щоб дозволити вищому рівню керування конфігурацією встановлювати стандартні значення або перевизначати образи контейнерів у контролерах робочих навантажень, таких як Deployments і StatefulSets.
imagePullPolicy
string
Політика витягування образу. Одне з Always, Never, IfNotPresent. Стандартно — Always, якщо вказано тег :latest, або IfNotPresent в іншому випадку. Не можна оновлювати. Більше інформації: https://kubernetes.io/docs/concepts/containers/images#updating-images

Можливі значення enum:
  • "Always" означає, що kubelet завжди намагається витягнути останній образ. Контейнер не запуститься, якщо витягування не вдасться.
  • "IfNotPresent" означає, що kubelet витягує образ, якщо його немає на диску. Контейнер не запуститься, якщо образу немає і витягування не вдасться.
  • "Never" означає, що kubelet ніколи не витягує образ, а використовує лише локальний образ. Контейнер не запуститься, якщо образу немає
lifecycle
Lifecycle
Дії, які система керування повинна виконати у відповідь на події життєвого циклу контейнера. Не можна оновлювати.
livenessProbe
Probe
Періодична перевірка життєздатності контейнера. Контейнер буде перезапущено, якщо перевірка не вдасться. Не можна оновлювати. Більше інформації: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
name *
string
Імʼя контейнера, вказане як DNS_LABEL. Кожен контейнер у поді повинен мати унікальне імʼя (DNS_LABEL). Не можна оновлювати.
ports
ContainerPort array
patch strategy: злиття за ключем containerPort
Список портів для експонування з контейнера. Не вказуючи порт тут, НЕ забороняє його експонування. Будь-який порт, який слухає на стандартній адресі "0.0.0.0" всередині контейнера, буде доступний з мережі. Зміна цього масиву за допомогою стратегічного злиття може пошкодити дані. Для отримання додаткової інформації див. https://github.com/kubernetes/kubernetes/issues/108255. Не можна оновлювати.
readinessProbe
Probe
Періодична перевірка готовності контейнера. Контейнер буде видалено з точок доступу сервісу, якщо перевірка не вдасться. Не можна оновлювати. Більше інформації: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
resizePolicy
ContainerResizePolicy array
Політика зміни ресурсів для контейнера. Це поле не можна встановлювати для ефермерних контейнерів.
resources
ResourceRequirements
Обчислювальні ресурси, необхідні для цього контейнера. Не можна оновлювати. Більше інформації: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
restartPolicy
string
RestartPolicy визначає поведінку перезапуску окремих контейнерів у поді. Перевизначає політику перезапуску на рівні пода. Якщо це поле не вказано, поведінка перезапуску визначається політикою перезапуску пода та типом контейнера. Крім того, встановлення RestartPolicy як "Always" для init-контейнера матиме наступний ефект: цей init-контейнер буде постійно перезапускатися при виході, поки всі звичайні контейнери не завершать роботу. Після завершення роботи всіх звичайних контейнерів, всі init-контейнери з restartPolicy "Always" будуть завершені. Цей життєвий цикл відрізняється від звичайних init-контейнерів і часто називається "sidecar" контейнером. Хоча цей init-контейнер все ще запускається в послідовності init-контейнерів, він не чекає завершення контейнера перед переходом до наступного init-контейнера. Замість цього наступний init-контейнер запускається відразу після запуску цього init-контейнера або після успішного завершення будь-якого startupProbe.
restartPolicyRules
ContainerRestartRule array
Представляє список правил, які перевіряються для визначення, чи слід перезапустити контейнер при виході. Правила оцінюються в порядку їхнього визначення. Як тільки правило відповідає умові виходу контейнера, решта правил ігноруються. Якщо жодне правило не відповідає умові виходу контейнера, політика перезапуску на рівні контейнера визначає, чи буде контейнер перезапущено. Обмеження для правил:
  • Дозволяється не більше 20 правил.
  • Правила можуть мати однакову дію.
  • Ідентичні правила не заборонені під час перевірок.
  • Коли правила вказані, контейнер ПОВИНЕН явно встановити RestartPolicy, навіть якщо вона відповідає RestartPolicy пода.
securityContext
SecurityContext
SecurityContext визначає параметри безпеки, з якими повинен запускатися контейнер. Якщо встановлено, поля SecurityContext перевизначають еквівалентні поля PodSecurityContext. Більше інформації: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
startupProbe
Probe
StartupProbe вказує, що Pod успішно ініціалізовано. Якщо вказано, жодні інші перевірки не виконуються, поки ця не завершиться успішно. Якщо ця перевірка не вдасться, Pod буде перезапущено, так само, як якщо б не вдалася livenessProbe. Можна використовувати для надання різних параметрів перевірки на початку життєвого циклу Podʼа, коли може знадобитися багато часу для завантаження даних або прогріву кешу, ніж під час стабільної роботи. Поле не можна оновити. Більше інформації: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
stdin
boolean
Чи цей контейнер повинен виділяти буфер для stdin у середовищі виконання контейнера. Якщо це не встановлено, читання з stdin у контейнері завжди призведе до EOF. Стандартно — false.
stdinOnce
boolean
Чи середовище виконання контейнера повинно закрити канал stdin після того, як він був відкритий одним підключенням. Коли stdin встановлено в true, потік stdin залишатиметься відкритим під час кількох сеансів підключення. Якщо stdinOnce встановлено в true, stdin відкривається при запуску контейнера, залишається порожнім до першого підключення клієнта до stdin, а потім залишається відкритим і приймає дані до відключення клієнта, після чого stdin закривається і залишається закритим до перезапуску контейнера. Якщо цей прапорець встановлено в false, процеси контейнера, які читають з stdin, ніколи не отримають EOF. Стандартно — false.
terminationMessagePath
string
Опціонально: Шлях, за яким файл, у який буде записано повідомлення про завершення контейнера, буде змонтовано в файлову систему контейнера. Повідомлення призначене для короткого підсумкового статусу, такого як повідомлення про помилку перевірки. Буде обрізано вузлом, якщо перевищує 4096 байт. Загальна довжина повідомлення для всіх контейнерів буде обмежена 12 КБ. Стандартно — /dev/termination-log. Не можна оновити.
terminationMessagePolicy
string
Вказує, як має бути заповнене повідомлення про завершення. Файл використовуватиме вміст terminationMessagePath для заповнення повідомлення про стан контейнера як у разі успіху, так і у разі помилки. FallbackToLogsOnError використовуватиме останній фрагмент журналу контейнера, якщо файл повідомлення про завершення порожній і контейнер завершився з помилкою. Вихідні дані журналу обмежені 2048 байтами або 80 рядками, залежно від того, що менше. Стандартно — File. Не можна оновити.

Можливі значення enum:
  • "FallbackToLogsOnError" читатиме останній вміст журналу контейнера для повідомлення про стан контейнера, коли контейнер завершився з помилкою і terminationMessagePath порожній.
  • "File" є стандартною поведінкою і встановлює повідомлення про стан контейнера відповідно до вмісту terminationMessagePath контейнера при його завершенні.
tty
boolean
Чи цей контейнер повинен виділяти TTY для себе, також вимагає, щоб 'stdin' було встановлено в true. Стандартно — false.
volumeDevices
VolumeDevice array
patch strategy: злиття за ключем devicePath
volumeDevices є списком блочних пристроїв, які будуть використовуватися контейнером.
volumeMounts
VolumeMount array
patch strategy: злиття за ключем mountPath
Томи Podʼа для монтування в файлову систему контейнера. Не можна оновити.
workingDir
string
Робоча тека контейнера. Якщо не вказано, буде використано стандартне значення середовища виконання контейнера, яке може бути налаштоване в образі контейнера. Не можна оновити.

ContainerExtendedResourceRequest

ContainerExtendedResourceRequest містить зіставлення імені контейнера, імені розширеного ресурсу з іменем запиту пристрою.


ПолеОпис
containerName *
string
Імʼя контейнера, який запитує ресурси.
requestName *
string
Імʼя запиту в спеціальному ResourceClaim, який відповідає розширеному ресурсу.
resourceName *
string
Імʼя розширеного ресурсу в цьому контейнері, який підтримується DRA.

ContainerPort

ContainerPort представляє мережевий порт в одному контейнері.


ПолеОпис
containerPort *
integer
Номер порту для експонування в IP-адресі Podʼа. Це має бути дійсний номер порту, 0 < x < 65536.
hostIP
string
Яку IP-адресу хосту привʼязати до зовнішнього порту.
hostPort
integer
Номер порту для експонування на хості. Якщо вказано, це має бути дійсний номер порту, 0 < x < 65536. Якщо вказано HostNetwork, це має відповідати ContainerPort. Більшість контейнерів цього не потребує.
name
string
Якщо вказано, це має бути IANA_SVC_NAME і унікальним в межах pod. Кожен іменований порт у pod повинен мати унікальне імʼя. Імʼя порту, на який можна посилатися з сервісів.
protocol
string
Протокол для порту. Має бути UDP, TCP або SCTP. Зазвичай — "TCP".

Можливі значення enum:
  • "SCTP" це протокол SCTP.
  • "TCP" це протокол TCP.
  • "UDP" це протокол UDP.

ContainerResizePolicy

ContainerResizePolicy представляє політику зміни розміру ресурсу для контейнера.


ПолеОпис
resourceName *
string
Імʼя ресурсу, до якого застосовується ця політика зміни розміру ресурсу. Підтримувані значення: cpu, memory.
restartPolicy *
string
Політика перезапуску, яка застосовується при зміні розміру вказаного ресурсу. Якщо не вказано, стандартно використовується NotRequired.

ContainerRestartRule

ContainerRestartRule описує, як обробляється вихід контейнера.


ПолеОпис
action *
string
Вказує дію, яка виконується при виході контейнера, якщо вимоги виконані. Єдине можливе значення — "Restart" для перезапуску контейнера.
exitCodes
ContainerRestartRuleOnExitCodes
Представляє коди виходу, які потрібно перевіряти при виході контейнера.

ContainerRestartRuleOnExitCodes

ContainerRestartRuleOnExitCodes описує умову для обробки виходу контейнера на основі його кодів виходу.


ПолеОпис
operator *
string
Вказує відношення між кодом(ами) виходу контейнера та зазначеними значеннями. Можливі значення:
  • "In" вимога задовольняється, якщо код виходу контейнера знаходиться в наборі зазначених значень.
  • "NotIn" вимога задовольняється, якщо код виходу контейнера не знаходиться в наборі зазначених значень.
values
integer array
Набір значень, які потрібно перевіряти для кодів виходу контейнера. Дозволяється не більше 255 елементів.

ContainerState

ContainerState описує можливий стан контейнера. Може бути вказаний лише один з його членів. Якщо жоден з них не вказано, за замовчуванням використовується ContainerStateWaiting.


ПолеОпис
running
ContainerStateRunning
Деталі про контейнер, що працює
terminated
ContainerStateTerminated
Деталі про контейнер, що завершився
waiting
ContainerStateWaiting
Деталі про контейнер, що очікує

ContainerStateRunning

ContainerStateRunning описує стан контейнера, що працює.


ПолеОпис
startedAt
Time
Час, коли контейнер був останній раз (пере)запущений

ContainerStateTerminated

ContainerStateTerminated описує стан контейнера, що завершився.


ПолеОпис
containerID
string
ID контейнера у форматі '<type>://<container_id>'
exitCode *
integer
Код виходу з останнього завершення контейнера
finishedAt
Time
Час, коли контейнер останній раз завершився
message
string
Повідомлення щодо останнього завершення контейнера
reason
string
(коротка) причина останнього завершення контейнера
signal
integer
Сигнал останнього завершення контейнера
startedAt
Time
Час, коли попереднє виконання контейнера розпочалося

ContainerStateWaiting

ContainerStateWaiting описує стан контейнера, що очікує.


ПолеОпис
message
string
Повідомлення щодо того, чому контейнер ще не працює.
reason
string
(коротка) причина того, чому контейнер ще не працює.

ContainerUser

ContainerUser описує інформацію про ідентичність користувача


ПолеОпис
linux
LinuxContainerUser
Linux містить інформацію про ідентичність користувача, спочатку прикріплену до першого процесу контейнерів у Linux. Зверніть увагу, що фактична ідентичність під час виконання може бути змінена, якщо процес має достатні привілеї для цього.

DownwardAPIProjection

Представляє інформацію про downward API для виконання проєкції у проєцьований том. Зверніть увагу, що це ідентично джерелу тому downwardAPI без стандартного режиму.


ПолеОпис
items
DownwardAPIVolumeFile array
Items є списком файлів DownwardAPIVolume

DownwardAPIVolumeFile

DownwardAPIVolumeFile описує інформацію для створення файлу, що містить поле поду


ПолеОпис
fieldRef
ObjectFieldSelector
Обовʼязково: Вибирає поле поду: підтримуються лише анотації, мітки, імʼя, простір імен та uid.
mode
integer
Опціонально: біти режиму, що використовуються для встановлення дозволів на цей файл, повинні бути вісімковим значенням від 0000 до 0777 або десятковим значенням від 0 до 511. YAML приймає як вісімкові, так і десяткові значення, JSON вимагає десяткових значень для бітів режиму. Якщо не вказано, буде використано volume defaultMode. Це може конфліктувати з іншими параметрами, що впливають на режим файлу, такими як fsGroup, і результатом можуть бути встановлені інші біти режиму.
path *
string
Обовʼязково: шлях є відносним іменем файлу, що буде створено. Не повинен бути абсолютним або містити шлях '..'. Повинен бути закодований у UTF-8. Перший елемент відносного шляху не повинен починатися з '..'
resourceFieldRef
ResourceFieldSelector
Обирає ресурс контейнера: наразі підтримуються лише обмеження та запити ресурсів (limits.cpu, limits.memory, requests.cpu та requests.memory).

DownwardAPIVolumeSource

DownwardAPIVolumeSource описує том, що містить інформацію downward API. Том downward API підтримує керування власністю та переназначення SELinux.


ПолеОпис
defaultMode
integer
Опціонально: біти режиму, що використовуються для встановлення дозволів на створені файли за замовчуванням. Повинні бути вісімковим значенням від 0000 до 0777 або десятковим значенням від 0 до 511. YAML приймає як вісімкові, так і десяткові значення, JSON вимагає десяткових значень для бітів режиму. За замовчуванням 0644. Каталоги всередині шляху не впливають на це налаштування. Це може конфліктувати з іншими параметрами, що впливають на режим файлу, такими як fsGroup, і результатом можуть бути встановлені інші біти режиму.
items
DownwardAPIVolumeFile array
Items є списком файлів downward API

EmptyDirVolumeSource

Представляє порожню теку для пода. Том порожньої теки підтримує керування власністю та переназначення SELinux.


ПолеОпис
medium
string
medium представляє тип носія зберігання, який повинен підтримувати цю теку. Зазвичай "" означає використання стандартного носія вузла. Повинно бути порожнім рядком (типово) або Memory. Більше інформації: https://kubernetes.io/docs/concepts/storage/volumes#emptydir.
sizeLimit
Quantity
sizeLimit є загальною кількістю локального сховища, необхідного для цього тома EmptyDir. Обмеження розміру також застосовується до носія памʼяті. Максимальне використання на носії памʼяті EmptyDir буде мінімальним значенням між зазначеним тут SizeLimit та сумою обмежень памʼяті всіх контейнерів у поді. ЗСтандартно — nil, що означає, що обмеження не визначено. Більше інформації: https://kubernetes.io/docs/concepts/storage/volumes#emptydir.

EnvFromSource

EnvFromSource представляє джерело набору ConfigMaps або Secrets


ПолеОпис
configMapRef
ConfigMapEnvSource
ConfigMap для вибору
prefix
string
Опційний текст для додавання на початок імені кожної змінної середовища. Може складатися з будь-яких друкованих ASCII-символів, крім '='.
secretRef
SecretEnvSource
Secret для вибору

EnvVar

EnvVar представляє змінну середовища, присутню в контейнері.


ПолеОпис
name *
string
Імʼя змінної середовища. Може складатися з будь-яких друкованих ASCII-символів, крім '='.
value
string
Посилання на змінні $(VAR_NAME) розширюються з використанням раніше визначених змінних середовища в контейнері та будь-яких змінних середовища сервісу. Якщо змінну не можна розвʼязати, посилання у вхідному рядку залишиться незмінним. Подвійні $$ зменшуються до одного $, що дозволяє екранувати синтаксис $(VAR_NAME): тобто "$$(VAR_NAME)" створить рядковий літерал "$(VAR_NAME)". Екрановані посилання ніколи не будуть розширюватися, незалежно від того, чи існує змінна. Стандартно — "".
valueFrom
EnvVarSource
Джерело значення змінної середовища. Не можна використовувати, якщо value не порожнє.

EnvVarSource

EnvVarSource представляє джерело значення для EnvVar.


ПолеОпис
configMapKeyRef
ConfigMapKeySelector
Вибір ключа з ConfigMap.
fieldRef
ObjectFieldSelector
Вибір поля пода: підтримуються metadata.name, metadata.namespace, `metadata.labels['<KEY>']`, `metadata.annotations['<KEY>']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
fileKeyRef
FileKeySelector
FileKeyRef вибирає ключ з файлу змінних середовища. Потрібно, щоб функціональна можливість EnvFiles була увімкнена.
resourceFieldRef
ResourceFieldSelector
Вибір ресурсу контейнера: наразі підтримуються лише обмеження та запити ресурсів (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory та requests.ephemeral-storage).
secretKeyRef
SecretKeySelector
Вибір ключа з секрету в просторі імен пода.

EphemeralContainer

EphemeralContainer є тимчасовим контейнером, який можна додати до наявного пода для ініційованих користувачем дій, таких як налагодження. Тимчасові контейнери не мають гарантій щодо ресурсів або планування, і вони не будуть перезапущені після виходу або видалення пода. Kubelet може виселити под, якщо тимчасовий контейнер призведе до перевищення виділених ресурсів пода.

Щоб додати тимчасовий контейнер, використовуйте субресурс ephemeralcontainers наявного пода. Тимчасові контейнери не можуть бути видалені або перезапущені.


ПолеОпис
args
string array
Аргументи для точки входу. Використовується CMD образу, якщо це не вказано. Посилання на змінні $(VAR_NAME) розгортаються за допомогою середовища контейнера. Якщо змінну не вдається знайти, посилання вхідного рядка залишиться без змін. Подвійні $$ зменшуються до одного $, що дозволяє екранувати синтаксис $(VAR_NAME): тобто "$$(VAR_NAME)" створить рядок літералів "$(VAR_NAME)". Екрановані посилання ніколи не будуть розгорнуті, незалежно від того, чи існує змінна. Не можна оновлювати. Більше інформації: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
command
string array
Масив точок входу. Не виконується в межах оболонки. Використовується ENTRYPOINT образу, якщо це не вказано. Посилання на змінні $(VAR_NAME) розгортаються за допомогою середовища контейнера. Якщо змінну не вдається знайти, посилання вхідного рядка залишиться без змін. Подвійні $$ зменшуються до одного $, що дозволяє екранувати синтаксис $(VAR_NAME): тобто "$$(VAR_NAME)" створить рядок літералів "$(VAR_NAME)". Екрановані посилання ніколи не будуть розгорнуті, незалежно від того, чи існує змінна. Не можна оновлювати. Більше інформації: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
env
EnvVar array
patch strategy: злиття за ключем name
Список змінних середовища для встановлення в контейнері. Не можна оновлювати.
envFrom
EnvFromSource array
Список джерел для заповнення змінних середовища в контейнері. Ключі, визначені в джерелі, можуть складатися з будь-яких друкованих ASCII-символів, крім '='. Якщо ключ існує в кількох джерелах, значення, пов'язане з останнім джерелом, матиме пріоритет. Значення, визначені за допомогою Env з дубльованим ключем, матимуть пріоритет. Не можна оновлювати.
image
string
Назва образу контейнера. Більше інформації: https://kubernetes.io/docs/concepts/containers/images
imagePullPolicy
string
Політика витягування образу. Одне з Always, Never, IfNotPresent. За замовчуванням Always, якщо вказано тег :latest, або IfNotPresent в іншому випадку. Не можна оновлювати. Більше інформації: https://kubernetes.io/docs/concepts/containers/images#updating-images

Можливі значення enum:
  • "Always" означає, що kubelet завжди намагається витягнути останній образ. Контейнер не запуститься, якщо витягування не вдасться.
  • "IfNotPresent" означає, що kubelet витягує образ, якщо його немає на диску. Контейнер не запуститься, якщо образу немає і витягування не вдасться.
  • "Never" означає, що kubelet ніколи не витягує образ, а використовує лише локальний образ. Контейнер не запуститься, якщо образу немає.
lifecycle
Lifecycle
Lifecycle не дозволено для епhemeral контейнерів.
livenessProbe
Probe
Probes не дозволено для епhemeral контейнерів.
name *
string
Назва епhemeral контейнера, вказана як DNS_LABEL. Ця назва повинна бути унікальною серед усіх контейнерів, init контейнерів та епhemeral контейнерів.
ports
ContainerPort array
patch strategy: злиття за ключем containerPort
Ports не дозволено для епhemeral контейнерів.
readinessProbe
Probe
Probes не дозволено для епhemeral контейнерів.
resizePolicy
ContainerResizePolicy array
Правила зміни розміру ресурсів для контейнера.
resources
ResourceRequirements
Resources не дозволено для епhemeral контейнерів. Епhemeral контейнери використовують вільні ресурси, вже виділені для поду.
restartPolicy
string
Політика перезапуску для контейнера для керування поведінкою перезапуску кожного контейнера в поді. Ви не можете встановлювати це поле для епhemeral контейнерів.
restartPolicyRules
ContainerRestartRule array
Представляє список правил, які перевіряються, щоб визначити, чи слід перезапустити контейнер після виходу. Ви не можете встановлювати це поле для епhemeral контейнерів.
securityContext
SecurityContext
Опційно: SecurityContext визначає параметри безпеки, з якими слід запускати епhemeral контейнер. Якщо встановлено, поля SecurityContext перевизначають еквівалентні поля PodSecurityContext.
startupProbe
Probe
Probes не дозволено для епhemeral контейнерів.
stdin
boolean
Чи повинен цей контейнер виділяти буфер для stdin у середовищі виконання контейнера. Якщо це не встановлено, читання з stdin у контейнері завжди призведе до EOF. Стандартно — false.
stdinOnce
boolean
Чи повинен середовище виконання контейнера закривати канал stdin після того, як він був відкритий одним підключенням. Коли stdin встановлено в true, потік stdin залишатиметься відкритим під час кількох сеансів підключення. Якщо stdinOnce встановлено в true, stdin відкривається при запуску контейнера, порожній до першого підключення клієнта до stdin, а потім залишається відкритим і приймає дані до відключення клієнта, після чого stdin закривається і залишається закритим до перезапуску контейнера. Якщо цей прапорець встановлено в false, процеси контейнера, які читають зі stdin, ніколи не отримають EOF. Стандартно — false.
targetContainerName
string
Якщо встановлено, імʼя контейнера з PodSpec, на який націлений цей епhemeral контейнер. Епhemeral контейнер буде запущений у просторах імен (IPC, PID тощо) цього контейнера. Якщо не встановлено, епhemeral контейнер використовує простори імен, налаштовані в Pod spec. Середовище виконання контейнера повинно підтримувати цю функцію. Якщо середовище виконання не підтримує націлювання на простори імен, результат встановлення цього поля невизначений.
terminationMessagePath
string
Опційно: Шлях, за яким файл, у який буде записано повідомлення про завершення контейнера, монтується в файлову систему контейнера. Повідомлення призначене для короткого підсумкового статусу, такого як повідомлення про помилку перевірки. Буде обрізано вузлом, якщо перевищує 4096 байт. Загальна довжина повідомлення для всіх контейнерів буде обмежена 12 КБ. Стандартно — /dev/termination-log. Не можна оновлювати.
terminationMessagePolicy
string
Вказує, як має бути заповнене повідомлення про завершення. Файл використовуватиме вміст terminationMessagePath для заповнення повідомлення про стан контейнера як у разі успіху, так і у разі помилки. FallbackToLogsOnError використовуватиме останній фрагмент журналу контейнера, якщо файл повідомлення про завершення порожній і контейнер завершився з помилкою. Вихідні дані журналу обмежені 2048 байтами або 80 рядками, залежно від того, що менше. Стандартно використовується File. Не можна оновлювати.

Можливі значення enum:
  • "FallbackToLogsOnError" читатиме останній вміст журналу контейнера для повідомлення про стан контейнера, коли контейнер завершився з помилкою і terminationMessagePath порожній.
  • "File" є стандартною поведінкою і встановлює повідомлення про стан контейнера відповідно до вмісту terminationMessagePath контейнера при його завершенні.
tty
boolean
Чи повинен цей контейнер виділяти TTY для себе, також вимагає, щоб 'stdin' було встановлено в true. Стандартно — false.
volumeDevices
VolumeDevice array
patch strategy: злиття за ключем devicePath
volumeDevices є списком блочних пристроїв, які будуть використовуватися контейнером.
volumeMounts
VolumeMount array
patch strategy: злиття за ключем mountPath
Томи Podʼа для монтування у файлову систему контейнера. Subpath mounts не дозволені для епhemeral контейнерів. Не можна оновлювати.
workingDir
string
Робоча тека контейнера. Якщо не вказано, буде використано стандартне значення середовища виконання контейнера, яке може бути налаштоване в образі контейнера. Не можна оновлювати.

EphemeralVolumeSource

Представляє епhemeral том, який обробляється звичайним драйвером зберігання.


ПолеОпис
volumeClaimTemplate
PersistentVolumeClaimTemplate
Буде використано для створення окремого PVC для забезпечення тому. Под, у якому вбудовано цей EphemeralVolumeSource, буде власником PVC, тобто PVC буде видалено разом із подом. Імʼя PVC буде <pod name>-<volume name>, де <volume name> — це імʼя з масиву PodSpec.Volumes. Валідація пода відхилить под, якщо обʼєднане імʼя не є дійсним для PVC (наприклад, занадто довге). Наявний PVC з таким імʼям, який не належить поду, *не* буде використаний для пода, щоб уникнути випадкового використання стороннього тому. Запуск пода буде заблоковано, поки не буде видалено сторонній PVC. Якщо такий попередньо створений PVC призначений для використання подом, PVC потрібно оновити з посиланням на власника пода після його створення. Зазвичай це не потрібно, але може бути корисним при ручному відновленні пошкодженого кластера. Це поле лише для читання, і Kubernetes не вноситиме зміни до PVC після його створення. Обовʼязкове, не може бути nil.

ExecAction

ExecAction описує дію "запуск в контейнері".


ПолеОпис
command
string array
Команда для виконання всередині контейнера. Робоча тека для команди — коренева ('/') у файловій системі контейнера. Команда просто виконується, вона не запускається всередині оболонки, тому традиційні інструкції оболонки ('|', тощо) не працюватимуть. Щоб використовувати оболонку, потрібно явно викликати цю оболонку. Статус виходу 0 вважається життєздатним/справним, а ненульовий — несправним.

FileKeySelector

FileKeySelector вибирає ключ з файлу середовища.


ПолеОпис
key *
string
Ключ у файлі середовища. Недійсний ключ запобігатиме запуску пода. Ключі, визначені в джерелі, можуть складатися з будь-яких друкованих ASCII-символів, крім '='. Під час альфа-етапу функції EnvFiles розмір ключа обмежений 128 символами.
optional
boolean
Вказує, чи файл або його ключ мають бути визначені. Якщо файл або ключ не існує, змінна середовища не буде опублікована. Якщо optional встановлено в true і вказаний ключ не існує, змінна середовища не буде встановлена в контейнерах пода. Якщо optional встановлено в false і вказаний ключ не існує, під час створення пода буде повернено помилку.
path *
string
Шлях у межах тому, з якого потрібно вибрати файл. Має бути відносним і не може містити '..' або починатися з '..'.
volumeName *
string
Імʼя тому, що містить файл середовища.

FlexVolumeSource

FlexVolume представляє собою загальний ресурс тому, який надається/підключається за допомогою втулка на основі exec.


ПолеОпис
driver *
string
driver є імʼям драйвера, який використовується для цього тому.
fsType
string
fsType є типом файлової системи для монтування. Має бути типом файлової системи, підтримуваним операційною системою хоста. Наприклад, "ext4", "xfs", "ntfs". Стандартна файлова система залежить від скрипта FlexVolume.
options
object
options є опціональним: це поле містить додаткові параметри команди, якщо вони є.
readOnly
boolean
readOnly є опціональним: стандартно — false (читання/запис). Встановлення ReadOnly тут примусово встановить параметр ReadOnly у VolumeMounts.
secretRef
LocalObjectReference
secretRef є опціональним: secretRef є посиланням на обʼєкт секрету, що містить конфіденційну інформацію для передачі скриптам плагіна. Це поле може бути порожнім, якщо обʼєкт секрету не вказано. Якщо обʼєкт секрету містить більше одного секрету, усі секрети передаються скриптам плагіна.

GRPCAction

GRPCAction визначає дію, повʼязану з сервісом GRPC.


ПолеОпис
port *
integer
Номер порту сервісу gRPC. Значення має бути в діапазоні від 1 до 65535.
service
string
Service є імʼям сервісу, який буде вказано в gRPC HealthCheckRequest (див. https://github.com/grpc/grpc/blob/master/doc/health-checking.md). Якщо не вказано, стандартна поведінка визначається gRPC.

GitRepoVolumeSource

Представляє том, який заповнюється вмістом репозиторію git. Томи git не підтримують управління власністю. Томи git підтримують переназначення SELinux.

ЗАСТАРІЛО: GitRepo застарів. Щоб забезпечити контейнер репозиторієм git, змонтуйте EmptyDir в InitContainer, який клонує репозиторій за допомогою git, а потім змонтуйте EmptyDir в контейнер Podʼа.


ПолеОпис
directory
string
directory є імʼям цільової теки. Не може містити або починатися з '..'. Якщо вказано '.', тека тому буде репозиторієм git. В іншому випадку, якщо вказано, том міститиме репозиторій git у вкладеній теці з вказаним імʼям.
repository *
string
repository є URL-адресою репозиторію git.
revision
string
revision є хешем коміту для вказаної ревізії.

GlusterfsVolumeSource

Представляє собою монтування Glusterfs, яке триває протягом життя Podʼа. Томи Glusterfs не підтримують управління власністю або переназначення SELinux.


ПолеОпис
endpoints *
string
endpoints є імʼям точки доступу, яка описує топологію Glusterfs.
path *
string
path є шляхом до тому Glusterfs. Більше інформації: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
readOnly
boolean
readOnly тут примусово встановить том Glusterfs у режимі лише для читання. Стандартно — false. Більше інформації: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod

HTTPGetAction

HTTPGetAction описує дію, засновану на HTTP Get запитах.


ПолеОпис
host
string
Імʼя хоста для підключення, зазвичай використовується IP-адреса Pod. Ймовірно, ви захочете встановити "Host" у httpHeaders замість цього.
httpHeaders
HTTPHeader array
Власні заголовки для встановлення в запиті. HTTP дозволяє повторювані заголовки.
path
string
Шлях для доступу на HTTP сервері.
port *
Імʼя або номер порту для доступу на контейнері. Номер повинен бути в діапазоні від 1 до 65535. Імʼя повинно бути IANA_SVC_NAME.
scheme
string
Схема для підключення до хоста. Стандартно — HTTP.

Можливі значення enum:
  • "HTTP" означає, що буде використано схему http://
  • "HTTPS" означає, що буде використано схему https://

HTTPHeader

HTTPHeader описує власний заголовок, який буде використано в HTTP-запитах.


ПолеОпис
name *
string
Імʼя заголовка. Воно буде канонізоване при виведенні, тому варіанти з різним регістром будуть розумітися як один і той же заголовок.
value *
string
Значення заголовка.

HostAlias

HostAlias представляє відповідність між IP та іменами хостів, які будуть вставлені як запис у файлі hosts Podʼа.


ПолеОпис
hostnames
string array
Імена хостів для вказаної IP-адреси.
ip *
string
IP-адреса для запису у файлі hosts.

HostIP

HostIP представляє одну IP-адресу, виділену для хоста.


ПолеОпис
ip *
string
IP є IP-адресою, виділеною для хосту.

ISCSIVolumeSource

Представляє диск ISCSI. Томи ISCSI можна монтувати лише як читання/запис один раз. Томи ISCSI підтримують управління власністю та переназначення міток SELinux.


ПолеОпис
chapAuthDiscovery
boolean
chapAuthDiscovery визначає, чи підтримується автентифікація iSCSI Discovery CHAP
chapAuthSession
boolean
chapAuthSession визначає, чи підтримується автентифікація iSCSI Session CHAP
fsType
string
fsType визначає тип файлової системи тому, який ви хочете змонтувати. Порада: Переконайтеся, що тип файлової системи підтримується операційною системою хосту. Приклади: "ext4", "xfs", "ntfs". Якщо не вказано, зазвичай використовується "ext4". Більше інформації: https://kubernetes.io/docs/concepts/storage/volumes#iscsi.
initiatorName
string
initiatorName є власним iSCSI Initiator Name. Якщо initiatorName вказано разом з iscsiInterface, буде створено новий iSCSI інтерфейс <target portal>:\<volume name> для підключення.
iqn *
string
iqn є iSCSI Qualified Name цілі.
iscsiInterface
string
iscsiInterface є імʼям інтерфейсу, який використовує iSCSI транспорт. Стандартно — 'default' (tcp).
lun *
integer
lun представляє номер iSCSI Target Lun.
portals
string array
portals є списком iSCSI Target Portal. Портал може бути або IP-адресою, або ip_addr:port, якщо порт відрізняється від стандартного (зазвичай TCP порти 860 та 3260).
readOnly
boolean
readOnly тут примусово встановлює параметр ReadOnly у VolumeMounts. Стандартно — false.
secretRef
LocalObjectReference
secretRef є CHAP Secret для автентифікації iSCSI цілі та ініціатора
targetPortal *
string
targetPortal є iSCSI Target Portal. Портал може бути або IP-адресою, або ip_addr:port, якщо порт відрізняється від стандартного (зазвичай TCP порти 860 та 3260).

ImageVolumeSource

ImageVolumeSource представляє ресурс образу тома.


ПолеОпис
pullPolicy
string
Політика отримання обʼєктів OCI. Можливі значення: Always: kubelet завжди намагається отримати образ за посиланням. Створення контейнера зазнає невдачі, якщо отримання не вдається. Never: kubelet ніколи не намагається отримати образ за посиланням і використовує лише локальний образ або артефакт. Створення контейнера зазнає невдачі, якщо посилання відсутнє. IfNotPresent: kubelet намагається отримати обʼєкт, якщо він ще не присутній на диску. Створення контейнера зазнає невдачі, якщо посилання відсутнє і отримання не вдається. Стандартно — Always, якщо вказано тег :latest, або IfNotPresent в іншому випадку.

Можливі значення enum:
  • "Always" означає, що kubelet завжди намагається отримати останній образ. Контейнер зазнає невдачі, якщо отримання не вдається.
  • "IfNotPresent" означає, що kubelet отримує образ, якщо він відсутній на диску. Контейнер зазнає невдачі, якщо образ відсутній і отримання не вдається.
  • "Never" означає, що kubelet ніколи не отримує образ, а використовує лише локальний образ. Контейнер зазнає невдачі, якщо образ відсутній
reference
string
Обовʼязково: Образ або посилання на артефакт для використання. Поводиться так само, як pod.spec.containers[*].image. Секрети для отримання образу будуть зібрані так само, як для образу контейнера, шляхом перевірки облікових даних вузла, секретів для отримання образу SA та секретів для отримання образу pod spec. Більше інформації: https://kubernetes.io/docs/concepts/containers/images. Це поле є необовʼязковим, щоб дозволити вищому рівню керування конфігурацією встановлювати стандартне значення або перевизначати образи контейнерів у контролерах робочих навантажень, таких як Deployments та StatefulSets.

ImageVolumeStatus

ImageVolumeStatus представляє стан тому на основі образу.


ПолеОпис
imageRef *
string
ImageRef є дайджестом образу, використаного для цього тому. Він повинен мати значення, подібне до pod.status.containerStatuses[i].imageID. Довжина ImageRef не повинна перевищувати 256 символів.

KeyToPath

Зіставлення рядка ключа з шляхом у межах тому.


ПолеОпис
key *
string
key є ключем для проєкції.
mode
integer
mode є опціональним: біти режиму, які використовуються для встановлення дозволів на цей файл. Має бути вісімкове значення від 0000 до 0777 або десяткове значення від 0 до 511. YAML приймає як вісімкові, так і десяткові значення, JSON вимагає десяткові значення для бітів режиму. Якщо не вказано, буде використано стандартне значення для тому. Може конфліктувати з іншими параметрами, які впливають на режим файлу, такими як fsGroup, і результатом можуть бути інші встановлені біти режиму.
path *
string
path є відносним шляхом файлу для зіставлення ключа. Не може бути абсолютним шляхом. Не може містити елемент шляху '..'. Не може починатися зі рядка '..'.

Lifecycle

Lifecycle описує дії, які система керування повинна виконувати у відповідь на події життєвого циклу контейнера. Для обробників життєвого циклу PostStart і PreStop керування контейнером блокується до завершення дії, якщо процес контейнера не зазнає невдачі, у такому випадку робота обробника переривається.


ПолеОпис
postStart
LifecycleHandler
PostStart викликається одразу після створення контейнера. У разі збою обробника, робота контейнера завершується і перезапускається відповідно до його політики перезапуску. Інше керування контейнером блокується до завершення роботи обробника. Більше інформації: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks.
preStop
LifecycleHandler
PreStop викликається одразу перед завершенням роботи контейнера через запит API або подію керування, таку як збій перевірки життєздатності/запуску, примусове завершення, конфлікт ресурсів тощо. Обробник не викликається, якщо контейнер аварійно завершує роботу або виходить. Зворотний відлік періоду завершення роботи Podʼа починається перед виконанням обробника PreStop. Незалежно від результату роботи обробника, контейнер зрештою завершить роботу в межах періоду завершення роботи Podʼа (якщо не затримано завершувачами). Інше керування контейнером блокується до завершення роботи обробника або до досягнення періоду завершення роботи. Більше інформації: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks.
stopSignal
string
StopSignal визначає, який сигнал буде надіслано контейнеру під час його зупинки. Якщо не вказано, стандартне значення визначається середовищем виконання контейнера. StopSignal можна встановити лише для Podʼів з непорожнім .spec.os.name

Можливі значення enum:
  • "SIGABRT"
  • "SIGALRM"
  • "SIGBUS"
  • "SIGCHLD"
  • "SIGCLD"
  • "SIGCONT"
  • "SIGFPE"
  • "SIGHUP"
  • "SIGILL"
  • "SIGINT"
  • "SIGIO"
  • "SIGIOT"
  • "SIGKILL"
  • "SIGPIPE"
  • "SIGPOLL"
  • "SIGPROF"
  • "SIGPWR"
  • "SIGQUIT"
  • "SIGRTMAX"
  • "SIGRTMAX-1"
  • "SIGRTMAX-10"
  • "SIGRTMAX-11"
  • "SIGRTMAX-12"
  • "SIGRTMAX-13"
  • "SIGRTMAX-14"
  • "SIGRTMAX-2"
  • "SIGRTMAX-3"
  • "SIGRTMAX-4"
  • "SIGRTMAX-5"
  • "SIGRTMAX-6"
  • "SIGRTMAX-7"
  • "SIGRTMAX-8"
  • "SIGRTMAX-9"
  • "SIGRTMIN"
  • "SIGRTMIN+1"
  • "SIGRTMIN+10"
  • "SIGRTMIN+11"
  • "SIGRTMIN+12"
  • "SIGRTMIN+13"
  • "SIGRTMIN+14"
  • "SIGRTMIN+15"
  • "SIGRTMIN+2"
  • "SIGRTMIN+3"
  • "SIGRTMIN+4"
  • "SIGRTMIN+5"
  • "SIGRTMIN+6"
  • "SIGRTMIN+7"
  • "SIGRTMIN+8"
  • "SIGRTMIN+9"
  • "SIGSEGV"
  • "SIGSTKFLT"
  • "SIGSTOP"
  • "SIGSYS"
  • "SIGTERM"
  • "SIGTRAP"
  • "SIGTSTP"
  • "SIGTTIN"
  • "SIGTTOU"
  • "SIGURG"
  • "SIGUSR1"
  • "SIGUSR2"
  • "SIGVTALRM"
  • "SIGWINCH"
  • "SIGXCPU"
  • "SIGXFSZ"

LifecycleHandler

LifecycleHandler визначає конкретну дію, яка повинна бути виконана в хуку життєвого циклу. Повинно бути вказано лише одне з полів, за винятком TCPSocket.


ПолеОпис
exec
ExecAction
Exec визначає команду, яку потрібно виконати в контейнері.
httpGet
HTTPGetAction
HTTPGet визначає HTTP GET запит, який потрібно виконати.
sleep
SleepAction
Sleep визначає тривалість, протягом якої контейнер повинен спати.
tcpSocket
TCPSocketAction
Застаріло. TCPSocket не підтримується як LifecycleHandler і зберігається для зворотної сумісності. Валідація цього поля не проводиться, і хуки життєвого циклу не працюватимуть під час виконання, якщо воно вказане.

LinuxContainerUser

LinuxContainerUser представляє інформацію про ідентичність користувача в Linux-контейнерах


ПолеОпис
gid *
integer
GID є основним GID, спочатку прикріпленим до першого процесу в контейнері
supplementalGroups
integer array
SupplementalGroups є додатковими групами, спочатку прикріпленими до першого процесу в контейнері
uid *
integer
UID є основним UID, спочатку прикріпленим до першого процесу в контейнері

NodeAffinity

Node affinity є групою правил планування на основі спорідненості вузлів.


ПолеОпис
preferredDuringSchedulingIgnoredDuringExecution
PreferredSchedulingTerm array
Планувальник надаватиме перевагу розміщенню подів на вузлах, які задовольняють виразам спорідненості, зазначеним в цьому полі, але він може обрати вузол, який порушує один або кілька виразів. Найбільш бажаним вузлом є той, який має найбільшу суму ваг, тобто для кожного вузла, який відповідає всім вимогам планування (запит ресурсів, вирази спорідненості requiredDuringScheduling тощо), обчислить суму, перебираючи елементи цього поля та додаючи "вагу" до суми, якщо вузол відповідає відповідним matchExpressions; вузол(и) з найвищою сумою є найбільш бажаними.
requiredDuringSchedulingIgnoredDuringExecution
NodeSelector
Якщо вимоги спорідненості, зазначені в цьому полі, не виконуються під час планування, под не буде заплановано на вузол. Якщо вимоги спорідненості, зазначені в цьому полі, перестануть виконуватися під час виконання поду (наприклад, через оновлення), система може або не може спробувати в кінцевому підсумку виселити под з його вузла.

NodeAllocatableResourceClaimStatus

NodeAllocatableResourceClaimStatus описує стан ресурсів, доступних на вузлі, які були виділені через DRA.


ПолеОпис
containers
string array
Список контейнерів у цьому поді, які посилаються на цей запит ресурсів.
resourceClaimName *
string
ResourceClaimName є запитом ресурсів, на який посилається под, що призвів до цього виділення ресурсів на вузлі.
resources *
object
Resources є мапою імен ресурсів, доступних на вузлі, до загальної кількості, виділеної для цього запиту.

ObjectFieldSelector

ObjectFieldSelector обирає поле обʼєкта з вказаною версією API.


ПолеОпис
apiVersion
string
Версія схеми, у термінах якої записано FieldPath, стандартно — "v1".
fieldPath *
string
Шлях до поля, яке потрібно обрати у вказаній версії API.

PersistentVolumeClaimTemplate

PersistentVolumeClaimTemplate використовується для створення обʼєктів PersistentVolumeClaim як частини EphemeralVolumeSource.


ПолеОпис
metadata
ObjectMeta
Може містити мітки та анотації, які будуть скопійовані в PVC під час його створення. Жодні інші поля не дозволяються і будуть відхилені під час перевірки.
spec *
PersistentVolumeClaimSpec
Специфікація для PersistentVolumeClaim. Весь вміст копіюється без змін у PVC, який створюється з цього шаблону. Ті самі поля, що й у PersistentVolumeClaim, також дійсні тут.

PersistentVolumeClaimVolumeSource

PersistentVolumeClaimVolumeSource посилається на PVC користувача в тому ж просторі імен. Цей том знаходить привʼязаний PV і монтує цей том для пода. PersistentVolumeClaimVolumeSource, по суті, є обгорткою навколо іншого типу тому, який належить комусь іншому (системі).


ПолеОпис
claimName *
string
claimName є імʼям PersistentVolumeClaim у тому ж просторі імен, що й под, який використовує цей том. Більше інформації: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
readOnly
boolean
readOnly Встановлює режим лише для читання в VolumeMounts. Стандартнт — false.

PodAffinity

Спорідненість подів (Pod affinity) — це група правил планування, що визначають взаємне розташування подів.


ПолеОпис
preferredDuringSchedulingIgnoredDuringExecution
WeightedPodAffinityTerm array
Планувальник віддає перевагу розміщенню подів на вузлах, які задовольняють виразам спорідненості, зазначених в цьому полі, але може обрати вузол, який порушує один або кілька виразів. Найбільш бажаним вузлом є той, у якого найбільша сума ваг, тобто для кожного вузла, який відповідає всім вимогам планування (запит ресурсів, вирази requiredDuringScheduling спорідненості тощо), обчислюється сума, перебираючи елементи цього поля та додаючи "вагу" до суми, якщо вузол має поди, які відповідають відповідному podAffinityTerm; вузол(и) з найвищою сумою є найбільш бажаними.
requiredDuringSchedulingIgnoredDuringExecution
PodAffinityTerm array
Якщо вимоги спорідненості, зазначені в цьому полі, не виконуються під час планування, под не буде заплановано на вузол. Якщо вимоги спорідненості, зазначені в цьому полі, перестануть виконуватися під час виконання пода (наприклад, через оновлення мітки пода), система може або не може спробувати в кінцевому підсумку виселити под з його вузла. Коли є кілька елементів, списки вузлів, що відповідають кожному podAffinityTerm, перетинаються, тобто всі умови повинні бути виконані.

PodAffinityTerm

Визначає набір подів (а саме тих, що відповідають labelSelector відносно заданих namespace(s)), з якими цей под повинен бути розташований разом (affinity) або не розташований разом (anti-affinity), де розташування разом визначається як виконання на вузлі, значення мітки з ключем <topologyKey> якого відповідає будь-якому вузлу, на якому виконується под з набору подів.


ПолеОпис
labelSelector
LabelSelector
Запит міток для набору ресурсів, у цьому випадку подів. Якщо він дорівнює null, цей PodAffinityTerm не відповідає жодному поду.
matchLabelKeys
string array
MatchLabelKeys є набором міток ключів подів для вибору, які поди будуть враховані. Ключі використовуються для пошуку значень у вхідних мітках подів, ці ключ-значення мітки обʼєднуються з labelSelector як key in (value) для вибору групи наявних подів, які будуть враховані для (анти) спорідненості вхідного пода. Ключі, які не існують у вхідних мітках подів, будуть ігноруватися. Стандартне значення є порожнім. Той самий ключ заборонено використовувати як у matchLabelKeys, так і в labelSelector. Також matchLabelKeys не може бути встановлено, якщо labelSelector не встановлено.
mismatchLabelKeys
string array
MismatchLabelKeys є набором міток ключів подів для вибору, які поди будуть враховані. Ключі використовуються для пошуку значень у вхідних мітках подів, ці ключ-значення мітки обʼєднуються з labelSelector як key notin (value) для вибору групи наявних подів, які будуть враховані для (анти) спорідненості вхідного пода. Ключі, які не існують у вхідних мітках подів, будуть ігноруватися. Стандартне значення є порожнім. Той самий ключ заборонено використовувати як у mismatchLabelKeys, так і в labelSelector. Також mismatchLabelKeys не може бути встановлено, якщо labelSelector не встановлено.
namespaceSelector
LabelSelector
Запит міток для набору просторів імен, до яких застосовується цей термін. Термін застосовується до обʼєднання просторів імен, вибраних цим полем, та тих, що перелічені в полі namespaces. Null селектор і null або порожній список просторів імен означає "простір імен цього пода". Порожній селектор ({}) відповідає всім просторам імен.
namespaces
string array
namespaces визначає статичний список назв просторів імен, до яких застосовується цей термін. Термін застосовується до обʼєднання просторів імен, перелічених у цьому полі, та тих, що вибрані за допомогою namespaceSelector. null або порожній список просторів імен і null namespaceSelector означає "простір імен цього пода".
topologyKey *
string
Цей под має бути розташований разом (affinity) або не разом (anti-affinity) з подами, що відповідають labelSelector у зазначених просторах імен, де "разом" визначається як запуск на вузлі, значення мітки з ключем topologyKey якого відповідає будь-якому вузлу, на якому запущено будь-який з вибраних подів. Порожній topologyKey не дозволяється.

PodAntiAffinity

Pod anti affinity є групою правил планування між подами, що визначають анти-спорідненість.


ПолеОпис
preferredDuringSchedulingIgnoredDuringExecution
WeightedPodAffinityTerm array
Планувальник віддає перевагу розміщенню подів на вузлах, які задовольняють вирази анти-спорідненості, зазначені в цьому полі, але може обрати вузол, який порушує один або кілька виразів. Найбільш бажаним вузлом є той, у якого найбільша сума ваг, тобто для кожного вузла, який відповідає всім вимогам планування (запит ресурсів, requiredDuringScheduling вирази анти-спорідненості тощо), обчислюється сума, перебираючи елементи цього поля і віднімаючи "вагу" з суми, якщо вузол має поди, які відповідають відповідному podAffinityTerm; вузол(и) з найвищою сумою є найбільш бажаними.
requiredDuringSchedulingIgnoredDuringExecution
PodAffinityTerm array
Якщо вимоги анти-спорідненості, зазначені в цьому полі, не виконуються під час планування, под не буде заплановано на вузол. Якщо вимоги анти-спорідненості, зазначені в цьому полі, перестануть виконуватися під час виконання пода (наприклад, через оновлення мітки пода), система може або не може спробувати в кінцевому підсумку виселити под з його вузла. Коли є кілька елементів, списки вузлів, що відповідають кожному podAffinityTerm, перетинаються, тобто всі умови повинні бути виконані.

PodCertificateProjection

PodCertificateProjection надає приватний ключ та X.509 сертифікат у файловій системі пода.


ПолеОпис
certificateChainPath
string
Записує ланцюжок сертифікатів за цим шляхом у спроєцьованому томі. Більшість застосунків повинні використовувати credentialBundlePath. При використанні keyPath і certificateChainPath ваш застосунок повинен перевіряти, що ключ і сертифікат листа узгоджені, оскільки можливо прочитати файли під час ротації.
credentialBundlePath
string
Записує пакет облікових даних за цим шляхом у спроєцьованому томі. Пакет облікових даних є одним файлом, який містить кілька блоків PEM. Перший блок PEM є блоком PRIVATE KEY, що містить приватний ключ PKCS#8. Решта блоків є блоками CERTIFICATE, що містять виданий ланцюжок сертифікатів від підписувача (лист і будь-які проміжні сертифікати). Використання credentialBundlePath дозволяє коду вашого застосунку в поді виконати одну атомарну операцію читання, яка отримує узгоджений ключ і ланцюжок сертифікатів. Якщо ви проєцюєте їх в окремі файли, коду вашого застосунку потрібно додатково перевіряти, що листовий сертифікат був виданий для ключа.
keyPath
string
Записує ключ за цим шляхом у спроєцьованому томі. Більшість застосунків повинні використовувати credentialBundlePath. При використанні keyPath і certificateChainPath ваш застосунок повинен перевіряти, що ключ і сертифікат листа узгоджені, оскільки можливо прочитати файли під час ротації.
keyType *
string
Тип ключа, який Kubelet згенерує для пода. Дійсні значення: "RSA3072", "RSA4096", "ECDSAP256", "ECDSAP384", "ECDSAP521" та "ED25519".
maxExpirationSeconds
integer
maxExpirationSeconds є максимально дозволеним терміном дії сертифіката. Kubelet копіює це значення без змін у PodCertificateRequests, які він генерує для цієї проєкції. Якщо не вказано, kube-apiserver встановить його на 86400 (24 години). kube-apiserver відхилить значення менші за 3600 (1 година). Максимально допустиме значення — 7862400 (91 день). Реалізація підписувача може видавати сертифікат з будь-яким терміном дії *коротшим* за MaxExpirationSeconds, але не менше ніж 3600 секунд (1 година). Це обмеження контролюється kube-apiserver. Підписувачіkubernetes.io ніколи не видаватимуть сертифікати з терміном дії більше ніж 24 години.
signerName *
string
CSR, згенеровані Kubelet, будуть адресовані цьому підписувачу.
userAnnotations
object
userAnnotations дозволяють авторам подів передавати додаткову інформацію реалізації підписувача. Kubernetes ніяким чином не обмежує і не перевіряє ці метадані. Ці значення копіюються без змін у поле spec.unverifiedUserAnnotations обʼєктів PodCertificateRequest, які створює Kubelet. Записи підлягають такій же перевірці, як і анотації метаданих обʼєктів, з додатковою вимогою, що всі ключі повинні мати доменне префіксування. Ніяких обмежень на значення не накладається, крім загального обмеження на розмір всього поля. Підписувачі повинні документувати підтримувані ключі та значення. Підписувачі повинні відхиляти запити, що містять ключі, які вони не розпізнають.

PodCondition

PodCondition містить деталі щодо поточного стану цього пода.


ПолеОпис
lastProbeTime
Time
Останній раз, коли ми перевіряли стан.
lastTransitionTime
Time
Останній раз, коли стан змінився з одного на інший.
message
string
Зрозуміле для людини повідомлення, що вказує деталі останнього переходу.
observedGeneration
integer
Якщо встановлено, це представляє .metadata.generation, на основі якого було встановлено стан пода.
reason
string
Унікальна, однословна, CamelCase причина останнього переходу стану.
status *
string
Status є статусом стану. Може бути True, False, Unknown. Більше інформації: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#pod-conditions
type *
string
Type є типом стану. Більше інформації: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#pod-conditions

PodDNSConfig

PodDNSConfig визначає параметри DNS пода, додатково до тих, що генеруються з DNSPolicy.


ПолеОпис
nameservers
string array
Список IP-адрес DNS-серверів. Він буде доданий до базових серверів імен, згенерованих з DNSPolicy. Дублікати серверів імен будуть видалені.
options
PodDNSConfigOption array
Список параметрів DNS-резолвера. Він буде обʼєднаний з базовими параметрами, згенерованими з DNSPolicy. Дублікати будуть видалені. Параметри, задані в Options, перевизначать ті, що зʼявляються в базовій DNSPolicy.
searches
string array
Список доменів пошуку DNS для пошуку імен хостів. Він буде доданий до базових шляхів пошуку, згенерованих з DNSPolicy. Дублікати шляхів пошуку будуть видалені.

PodDNSConfigOption

PodDNSConfigOption визначає параметри DNS-резолвера пода.


ПолеОпис
name
string
Name є імʼям цієї опції DNS-резолвера. Обовʼязково.
value
string
Value є значенням цієї опції DNS-резолвера.

PodExtendedResourceClaimStatus

PodExtendedResourceClaimStatus зберігається в PodStatus для розширених запитів ресурсів, підтримуваних DRA. Він зберігає згенероване імʼя для відповідного спеціального ResourceClaim, створеного планувальником.


ПолеОпис
requestMappings *
ContainerExtendedResourceRequest array
RequestMappings ідентифікує зіставлення <container, розширений ресурс, підтримуваний DRA> на запит пристрою в згенерованому ResourceClaim.
resourceClaimName *
string
ResourceClaimName є імʼям ResourceClaim, який був згенерований для Podʼа у просторі імен Podʼа.

PodIP

PodIP представляє одну IP-адресу, виділену поду.


ПолеОпис
ip *
string
IP є IP-адресою, призначеною поду

PodOS

PodOS визначає параметри операційної системи пода.


ПолеОпис
name *
string
Name є імʼям операційної системи. Поточні підтримувані значення: linux та windows. Додаткові значення можуть бути визначені в майбутньому і можуть бути одними з: https://github.com/opencontainers/runtime-spec/blob/master/config.md#platform-specific-configuration. Клієнти повинні очікувати обробки додаткових значень і трактувати невпізнані значення в цьому полі як os: null

PodReadinessGate

PodReadinessGate містить посилання на стан пода.


ПолеОпис
conditionType *
string
ConditionType посилається на стан у списку станів пода з відповідним типом.

PodResourceClaim

PodResourceClaim посилається на точно один ResourceClaim, або безпосередньо, або шляхом вказівки ResourceClaimTemplate, який потім перетворюється на ResourceClaim для пода.

Він додає імʼя, яке унікально ідентифікує ResourceClaim всередині Podʼа. Контейнери, які потребують доступу до ResourceClaim, посилаються на нього за цим імʼям.

Коли функціональна можливість DRAWorkloadResourceClaims увімкнена і цей Pod належить до PodGroup, PodResourceClaim співставляється з PodGroupResourceClaim, якщо всі їхні поля однакові (Name, ResourceClaimName та ResourceClaimTemplateName). Співставлена вимога посилається на один ResourceClaim, спільний для всіх Podʼів у PodGroup, зарезервований для PodGroup у ResourceClaimStatus.ReservedFor, а не для окремих Podʼів.


ПолеОпис
name *
string
Name унікально ідентифікує цю заявку на ресурс всередині пода. Це має бути DNS_LABEL.
resourceClaimName
string
ResourceClaimName є імʼям обʼєкта ResourceClaim у тому ж просторі імен, що й цей под. Точно одне з полів ResourceClaimName або ResourceClaimTemplateName має бути встановлено.
resourceClaimTemplateName
string
ResourceClaimTemplateName є імʼям обʼєкта ResourceClaimTemplate у тому ж просторі імен, що й цей под. Шаблон буде використано для створення нового ResourceClaim, який буде привʼязаний до цього пода. Коли цей под буде видалено, ResourceClaim також буде видалено. Імʼя пода та імʼя ресурсу, разом із згенерованим компонентом, будуть використані для формування унікального імені для ResourceClaim, яке буде зафіксовано в pod.status.resourceClaimStatuses. Коли функціональна можливість DRAWorkloadResourceClaims увімкнена і под належить до PodGroup, яка визначає PodGroupResourceClaim з тим самим Name та ResourceClaimTemplateName, цей PodResourceClaim вирішується у ResourceClaim, згенерований для PodGroup. Всі поди в групі, які визначають еквівалентний PodResourceClaim, що відповідає Name та ResourceClaimTemplateName PodGroupResourceClaim, спільно використовують той самий згенерований ResourceClaim. ResourceClaims, згенеровані для PodGroup, належать PodGroup, і їхній життєвий цикл повʼязаний з PodGroup, а не з окремим подом. Це поле є незмінним, і жодні зміни не будуть внесені до відповідного ResourceClaim контрольним механізмом після створення ResourceClaim. Точно одне з полів ResourceClaimName або ResourceClaimTemplateName має бути встановлено.

PodSchedulingGate

PodSchedulingGate є повʼязаним з Podʼом для захисту його планування.


ПолеОпис
name *
string
Імʼя шлюзу планування. Кожен шлюз планування повинен мати унікальне поле name.

PodSchedulingGroup

PodSchedulingGroup ідентифікує екземпляр групи планування часу виконання, до якої належить Pod. Планувальник використовує цю інформацію для застосування семантики планування з урахуванням навантаження. Має бути вказане точно одне поле.


ПолеОпис
podGroupName
string
PodGroupName вказує імʼя окремого обʼєкта PodGroup, який представляє екземпляр групи часу виконання. Має бути DNS-субдоменом.

PodSecurityContext

PodSecurityContext містить атрибути безпеки на рівні Podʼа та загальні налаштування контейнера. Деякі поля також присутні в container.securityContext. Значення полів container.securityContext мають пріоритет над значеннями полів PodSecurityContext.


ПолеОпис
appArmorProfile
AppArmorProfile
appArmorProfile містить параметри AppArmor, які використовуються контейнерами в цьому Podʼі. Зверніть увагу, що це поле не можна встановлювати, коли spec.os.name є windows.
fsGroup
integer
Спеціальна додаткова група, яка застосовується до всіх контейнерів у Podʼі. Деякі типи томів дозволяють Kubelet змінювати власника цього тому на власника Podʼа:
  1. Власний GID буде FSGroup
  2. Встановлюється біт setgid (нові файли, створені в томі, будуть належати FSGroup)
  3. Бітові права доступу обʼєднуються з rw-rw----
Якщо не встановлено, Kubelet не змінюватиме власника та права доступу жодного тому. Зверніть увагу, що це поле не можна встановлювати, коли spec.os.name є windows.
fsGroupChangePolicy
string
fsGroupChangePolicy визначає поведінку зміни власника та прав доступу до тому перед його використанням у Podʼі. Це поле застосовується лише до типів томів, які підтримують власність на основі fsGroup (і права доступу). Воно не впливає на епhemeral томи, такі як: secret, configmaps та emptydir. Дійсні значення: "OnRootMismatch" та "Always". Якщо не вказано, використовується "Always". Зверніть увагу, що це поле не можна встановлювати, коли spec.os.name є windows.

Можливі значення enum:
  • "Always" вказує, що власник та права доступу до тому завжди повинні змінюватися при монтуванні тому всередині Podʼа. Це стандартна поведінка.
  • "OnRootMismatch" вказує, що власник та права доступу до тому будуть змінюватися лише тоді, коли права доступу та власник кореневої теки не відповідають очікуваним правам доступу до тому. Це може допомогти скоротити час, необхідний для зміни власника та прав доступу до тому.
runAsGroup
integer
GID, з яким запускається точка входу процесу контейнера. Якщо значення не вказано, використовується стандартне значення середовища виконання. Також може бути задано в SecurityContext. Якщо встановлено як у SecurityContext, так і в PodSecurityContext, значення, вказане в SecurityContext, має пріоритет для цього контейнера. Зверніть увагу, що це поле не можна встановлювати, коли spec.os.name є windows.
runAsNonRoot
boolean
Вказує на те, що контейнер повинен запускатися не від імені root. Якщо значення true, Kubelet перевірятиме образ під час виконання, щоб переконатися, що він не запускається з UID 0 (root), і не вдасться запустити контейнер, якщо це так. Якщо значення не вказано або воно false, така перевірка не проводиться. Також може бути задано в SecurityContext. Якщо встановлено як у SecurityContext, так і в PodSecurityContext, значення, вказане в SecurityContext, має пріоритет для цього контейнера.
runAsUser
integer
UID, з яким запускається точка входу процесу контейнера. Якщо значення не вказано, використовується стандартне значення середовища виконання. Також може бути задано в SecurityContext. Якщо встановлено як у SecurityContext, так і в PodSecurityContext, значення, вказане в SecurityContext, має пріоритет для цього контейнера. Зверніть увагу, що це поле не можна встановлювати, коли spec.os.name є windows.
seLinuxChangePolicy
string
seLinuxChangePolicy визначає, як мітка SELinux контейнера застосовується до всіх томів, що використовуються Podʼом. Не впливає на вузли, які не підтримують SELinux, або на томи, які не підтримують SELinux. Дійсні значення: "MountOption" та "Recursive". "Recursive" означає повторне маркування всіх файлів на всіх томах Podʼа за допомогою середовища виконання контейнера. Це може бути повільно для великих томів, але дозволяє змішувати привілейовані та непривілейовані Podʼи, що використовують один і той же том на одному вузлі. "MountOption" монтує всі відповідні томи Podʼа з опцією монтування -o context. Це вимагає, щоб всі Podʼи, що використовують один і той же том, використовували одну й ту ж мітку SELinux. Неможливо використовувати один і той же том серед привілейованих та непривілейованих Podʼів. Відповідні томи включають вбудовані механізми підтримки томів FibreChannel та iSCSI, а також всі CSI томи, драйвер CSI яких оголошує підтримку SELinux, встановлюючи spec.seLinuxMount: true у своєму екземплярі CSIDriver. Інші томи завжди повторно маркуються рекурсивно. Значення "MountOption" дозволено лише тоді, коли увімкнено функціональний прапорець SELinuxMount. Якщо не вказано і функціональний прапорець SELinuxMount увімкнено, використовується "MountOption". Якщо не вказано і функціональний прапорець SELinuxMount вимкнено, для томів ReadWriteOncePod використовується "MountOption", а для всіх інших томів — "Recursive". Це поле впливає лише на Podʼи, які мають встановлену мітку SELinux, або в PodSecurityContext, або в SecurityContext усіх контейнерів. Всі Podʼи, що використовують один і той же том, повинні використовувати одну й ту ж seLinuxChangePolicy, інакше деякі Podʼи можуть застрягти в стані ContainerCreating. Зверніть увагу, що це поле не можна встановлювати, коли spec.os.name є windows.
seLinuxOptions
SELinuxOptions
Контекст SELinux, який застосовується до всіх контейнерів. Якщо не вказано, середовище виконання контейнера призначить випадковий контекст SELinux для кожного контейнера. Також може бути задано в SecurityContext. Якщо встановлено як у SecurityContext, так і в PodSecurityContext, значення, вказане в SecurityContext, має пріоритет для цього контейнера. Зверніть увагу, що це поле не можна встановлювати, коли spec.os.name є windows.
seccompProfile
SeccompProfile
Параметри seccomp, які використовуються контейнерами в цьому поді. Зверніть увагу, що це поле не можна встановлювати, коли spec.os.name є windows.
supplementalGroups
integer array
Список груп, які застосовуються до першого процесу, що запускається в кожному контейнері, на додачу до основного GID контейнера та fsGroup (якщо вказано). Якщо функція SupplementalGroupsPolicy увімкнена, поле supplementalGroupsPolicy визначає, чи ці групи додаються до будь-яких членств у групах, визначених у образі контейнера, чи замінюють їх. Якщо не вказано, додаткові групи не додаються, хоча членства в групах, визначені в образі контейнера, можуть все ще використовуватися залежно від поля supplementalGroupsPolicy. Зверніть увагу, що це поле не можна встановлювати, коли spec.os.name є windows.
supplementalGroupsPolicy
string
Визначає, як обчислюються додаткові групи перших процесів контейнера. Дійсні значення: "Merge" та "Strict". Якщо не вказано, використовується "Merge". (Alpha) Використання цього поля вимагає увімкнення функціональної можливості SupplementalGroupsPolicy, а середовище виконання контейнера повинно підтримувати цю функцію. Зверніть увагу, що це поле не можна встановлювати, коли spec.os.name є windows.

Можливі значення enum:
  • "Merge" означає, що надані контейнером SupplementalGroups та FsGroup (вказані в SecurityContext) будуть обʼєднані з основними групами користувача, визначеними в образі контейнера (у /etc/group).
  • "Strict" означає, що надані контейнером SupplementalGroups та FsGroup (вказані в SecurityContext) будуть використовуватися замість будь-яких груп, визначених в образі контейнера.
sysctls
Sysctl array
Sysctls містить список іменованих sysctl, які використовуються для пода. Поди з непідтримуваними sysctl (з боку середовища виконання контейнера) можуть не запускатися. Зверніть увагу, що це поле не можна встановлювати, коли spec.os.name є windows.
windowsOptions
WindowsSecurityContextOptions
Специфічні для Windows налаштування, які застосовуються до всіх контейнерів. Якщо не вказано, будуть використані параметри з SecurityContext контейнера. Якщо встановлено як у SecurityContext, так і в PodSecurityContext, перевага надається значенню, вказаному в SecurityContext. Зверніть увагу, що це поле не можна встановлювати, коли spec.os.name є linux.

PreferredSchedulingTerm

Порожній preferred scheduling term відповідає всім обʼєктам з неявною вагою 0 (тобто це no-op). Null preferred scheduling term не відповідає жодним обʼєктам (тобто також є no-op).


ПолеОпис
preference *
NodeSelectorTerm
Термін вибору вузла, повʼязаний з відповідною вагою.
weight *
integer
Вага, повʼязана з відповідним терміном вибору вузла, у діапазоні від 1 до 100.

Probe

Probe описує перевірку стану справності, яка виконується для контейнера, щоб визначити, чи він життєздатний або готовий приймати трафік.


ПолеОпис
exec
ExecAction
Exec вказує команду для виконання в контейнері.
failureThreshold
integer
Мінімальна кількість послідовних невдач, щоб перевірка вважалася невдалою після успішного виконання. Зазвичай — 3. Мінімальне значення — 1.
grpc
GRPCAction
GRPC вказує GRPC HealthCheckRequest.
httpGet
HTTPGetAction
HTTPGet вказує HTTP GET запит для виконання.
initialDelaySeconds
integer
Кількість секунд після запуску контейнера, перш ніж ініціюються перевірки життєздатності. Більше інформації: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
periodSeconds
integer
Як часто (у секундах) виконувати перевірку. Стандартно — 10 секунд. Мінімальне значення — 1.
successThreshold
integer
Мінімальна кількість послідовних успішних перевірок, щоб перевірка вважалася успішною після невдачі. Зазвичай — 1. Має бути 1 для перевірок життєздатності та запуску. Мінімальне значення — 1.
tcpSocket
TCPSocketAction
TCPSocket вказує підключення до TCP порту.
terminationGracePeriodSeconds
integer
Опціональна тривалість у секундах, протягом якої под має завершити роботу після невдачі перевірки. Період належного завершення — це тривалість у секундах після того, як процеси, що працюють у поді, отримують сигнал завершення, і час, коли процеси примусово зупиняються за допомогою сигналу kill. Встановіть це значення довше, ніж очікуваний час очищення для вашого процесу. Якщо це значення nil, буде використано terminationGracePeriodSeconds пода. В іншому випадку це значення перевизначає значення, надане у специфікації пода. Значення має бути невід’ємним цілим числом. Значення нуль означає негайну зупинку за допомогою сигналу kill (немає можливості завершити роботу). Це бета-поле і вимагає увімкнення функціональної можливості ProbeTerminationGracePeriod. Мінімальне значення — 1. Використовується spec.terminationGracePeriodSeconds, якщо не встановлено.
timeoutSeconds
integer
Кількість секунд після якої перевірка завершується з тайм-аутом. Стандартно — 1 секунда. Мінімальне значення — 1. Більше інформації: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

ProjectedVolumeSource

Представляє джерело спроєцьованого тому


ПолеОпис
defaultMode
integer
defaultMode визначає біти режиму, які стандартно використовуються для встановлення дозволів на створені файли. Має бути восьмеричним значенням від 0000 до 0777 або десятковим значенням від 0 до 511. YAML приймає як восьмеричні, так і десяткові значення, JSON вимагає десяткових значень для бітів режиму. Теки всередині шляху не впливають на цю настройку. Це може конфліктувати з іншими параметрами, які впливають на режим файлу, такими як fsGroup, і результатом можуть бути інші встановлені біти режиму.
sources
VolumeProjection array
sources є списком проєкцій томів. Кожен елемент у цьому списку обробляє одне джерело.

RBDVolumeSource

Представляє підключення Rados Block Device, яке триває протягом життя пода. RBD томи підтримують управління власністю та переназначення SELinux.


ПолеОпис
fsType
string
fsType є типом файлової системи тому, який ви хочете змонтувати. Порада: переконайтеся, що тип файлової системи підтримується операційною системою хоста. Приклади: "ext4", "xfs", "ntfs". Якщо не вказано, неявно вважається "ext4". Більше інформації: https://kubernetes.io/docs/concepts/storage/volumes#rbd
image *
string
image є імʼям образу Rados. Більше інформації: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
keyring
string
keyring є шляхом до вʼязки ключів для RBDUser. Зазвичай /etc/ceph/keyring. Більше інформації: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
monitors *
string array
monitors є колекцією моніторів Ceph. Більше інформації: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
pool
string
pool є імʼям пулу Rados. Стандартно — rbd. Більше інформації: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
readOnly
boolean
readOnly тут примусово встановлює параметр ReadOnly у VolumeMounts. Стандартно — false. Більше інформації: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
secretRef
LocalObjectReference
secretRef є імʼям секрету автентифікації для RBDUser. Якщо вказано, перевизначає keyring. Стандартно — nil. Більше інформації: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
user
string
user є імʼям користувача Rados. Стандартно — admin. Більше інформації: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it

ResourceClaim

ResourceClaim вказує на один запис у PodSpec.ResourceClaims.


ПолеОпис
name *
string
Name має відповідати імені одного запису в pod.spec.resourceClaims пода, де використовується це поле. Це робить ресурс доступним всередині контейнера.
request
string
Request є імʼям, обраним для запиту в посиланні на претензію. Якщо порожньо, доступні всі ресурси з заявки, інакше лише результат цього запиту.

ResourceFieldSelector

ResourceFieldSelector представляє ресурси контейнера (cpu, memory) та їх формат виводу


ПолеОпис
containerName
string
Імʼя контейнера: обовʼязково для томів, необовʼязково для змінних середовища
divisor
Quantity
Визначає формат виводу відкритих ресурсів, стандартно — "1"
resource *
string
Обовʼязково: ресурс для вибору

ResourceHealth

ResourceHealth представляє стан ресурсу. Він містить останню інформацію про стан пристрою. Це частина KEP https://kep.k8s.io/4680.


ПолеОпис
health
string
Стан ресурсу. Може бути одним з наступних:
  • Healthy: працює нормально
  • Unhealthy: повідомлено про несправність. Ми вважаємо це тимчасовою проблемою зі станом, оскільки наразі немає механізму для розрізнення тимчасових та постійних проблем.
  • Unknown: стан не може бути визначений. Наприклад, втулок пристрою був відключений і не був повторно зареєстрований. У майбутньому ми можемо ввести статус PermanentlyUnhealthy.
message
string
Message надає контекст, зрозумілий людині, для Health (наприклад, "ECC error count exceeded threshold"). Це поле заповнюється kubelet, коли ResourceHealthStatusMessage увімкнено, якщо втулок DRA повертає повідомлення, інакше воно дорівнює null.
resourceID *
string
ResourceID є унікальним ідентифікатором ресурсу. Див. тип ResourceID для отримання додаткової інформації.

ResourceRequirements

ResourceRequirements описує вимоги до обчислювальних ресурсів.


ПолеОпис
claims
ResourceClaim array
Claims є списком імен ресурсів, визначених у spec.resourceClaims, які використовуються цим контейнером. Це поле залежить від функціональної можливості DynamicResourceAllocation. Це поле є незмінним. Воно може бути встановлено лише для контейнерів.
limits
object
Limits описує максимальну кількість обчислювальних ресурсів, дозволених для використання. Більше інформації: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
requests
object
Requests описує мінімальну кількість обчислювальних ресурсів, необхідних для роботи. Якщо Requests опущено для контейнера, воно зазвичай дорівнює Limits, якщо воно явно вказано, інакше значенню, визначеному реалізацією. Requests не може перевищувати Limits. Більше інформації: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

ResourceStatus

ResourceStatus представляє стан одного ресурсу, виділеного для Podʼа.


ПолеОпис
name *
string
Назва ресурсу. Має бути унікальною в межах Podʼа і, у випадку ресурсу без DRA, відповідати одному з ресурсів з специфікації Podʼа. Для ресурсів DRA значення має бути "claim:<claim_name>/<request>". Коли цей статус повідомляється про контейнер, "claim_name" і "request" мають відповідати одній з заявок цього контейнера.
resources
ResourceHealth array
Список станів унікальних ресурсів. Кожен елемент списку містить унікальний ідентифікатор ресурсу та його стан. Як мінімум, протягом життєвого циклу Podʼа, ідентифікатор ресурсу повинен унікально ідентифікувати ресурс, виділений Podʼу на вузлі. Якщо інший Pod на тому ж вузлі повідомляє про стан з тим самим ідентифікатором ресурсу, це повинен бути той самий ресурс, який вони спільно використовують. Див. визначення типу ResourceID для конкретного формату, який він має у різних випадках використання.

SELinuxOptions

SELinuxOptions описує мітки, які будуть застосовані до контейнера.


ПолеОпис
level
string
Level є міткою рівня SELinux, яка застосовується до контейнера.
role
string
Role є міткою ролі SELinux, яка застосовується до контейнера.
type
string
Type є міткою типу SELinux, яка застосовується до контейнера.
user
string
User є міткою користувача SELinux, яка застосовується до контейнера.

ScaleIOVolumeSource

ScaleIOVolumeSource представляє постійний том ScaleIO


ПолеОпис
fsType
string
fsType є типом файлової системи для монтування. Має бути типом файлової системи, підтримуваним операційною системою хоста. Наприклад: "ext4", "xfs", "ntfs". Зазвичай — "xfs".
gateway *
string
gateway є адресою хоста ScaleIO API Gateway.
protectionDomain
string
protectionDomain є назвою домену захисту ScaleIO для налаштованого сховища.
readOnly
boolean
readOnly стандартно — false (читання/запис). ReadOnly тут примусово встановить параметр ReadOnly у VolumeMounts.
secretRef *
LocalObjectReference
secretRef посилається на секрет для користувача ScaleIO та іншої конфіденційної інформації. Якщо це не надано, операція входу завершиться невдачею.
sslEnabled
boolean
Прапорець sslEnabled вмикає/вимикає SSL-з'єднання з Gateway, зазвичай — false
storageMode
string
storageMode вказує, чи має сховище для тому бути ThickProvisioned або ThinProvisioned. Стандартно — ThinProvisioned.
storagePool
string
storagePool є пулом сховища ScaleIO, повʼязаним із доменом захисту.
system *
string
system є назвою системи зберігання, налаштованої в ScaleIO.
volumeName
string
volumeName є назвою тому, який вже створено в системі ScaleIO і який повʼязаний із цим джерелом тому.

SeccompProfile

SeccompProfile визначає налаштування профілю seccomp для поду/контейнера. Може бути встановлено лише одне джерело профілю.


ПолеОпис
localhostProfile
string
localhostProfile вказує, що слід використовувати профіль, визначений у файлі на вузлі. Профіль повинен бути попередньо налаштований на вузлі для роботи. Має бути низхідним шляхом, відносно налаштованого розташування профілю seccomp kubelet. Має бути встановлено, якщо type дорівнює "Localhost". Не повинно бути встановлено для будь-якого іншого типу.
type *
string
type вказує, який тип профілю seccomp буде застосовано. Дійсні варіанти:
  • Localhost — слід використовувати профіль, визначений у файлі на вузлі.
  • RuntimeDefault — слід використовувати стандартний для середовища виконання контейнера профіль.
  • Unconfined — профіль не застосовується.
Можливі значення enum:
  • "Localhost" вказує, що слід використовувати профіль, визначений у файлі на вузлі. Розташування файлу відносно <kubelet-root-dir>/seccomp.
  • "RuntimeDefault" представляє профіль seccomp стандартний для середовища виконання контейнера.
  • "Unconfined" вказує, що профіль seccomp не застосовується (так званий unconfined).

SecretEnvSource

SecretEnvSource вибирає Secret для заповнення змінних середовища.

Вміст поля Data цільового Secret буде представляти пари ключ-значення як змінні середовища.


ПолеОпис
name
string
Назва референта. Це поле фактично обовʼязкове, але через зворотну сумісність дозволяється залишати його порожнім. Екземпляри цього типу з порожнім значенням тут майже напевно неправильні. Більше інформації: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
optional
boolean
Вкажіть, чи повинен Secret бути визначений

SecretKeySelector

SecretKeySelector вибирає ключ із Secret.


ПолеОпис
key *
string
Ключ секрету для вибору. Повинен бути дійсним ключем секрету.
name
string
Назва референта. Це поле фактично обовʼязкове, але через зворотну сумісність дозволяється залишати його порожнім. Екземпляри цього типу з порожнім значенням тут майже напевно неправильні. Більше інформації: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
optional
boolean
Вкажіть, чи повинен Secret або його ключ бути визначений

SecretProjection

Перетворює секрет у проєкційний том.

Вміст поля Data цільового Secret буде представлений у проєкційному томі як файли, використовуючи ключі з поля Data як імена файлів. Зверніть увагу, що це ідентично джерелу тома секрету без режиму.


ПолеОпис
items
KeyToPath array
items якщо не вказано, кожна пара ключ-значення в полі Data Secretʼу, на який є посилання, буде проєцюватись в том як файл, імʼя якого є ключем, а вміст — значенням. Якщо вказано, перелічені ключі будуть спроєцьовані в зазначені шляхи, а не перелічені ключі не будуть присутні. Якщо вказано ключ, якого немає в Secret, налаштування тому завершиться помилкою, якщо він не позначений як необовʼязковий. Шляхи повинні бути відносними і не можуть містити шлях '..' або починатися з '..'.
name
string
Назва референта. Це поле фактично обовʼязкове, але через зворотну сумісність дозволяється залишати його порожнім. Екземпляри цього типу з порожнім значенням тут майже напевно неправильні. Більше інформації: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
optional
boolean
Вкажіть, чи повинен Secret або його ключ бути визначений

SecretVolumeSource

Перетворює секрет у том.

Вміст поля Data цільового Secret буде представлений у томі як файли, використовуючи ключі з поля Data як імена файлів. Томи секретів підтримують управління власністю та переназначення міток SELinux.


ПолеОпис
defaultMode
integer
defaultMode опціональним: біти режиму, які стандартно використовуються для встановлення дозволів на створені файли. Має бути вісімкове значення від 0000 до 0777 або десяткове значення від 0 до 511. YAML приймає як вісімкові, так і десяткові значення, JSON вимагає десяткові значення для бітів режиму. Стандартно — 0644. Теки всередині шляху не впливають на це налаштування. Це може конфліктувати з іншими параметрами, які впливають на режим файлу, наприклад fsGroup, і результатом можуть бути інші встановлені біти режиму.
items
KeyToPath array
items Якщо не вказано, кожна пара ключ-значення в полі Data Secretʼу, на який є посилання, буде проєцюватись в том як файл, імʼя якого є ключем, а вміст — значенням. Якщо вказано, перелічені ключі будуть спроєцьовані в зазначені шляхи, а не перелічені ключі не будуть присутні. Якщо вказано ключ, якого немає в Secret, налаштування тому завершиться помилкою, якщо він не позначений як необовʼязковий. Шляхи повинні бути відносними і не можуть містити шлях '..' або починатися з '..'.
optional
boolean
Вкажіть, чи повинен Secret або його ключ бути визначений
secretName
string
secretName є назвою секрету в просторі імен пода, який слід використовувати. Більше інформації: https://kubernetes.io/docs/concepts/storage/volumes#secret

SecurityContext

SecurityContext містить конфігурацію безпеки, яка буде застосована до контейнера. Деякі поля присутні як у SecurityContext, так і у PodSecurityContext. Коли обидва встановлені, значення в SecurityContext мають пріоритет.


ПолеОпис
allowPrivilegeEscalation
boolean
AllowPrivilegeEscalation контролює, чи може процес отримати більше привілеїв, ніж його батьківський процес. Цей булевий параметр безпосередньо контролює, чи буде встановлено прапорець no_new_privs для процесу контейнера. AllowPrivilegeEscalation завжди true, коли контейнер:
  1. запущений як Privileged
  2. має CAP_SYS_ADMIN
Зверніть увагу, що це поле не можна встановлювати, коли spec.os.name є windows.
appArmorProfile
AppArmorProfile
appArmorProfile є параметром AppArmor, який слід використовувати для цього контейнера. Якщо встановлено, цей профіль замінює appArmorProfile пода. Зверніть увагу, що це поле не можна встановлювати, коли spec.os.name є windows.
capabilities
Capabilities
Можливості для додавання/видалення під час запуску контейнерів. За звичай використовується набір можливостей, наданих середовищем виконання контейнера. Зверніть увагу, що це поле не можна встановлювати, коли spec.os.name є windows.
privileged
boolean
Запуск контейнера в привілейованому режимі. Процеси в привілейованих контейнерах фактично еквівалентні root на хості. Зазвичай — false. Зверніть увагу, що це поле не можна встановлювати, коли spec.os.name є windows.
procMount
string
procMount позначає тип монтування proc, який слід використовувати для контейнерів. Стандартне значення — Default, яке використовує налаштування середовища виконання контейнера для шляхів лише для читання та замаскованих шляхів. Зверніть увагу, що це поле не можна встановлювати, коли spec.os.name є windows.

Можливі значення enum:
  • "Default" використовує налаштування середовища виконання контейнера для шляхів лише для читання та замаскованих шляхів для /proc. Більшість середовищ виконання контейнера маскують певні шляхи в /proc, щоб уникнути випадкового розкриття спеціальних пристроїв або інформації.
  • "Unmasked" обходить стандартну поведінку маскування середовища виконання контейнера і забезпечує, що новостворений /proc контейнера залишається незмінним без модифікацій.
readOnlyRootFilesystem
boolean
Чи має цей контейнер файлову систему root лише для читання. Стандартно — false. Зверніть увагу, що це поле не можна встановлювати, коли spec.os.name є windows.
runAsGroup
integer
GID для запуску точки входу процесу контейнера. Використовує стандартне значення середовища виконання, якщо не встановлено. Може також бути встановлено в PodSecurityContext. Якщо встановлено як у SecurityContext, так і в PodSecurityContext, перевага надається значенню, вказаному в SecurityContext. Зверніть увагу, що це поле не можна встановлювати, коли spec.os.name є windows.
runAsNonRoot
boolean
Вказує, що контейнер повинен запускатися не від імені root. Якщо true, Kubelet перевірить образ під час виконання, щоб переконатися, що він не запускається з UID 0 (root), і не вдасться запустити контейнер, якщо це так. Якщо не встановлено або false, така перевірка не проводиться. Може також бути встановлено в PodSecurityContext. Якщо встановлено як у SecurityContext, так і в PodSecurityContext, перевага надається значенню, вказаному в SecurityContext.
runAsUser
integer
UID для запуску точки входу процесу контейнера. Використовує стандартне значення середовища виконання, якщо не встановлено. Може також бути встановлено в PodSecurityContext. Якщо встановлено як у SecurityContext, так і в PodSecurityContext, перевага надається значенню, вказаному в SecurityContext. Зверніть увагу, що це поле не можна встановлювати, коли spec.os.name є windows.
seLinuxOptions
SELinuxOptions
SELinux контекст, який буде застосовано до контейнера. Якщо не вказано, середовище виконання контейнера виділить випадковий SELinux контекст для кожного контейнера. Може також бути встановлено в PodSecurityContext. Якщо встановлено як у SecurityContext, так і в PodSecurityContext, перевага надається значенню, вказаному в SecurityContext. Зверніть увагу, що це поле не можна встановлювати, коли spec.os.name є windows.
seccompProfile
SeccompProfile
Параметри seccomp, які використовуються цим контейнером. Якщо параметри seccomp надаються як на рівні пода, так і на рівні контейнера, параметри контейнера переважають над параметрами пода. Зверніть увагу, що це поле не можна встановлювати, коли spec.os.name є windows.
windowsOptions
WindowsSecurityContextOptions
Специфічні для Windows налаштування, які застосовуються до всіх контейнерів. Якщо не вказано, будуть використані параметри з PodSecurityContext. Якщо встановлено як у SecurityContext, так і в PodSecurityContext, перевага надається значенню, вказаному в SecurityContext. Зверніть увагу, що це поле не можна встановлювати, коли spec.os.name є linux.

ServiceAccountTokenProjection

ServiceAccountTokenProjection представляє спроєцьований том токенів службового облікового запису. Цей спроєцьований том можна використовувати для вставлення токенів службового облікового запису у файлову систему подів для використання з API (Kubernetes API Server або інших).


ПолеОпис
audience
string
audience є призначеною аудиторією токена. Отримувач токена повинен ідентифікувати себе за допомогою ідентифікатора, вказаного в аудиторії токена, інакше слід відхилити токен. Стандартно аудиторія встановлюється як ідентифікатор apiserver.
expirationSeconds
integer
expirationSeconds є запитуваною тривалістю дії токена службового облікового запису. Коли токен наближається до закінчення терміну дії, втулок томів kubelet буде проактивно оновлювати токен службового облікового запису. Kubelet почне намагатися оновити токен, якщо токен старший за 80 відсотків свого часу життя або якщо токен старший за 24 години. Стандартне значення становить 1 годину і має бути не менше 10 хвилин.
path *
string
path є шляхом відносно точки монтування файлу, куди буде вставлено токен.

SleepAction

SleepAction описує дію "sleep".


ПолеОпис
seconds *
integer
Seconds є кількістю секунд для сну.

StorageOSVolumeSource

Представляє ресурс постійного тома StorageOS.


ПолеОпис
fsType
string
fsType є типом файлової системи для монтування. Має бути тип файлової системи, підтримуваний операційною системою хоста. Наприклад, "ext4", "xfs", "ntfs". Якщо не вказано, неявно вважається "ext4".
readOnly
boolean
readOnly стандартно встановлено в false (читання/запис). ReadOnly тут примусово встановить параметр ReadOnly у VolumeMounts.
secretRef
LocalObjectReference
secretRef вказує секрет для отримання облікових даних API StorageOS. Якщо не вказано, будуть використані стандартні значення.
volumeName
string
volumeName є зрозумілим для людини імʼям тома StorageOS. Імена томів унікальні лише в межах простору імен.
volumeNamespace
string
volumeNamespace вказує область дії тома в межах StorageOS. Якщо простір імен не вказано, буде використано простір імен пода. Це дозволяє відобразити іменування Kubernetes у StorageOS для тіснішої інтеграції. Встановіть VolumeName на будь-яке імʼя, щоб перевизначити стандартну поведінку. Встановіть на "default", якщо ви не використовуєте простори імен у StorageOS. Простори імен, які не існують у StorageOS, будуть створені.

Sysctl

Sysctl визначає параметр ядра, який потрібно встановити


ПолеОпис
name *
string
Назва властивості для встановлення
value *
string
Значення властивості для встановлення

TCPSocketAction

TCPSocketAction описує дію на основі відкриття сокета


ПолеОпис
host
string
Опційно: Імʼя хосту для підключення, зазвичай використовується IP пода.
port *
Номер або імʼя порту для доступу до контейнера. Номер повинен бути в діапазоні від 1 до 65535. Імʼя повинно бути IANA_SVC_NAME.

TopologySpreadConstraint

TopologySpreadConstraint визначає, як розподіляти відповідні поди серед заданої топології.


ПолеОпис
labelSelector
LabelSelector
LabelSelector використовується для пошуку відповідних подів. Поди, які відповідають цьому селектору міток, враховуються для визначення кількості подів у їх відповідному топологічному домені.
matchLabelKeys
string array
MatchLabelKeys є набором ключів міток подів для вибору подів, для яких буде обчислюватися розподіл. Ключі використовуються для пошуку значень у мітках вхідного пода, ці ключ-значення мітки обʼєднуються з labelSelector для вибору групи наявних подів, для яких буде обчислюватися розподіл для вхідного пода. Один і той же ключ заборонено використовувати як у MatchLabelKeys, так і в LabelSelector. MatchLabelKeys не можна встановлювати, якщо LabelSelector не встановлено. Ключі, яких немає в мітках вхідного пода, будуть ігноруватися. Null або порожній список означає, що буде враховуватися лише labelSelector. Це бета-поле і вимагає увімкнення функціональної можливості MatchLabelKeysInPodTopologySpread (стандартно увімкнено).
maxSkew *
integer
MaxSkew описує ступінь нерівномірного розподілу подів. Коли whenUnsatisfiable=DoNotSchedule, це максимальна дозволена різниця між кількістю відповідних подів у цільовій топології та глобальним мінімумом. Глобальний мінімум — це мінімальна кількість відповідних подів у допустимому домені або нуль, якщо кількість допустимих доменів менша за MinDomains. Наприклад, у кластері з 3 зонами, MaxSkew встановлено на 1, а поди з однаковим labelSelector розподілені як 2/2/1: У цьому випадку глобальний мінімум дорівнює 1.

graph TD; subgraph zone3["zone 3"] P3_1("Pod") end subgraph zone2["zone 2"] P2_1("Pod") P2_2("Pod") end subgraph zone1["zone 1"] P1_1("Pod") P1_2("Pod") end classDef plain fill:#ddd,stroke:#fff,stroke-width:4px,color:#000; classDef k8s fill:#326ce5,stroke:#fff,stroke-width:4px,color:#fff; classDef cluster fill:#fff,stroke:#bbb,stroke-width:2px,color:#326ce5; class P1_1,P1_2,P2_1,P2_2,P3_1 k8s; class zone1,zone2,zone3 cluster;
  • якщо MaxSkew дорівнює 1, вхідний под може бути запланований лише в zone3, щоб стати 2/2/2; планування його в zone1(zone2) порушить MaxSkew(1).
  • якщо MaxSkew дорівнює 2, вхідний под може бути запланований у будь-яку з зон. Коли whenUnsatisfiable=ScheduleAnyway, це використовується для надання більш високого пріоритету топологіям, які його задовольняють. Це обовʼязкове поле. Стандартне значення — 1, а 0 не допускається.
minDomains
integer
MinDomains вказує мінімальну кількість допустимих доменів. Коли кількість допустимих доменів з відповідними ключами топології менша за minDomains, Pod Topology Spread розглядає "глобальний мінімум" як 0, а потім виконується обчислення Skew. Коли кількість допустимих доменів з відповідними ключами топології дорівнює або перевищує minDomains, це значення не впливає на планування. В результаті, коли кількість допустимих доменів менша за minDomains, планувальник не буде планувати більше maxSkew Pod у ці домени. Якщо значення nil, обмеження поводиться так, ніби MinDomains дорівнює 1. Допустимі значення — це цілі числа більше 0. Коли значення не nil, WhenUnsatisfiable має бути DoNotSchedule. Наприклад, у кластері з 3 зонами, MaxSkew встановлено на 2, MinDomains встановлено на 5, а поди з тим самим labelSelector розподілені як 2/2/2:

graph TD; subgraph zone3["zone 3"] P3_1("Pod") P3_2("Pod") end subgraph zone2["zone 2"] P2_1("Pod") P2_2("Pod") end subgraph zone1["zone 1"] P1_1("Pod") P1_2("Pod") end classDef plain fill:#ddd,stroke:#fff,stroke-width:4px,color:#000; classDef k8s fill:#326ce5,stroke:#fff,stroke-width:4px,color:#fff; classDef cluster fill:#fff,stroke:#bbb,stroke-width:2px,color:#326ce5; class P1_1,P1_2,P2_1,P2_2,P3_1,P3_2 k8s; class zone1,zone2,zone3 cluster;
Кількість доменів менша за 5(MinDomains), тому "глобальний мінімум" розглядається як 0. У цій ситуації новий под з тим самим labelSelector не може бути запланований, оскільки обчислений skew буде 3 (3 - 0), якщо новий Pod буде запланований у будь-яку з трьох зон, це порушить MaxSkew.
nodeAffinityPolicy
string
NodeAffinityPolicy вказує, як ми будемо обробляти nodeAffinity/nodeSelector пода при обчисленні перекосу топології пода. Варіанти:
  • Honor: тільки вузли, що відповідають nodeAffinity/nodeSelector, включаються до розрахунків.
  • Ignore: nodeAffinity/nodeSelector ігноруються. Всі вузли включені до розрахунків.

Якщо це значення дорівнює nil, поведінка еквівалентна політиці Honor.



Можливі значення enum:
  • "Honor" означає використовувати цю директиву планування при обчисленні перекосу топології пода.
  • "Ignore" означає ігнорувати цю директиву планування при обчисленні перекосу топології пода.
nodeTaintsPolicy
string
NodeTaintsPolicy вказує, як ми будемо обробляти node taints при обчисленні перекосу топології пода. Варіанти:
  • Honor: вузли без taints, а також вузли з taints, для яких вхідний под має toleration, включаються до розрахунків.
  • Ignore: node taints ігноруються. Всі вузли включені до розрахунків.

Якщо це значення дорівнює nil, поведінка еквівалентна політиці Ignore.



Можливі значення enum:
  • "Honor" означає використовувати цю директиву планування при обчисленні перекосу топології пода.
  • "Ignore" означає ігнорувати цю директиву планування при обчисленні перекосу топології пода.
topologyKey *
string
TopologyKey є ключем міток вузлів. Вузли, які мають мітку з цим ключем і однаковими значеннями, вважаються частиною однієї топології. Ми розглядаємо кожну пару <ключ, значення> як "кошик" і намагаємося розподілити поди рівномірно між кошиками. Ми визначаємо домен як конкретний екземпляр топології. Також ми визначаємо допустимий домен як домен, вузли якого відповідають вимогам nodeAffinityPolicy і nodeTaintsPolicy. Наприклад, якщо TopologyKey дорівнює "kubernetes.io/hostname", кожен вузол є доменом цієї топології. А якщо TopologyKey дорівнює "topology.kubernetes.io/zone", кожна зона є доменом цієї топології. Це обов'язкове поле.
whenUnsatisfiable *
string
WhenUnsatisfiable вказує, як діяти з подом, якщо він не задовольняє обмеження розподілу.
  • DoNotSchedule (стандартно) вказує планувальнику не планувати його.
  • ScheduleAnyway вказує планувальнику розмістити под у будь-якому місці, але надаючи вищий пріоритет топологіям, які допоможуть зменшити перекіс. Обмеження вважається "Невиконуваним" для вхідного пода лише тоді, коли кожне можливе призначення вузла для цього пода порушує "MaxSkew" на деякій топології. Наприклад, у кластері з 3 зонами, MaxSkew встановлено на 1, і поди з тим самим labelSelector розподіляються як 3/1/1:
graph TD; subgraph zone3["zone 3"] P3_1("Pod") end subgraph zone2["zone 2"] P2_1("Pod") end subgraph zone1["zone 1"] P1_1("Pod") P1_2("Pod") P1_3("Pod") end classDef plain fill:#ddd,stroke:#fff,stroke-width:4px,color:#000; classDef k8s fill:#326ce5,stroke:#fff,stroke-width:4px,color:#fff; classDef cluster fill:#fff,stroke:#bbb,stroke-width:2px,color:#326ce5; class P1_1,P1_2,P1_3,P2_1,P3_1 k8s; class zone1,zone2,zone3 cluster;
Якщо WhenUnsatisfiable встановлено на DoNotSchedule, вхідний под може бути запланований лише в zone2(zone3), щоб стати 3/2/1(3/1/2), оскільки ActualSkew(2-1) на zone2(zone3) задовольняє MaxSkew(1). Іншими словами, кластер все ще може бути незбалансованим, але планувальник не зробить його більш незбалансованим. Це обовʼязкове поле.

Можливі значення enum:
  • "DoNotSchedule" вказує планувальнику не планувати под, коли обмеження не задовольняються.
  • "ScheduleAnyway" вказує планувальнику планувати под навіть якщо обмеження не задовольняються.

Volume

Volume представляє іменований том у поді, до якого може отримати доступ будь-який контейнер у поді.


ПолеОпис
awsElasticBlockStore
AWSElasticBlockStoreVolumeSource
awsElasticBlockStore представляє ресурс диска AWS, який підключається до хост-машини kubelet і потім надається поду. Застаріло: AWSElasticBlockStore застаріло. Всі операції для типу вбудованого awsElasticBlockStore перенаправляються до CSI драйвера ebs.csi.aws.com. Детальніше: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
azureDisk
AzureDiskVolumeSource
azureDisk представляє монтування диска Azure Data на хості та привʼязку до пода. Застаріло: AzureDisk застаріло. Всі операції для типу вбудованого azureDisk перенаправляються до CSI драйвера disk.csi.azure.com.
azureFile
AzureFileVolumeSource
azureFile представляє монтування Azure File Service на хості та привʼязку до пода. Застаріло: AzureFile застаріло. Всі операції для типу вбудованого azureFile перенаправляються до CSI драйвера file.csi.azure.com.
cephfs
CephFSVolumeSource
cephFS представляє монтування Ceph FS на хості, яке спільно використовує життєвий цикл пода. Застаріло: CephFS застаріло, і тип cephfs більше не підтримується.
cinder
CinderVolumeSource
cinder представляє том cinder, підключений і змонтований на хості kubelet. Застаріло: Cinder застаріло. Всі операції для типу вбудованого cinder перенаправляються до CSI драйвера cinder.csi.openstack.org. Детальніше: https://examples.k8s.io/mysql-cinder-pd/README.md
configMap
ConfigMapVolumeSource
configMap представляє configMap, який повинен заповнити цей том
csi
CSIVolumeSource
csi (Container Storage Interface) представляє тимчасове сховище, яке обробляється певними зовнішніми CSI драйверами.
downwardAPI
DownwardAPIVolumeSource
downwardAPI представляє downward API, що стосується пода, який повинен заповнити цей том
emptyDir
EmptyDirVolumeSource
emptyDir представляє тимчасова тека, який спільно використовує життєвий цикл пода. Детальніше: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
ephemeral
EphemeralVolumeSource
ephemeral представляє том, який обробляється драйвером сховища кластера. Життєвий цикл тому повʼязаний з подом, який його визначає — він буде створений перед запуском пода і видалений після його видалення. Використовуйте це, якщо:
  1. том потрібен лише під час роботи пода
  2. потрібні функції звичайних томів, такі як відновлення зі знімка або відстеження ємності
  3. драйвер сховища вказаний через клас сховища
  4. драйвер сховища підтримує динамічне створення томів через PersistentVolumeClaim (див. EphemeralVolumeSource для отримання додаткової інформації про зв'язок між цим типом тому та PersistentVolumeClaim)
Використовуйте PersistentVolumeClaim або один із специфічних для постачальника API для томів, які зберігаються довше, ніж життєвий цикл окремого пода. Використовуйте CSI для легких локальних ефермерних томів, якщо драйвер CSI призначений для такого використання, див. документацію драйвера для отримання додаткової інформації. Под може використовувати обидва типи ефермерних і постійних томів одночасно.
fc
FCVolumeSource
fc представляє ресурс Fibre Channel, який підключається до хост-машини kubelet і потім надається поду.
flexVolume
FlexVolumeSource
flexVolume представляє загальний ресурс тому, який надається/підключається за допомогою втулка на основі exec. Застаріло: FlexVolume застаріло. Розгляньте можливість використання CSIDriver замість цього.
flocker
FlockerVolumeSource
flocker представляє том Flocker, підключений до хост-машини kubelet. Це залежить від того, що сервіс керування Flocker працює. Застаріло: Flocker застаріло, і вбудований тип flocker більше не підтримується.
gcePersistentDisk
GCEPersistentDiskVolumeSource
gcePersistentDisk представляє ресурс GCE Disk, який підключається до хост-машини kubelet і потім надається поду. Застаріло: GCEPersistentDisk застаріло. Всі операції для вбудованого типу gcePersistentDisk перенаправляються на драйвер CSI pd.csi.storage.gke.io. Більше інформації: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
gitRepo
GitRepoVolumeSource
gitRepo представляє репозиторій git на певній ревізії. Застаріло: GitRepo застаріло. Щоб забезпечити контейнер репозиторієм git, змонтуйте EmptyDir у InitContainer, який клонує репозиторій за допомогою git, а потім змонтуйте EmptyDir у контейнер Pod.
glusterfs
GlusterfsVolumeSource
glusterfs представляє монтування Glusterfs на хості, яке ділить життєвий цикл пода. Застаріло: Glusterfs застаріло, і вбудований тип glusterfs більше не підтримується.
hostPath
HostPathVolumeSource
hostPath представляє попередньо наявний файл або теку на хост-машині, який безпосередньо відкривається для контейнера. Це зазвичай використовується для системних агентів або інших привілейованих речей, яким дозволено бачити хост-машину. Більшість контейнерів НЕ потребують цього. Більше інформації: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
image
ImageVolumeSource
image представляє обʼєкт OCI (контейнерний образ або артефакт), який отримується та монтується на хост-машині kubelet. Том визначається під час запуску пода залежно від значення PullPolicy:
  • Always: kubelet завжди намагається отримати обʼєкт за посиланням. Створення контейнера зазнає невдачі, якщо витягування не вдається.
  • Never: kubelet ніколи не намагається отримати обʼєкт за посиланням і використовує лише локальний образ або артефакт. Створення контейнера зазнає невдачі, якщо посилання відсутнє.
  • IfNotPresent: kubelet отримує обʼєкт, якщо він ще не присутній на диску. Створення контейнера зазнає невдачі, якщо посилання відсутнє і отримання не вдається.
Том повторно визначається, якщо под видаляється та створюється заново, що означає, що новий віддалений вміст стане доступним при повторному створенні пода. Невдача при визначенні або отриманні образу під час запуску пода заблокує запуск контейнерів і може додати значну затримку. Невдачі будуть повторюватися з використанням звичайної затримки для томів і про це буде повідомлено у причинах та повідомленнях пода. Типи об'єктів, які можуть бути змонтовані цим томом, визначаються реалізацією середовища виконання контейнера на хост-машині і, як мінімум, повинні включати всі дійсні типи, підтримувані полем контейнерного образу. Обʼєкт OCI монтується в одній теці (spec.containers[*].volumeMounts.mountPath) шляхом обʼєднання шарів маніфесту так само, як для контейнерних образів. Том буде змонтований лише для читання (ro). Субшляхи для контейнерів не підтримуються (spec.containers[*].volumeMounts.subpath) до версії 1.33. Поле spec.securityContext.fsGroupChangePolicy не впливає на цей тип тому.
iscsi
ISCSIVolumeSource
iscsi представляє ресурс ISCSI Disk, який підключається до хост-машини kubelet і потім надається поду. Більше інформації: https://kubernetes.io/docs/concepts/storage/volumes/#iscsi
name *
string
імʼя тому. Повинно бути DNS_LABEL і унікальним в межах пода. Більше інформації: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
nfs
NFSVolumeSource
nfs представляє NFS-монтування на хості, яке використовує життєвий цикл пода. Більше інформації: https://kubernetes.io/docs/concepts/storage/volumes#nfs
persistentVolumeClaim
PersistentVolumeClaimVolumeSource
persistentVolumeClaimVolumeSource представляє посилання на PersistentVolumeClaim в тому ж просторі імен. Більше інформації: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
photonPersistentDisk
PhotonPersistentDiskVolumeSource
photonPersistentDisk представляє постійний диск PhotonController, підключений і змонтований на хості kubelet. Застаріло: PhotonPersistentDisk застарів, і тип photonPersistentDisk більше не підтримується.
portworxVolume
PortworxVolumeSource
portworxVolume представляє том Portworx, підключений і змонтований на хості kubelet. Застаріло: PortworxVolume застарів. Всі операції для типу portworxVolume в дереві перенаправляються на драйвер CSI pxd.portworx.com.
projected
ProjectedVolumeSource
спроєцьовані елементи для всіх ресурсів в одному: secrets, configmaps та downward API
quobyte
QuobyteVolumeSource
quobyte представляє монтування Quobyte на хості, яке використовує життєвий цикл пода. Застаріло: Quobyte застарів, і тип quobyte більше не підтримується.
rbd
RBDVolumeSource
rbd представляє монтування Rados Block Device на хості, яке використовує життєвий цикл пода. Застаріло: RBD застарів, і тип rbd більше не підтримується.
scaleIO
ScaleIOVolumeSource
scaleIO представляє постійний том ScaleIO, підключений і змонтований на вузлах Kubernetes. Застаріло: ScaleIO застарів, і тип scaleIO більше не підтримується.
secret
SecretVolumeSource
secret представляє секрет, який повинен заповнювати цей том. Більше інформації: https://kubernetes.io/docs/concepts/storage/volumes#secret
storageos
StorageOSVolumeSource
storageOS представляє том StorageOS, підключений і змонтований на вузлах Kubernetes. Застаріло: StorageOS застарів, і тип storageos більше не підтримується.
vsphereVolume
VsphereVirtualDiskVolumeSource
vsphereVolume представляє том vSphere, підключений і змонтований на хості kubelet. Застаріло: VsphereVolume застарів. Всі операції для типу vsphereVolume в дереві перенаправляються на драйвер CSI csi.vsphere.vmware.com.

VolumeDevice

volumeDevice описує зіставлення сирого блочного пристрою всередині контейнера.


ПолеОпис
devicePath *
string
devicePath є шляхом всередині контейнера, до якого буде змонтовано пристрій.
name *
string
name повинен відповідати імені persistentVolumeClaim у поді

VolumeMount

VolumeMount описує монтування тому всередині контейнера.


ПолеОпис
mountPath *
string
Шлях всередині контейнера, до якого буде змонтовано том. Не повинен містити ':'.
mountPropagation
string
mountPropagation визначає, як монтування поширюються від хоста до контейнера і навпаки. Якщо не встановлено, використовується MountPropagationNone. Це поле є бета-версією в 1.10. Коли RecursiveReadOnly встановлено на IfPossible або Enabled, MountPropagation повинен бути None або невизначеним (що зазвичай дорівнює None).

Можливі значення enum:
  • "Bidirectional" означає, що том у контейнері буде отримувати нові монтування від хоста або інших контейнерів, а його власні монтування будуть поширюватися від контейнера до хоста або інших контейнерів. Зверніть увагу, що цей режим рекурсивно застосовується до всіх монтувань у томі ("rshared" у термінології Linux).
  • "HostToContainer" означає, що том у контейнері буде отримувати нові монтування від хоста або інших контейнерів, але файлові системи, змонтовані всередині контейнера, не будуть поширюватися на хост або інші контейнери. Зверніть увагу, що цей режим рекурсивно застосовується до всіх монтувань у томі ("rslave" у термінології Linux).
  • "None" означає, що том у контейнері не буде отримувати нові монтування від хоста або інших контейнерів, і файлові системи, змонтовані всередині контейнера, не будуть поширюватися на хост або інші контейнери. Зверніть увагу, що цей режим відповідає "private" у термінології Linux.
name *
string
Поле має збігатись з Name у Volume.
readOnly
boolean
Монтується тільки для читання, якщо true, для читання та запису в іншому випадку (false або не вказано). Зазвичай — false.
recursiveReadOnly
string
RecursiveReadOnly визначає, чи повинні монтування тільки для читання оброблятися рекурсивно. Якщо ReadOnly встановлено у false, це поле не має значення і повинно бути невказаним. Якщо ReadOnly встановлено в true, і це поле встановлено в Disabled, монтування не робиться рекурсивно тільки для читання. Якщо це поле встановлено в IfPossible, монтування робиться рекурсивно тільки для читання, якщо це підтримується середовищем виконання контейнера. Якщо це поле встановлено в Enabled, монтування робиться рекурсивно тільки для читання, якщо це підтримується середовищем виконання контейнера, інакше под не буде запущено, і буде згенеровано помилку для вказання причини. Якщо це поле встановлено в IfPossible або Enabled, MountPropagation повинно бути встановлено в None (або бути невказаним, що зазвичай дорівнює None). Якщо це поле не вказано, воно розглядається як еквівалент Disabled.
subPath
string
Шлях всередині тому, з якого повинен бути змонтований том контейнера. Зазвичай — "" (корінь тому).
subPathExpr
string
Розширений шлях всередині тому, з якого повинен бути змонтований том контейнера. Поводиться аналогічно до SubPath, але посилання на змінні середовища $(VAR_NAME) розширюються за допомогою середовища контейнера. Зазвичай — "" (корінь тому). SubPathExpr і SubPath взаємовиключні.

VolumeProjection

Проєкція яка може бути спроєцьована разом з іншими підтримуваними типами томів. Повинно бути встановлено тільки одне з цих полів.


ПолеОпис
clusterTrustBundle
ClusterTrustBundleProjection
ClusterTrustBundle дозволяє поду отримувати доступ до поля .spec.trustBundle обʼєктів ClusterTrustBundle у файлі з автоматичним оновленням. Альфа, керується функціональною можливістю ClusterTrustBundleProjection. Обʼєкти ClusterTrustBundle можна вибирати за назвою або за комбінацією імені підписувача та селектора міток. Kubelet виконує агресивну нормалізацію вмісту PEM, записаного в файлову систему пода. Езотеричні функції PEM, такі як коментарі між блоками та заголовки блоків, видаляються. Сертифікати дедуплікуються. Порядок сертифікатів у файлі довільний, і Kubelet може змінювати порядок з часом.
configMap
ConfigMapProjection
Інформація про дані configMap для проєкції
downwardAPI
DownwardAPIProjection
Інформація про дані downwardAPI для проєкції
podCertificate
PodCertificateProjection
Проєкція автоматично оновлюваного набору облікових даних (приватний ключ і ланцюжок сертифікатів), який под може використовувати як TLS-клієнт або сервер. Kubelet генерує приватний ключ і використовує його для надсилання PodCertificateRequest до вказаного підписувача. Після того як підписувач схвалить запит і видасть ланцюжок сертифікатів, Kubelet записує ключ і ланцюжок сертифікатів у файлову систему пода. Под не запускається, поки сертифікати не будуть видані для кожного джерела тома podCertificate у його специфікації. Kubelet почне намагатися оновити сертифікат у час, вказаний підписувачем, використовуючи PodCertificateRequest.Status.BeginRefreshAt timestamp. Kubelet може записати один файл, вказаний у полі credentialBundlePath, або окремі файли, вказані у полях keyPath і certificateChainPath. Набір облікових даних є одним файлом у форматі PEM. Перший запис PEM є приватним ключем (у форматі PKCS#8), а решта записів PEM є ланцюжком сертифікатів, виданих підписувачем (зазвичай підписувачі повертають свій ланцюжок сертифікатів у порядку від листа до кореня). Рекомендується використовувати формат набору облікових даних, оскільки код вашого застосунку може читати його атомарно. Якщо ви використовуєте keyPath і certificateChainPath, ваш застосунок повинен виконати два окремі читання файлів. Якщо це збігається з оновленням сертифіката, можливо, що приватний ключ і сертифікат листа, які ви читаєте, можуть не відповідати один одному. Вашому застосунку потрібно перевірити цю умову і перечитати, поки вони не будуть узгоджені. Вказаний підписувач контролює формат сертифіката, який він видає; зверніться до документації реалізації підписувача, щоб дізнатися, як використовувати видані сертифікати.
secret
SecretProjection
Інформація про дані секрету для проєкції
serviceAccountToken
ServiceAccountTokenProjection
Інформація про дані serviceAccountToken для проєкції

WeightedPodAffinityTerm

Ваги для всіх полів WeightedPodAffinityTerm, що мають збіг, додаються для кожного вузла, щоб знайти найбільш бажані вузли.


ПолеОпис
podAffinityTerm *
PodAffinityTerm
Обовʼязково. Термін спорідненості пода, повʼязаний з відповідною вагою.
weight *
integer
Вага, повʼязана з відповідним терміном спорідненості пода, у діапазоні від 1 до 100.

WindowsSecurityContextOptions

WindowsSecurityContextOptions містить параметри та облікові дані, специфічні для Windows.


ПолеОпис
gmsaCredentialSpec
string
GMSACredentialSpec — це місце, де вебхук допуску GMSA (https://github.com/kubernetes-sigs/windows-gmsa) вставляє вміст специфікації облікових даних GMSA, визначеної полем GMSACredentialSpecName.
gmsaCredentialSpecName
string
GMSACredentialSpecName — це назва специфікації облікових даних GMSA, яку слід використовувати.
hostProcess
boolean
HostProcess визначає, чи слід запускати контейнер як 'Host Process' контейнер. Усі контейнери Pod повинні мати однакове ефективне значення HostProcess (не дозволяється мати суміш HostProcess контейнерів і не-HostProcess контейнерів). Крім того, якщо HostProcess встановлено в true, то HostNetwork також повинен бути встановлений в true.
runAsUserName
string
Імʼя користувача в Windows для запуску точки входу процесу контейнера. Зазвичай використовується користувач, вказаний у метаданих образу, якщо не вказано інше. Може також бути встановлено в PodSecurityContext. Якщо встановлено як у SecurityContext, так і в PodSecurityContext, перевага надається значенню, вказаному в SecurityContext.

Операції


post Create

HTTP Запит

POST /api/v1/namespaces/{namespace}/pods

Параметри шляху

НазваТипОпис
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
prettystringЯкщо 'true', то вихідні дані форматуються у зручному для читання вигляді. Зазвичай 'false', якщо user-agent не вказує оглядач або командний інструмент для роботи з HTTP (curl та wget).
dryRunstringКоли параметр присутній, це вказує, що зміни не повинні зберігатися. Неправильна або нерозпізнана директива dryRun призведе до помилки та припинення обробки запиту. Дійсні значення:
  • All: всі етапи dry run будуть виконані
fieldManagerstringfieldManager є імʼям, повʼязаним з а́ктором або сутністю, яка вносить ці зміни. Значення повинно бути менше або дорівнювати 128 символам і містити лише друковані символи, як визначено в https://golang.org/pkg/unicode/#IsPrint.
fieldValidationstringfieldValidation інструктує сервер, як обробляти обʼєкти в запиті (POST/PUT/PATCH), що містять невідомі або дубльовані поля. Дійсні значення:
  • Ignore: Ігнорує всі невідомі поля, які без попередження видаляються з обʼєкта, а також ігнорує всі дублікати полів, крім останнього, на які натрапляє декодер. Це стандартна поведінка до v1.23.
  • Warn: Надсилає попередження через стандартний заголовок відповіді для кожного невідомого поля, яке видаляється з обʼєкта, і для кожного дубльованого поля, яке зустрічається. Запит все ще буде успішним, якщо немає інших помилок, і буде зберігатися лише останнє з будь-яких дубльованих полів. Це стандартна поведінка у v1.23+
  • Strict: У цьому випадку запит завершиться з помилкою BadRequest, якщо з обʼєкта будуть вилучені невідомі поля або якщо будуть виявлені дублікати полів. Помилка, що повертається сервером, міститиме всі виявлені невідомі та дубльовані поля.

Параметри тіла запиту

НазваТипОпис
bodyPod

Відповідь

СтатусОписВідповідь
200OKPod
201CreatedPod
202AcceptedPod

post Create Eviction

HTTP Запит

POST /api/v1/namespaces/{namespace}/pods/{name}/eviction

Параметри шляху

НазваТипОпис
namestringІмʼя Eviction
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
dryRunstringКоли параметр присутній, це вказує, що зміни не повинні зберігатися. Неправильна або нерозпізнана директива dryRun призведе до помилки та припинення обробки запиту. Дійсні значення:
  • All: всі етапи dry run будуть виконані
fieldManagerstringfieldManager є імʼям, повʼязаним з а́ктором або сутністю, яка вносить ці зміни. Значення повинно бути менше або дорівнювати 128 символам і містити лише друковані символи, як визначено в https://golang.org/pkg/unicode/#IsPrint.
fieldValidationstringfieldValidation інструктує сервер, як обробляти обʼєкти в запиті (POST/PUT/PATCH), що містять невідомі або дубльовані поля. Дійсні значення:
  • Ignore: Ігнорує всі невідомі поля, які без попередження видаляються з обʼєкта, а також ігнорує всі дублікати полів, крім останнього, на які натрапляє декодер. Це стандартна поведінка до v1.23.
  • Warn: Надсилає попередження через стандартний заголовок відповіді для кожного невідомого поля, яке видаляється з обʼєкта, і для кожного дубльованого поля, яке зустрічається. Запит все ще буде успішним, якщо немає інших помилок, і буде зберігатися лише останнє з будь-яких дубльованих полів. Це стандартна поведінка у v1.23+
  • Strict: У цьому випадку запит завершиться з помилкою BadRequest, якщо з обʼєкта будуть вилучені невідомі поля або якщо будуть виявлені дублікати полів. Помилка, що повертається сервером, міститиме всі виявлені невідомі та дубльовані поля.
prettystringЯкщо 'true', то вихідні дані форматуються у зручному для читання вигляді. Зазвичай 'false', якщо user-agent не вказує оглядач або командний інструмент для роботи з HTTP (curl та wget).

Параметри тіла запиту

НазваТипОпис
bodyEviction

Відповідь

СтатусОписВідповідь
200OKEviction
201CreatedEviction
202AcceptedEviction

patch Patch

HTTP Запит

PATCH /api/v1/namespaces/{namespace}/pods/{name}

Параметри шляху

НазваТипОпис
namestringІмʼя Podʼа
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
prettystringЯкщо 'true', то вихідні дані форматуються у зручному для читання вигляді. Зазвичай 'false', якщо user-agent не вказує оглядач або командний інструмент для роботи з HTTP (curl та wget).
dryRunstringКоли параметр присутній, це вказує, що зміни не повинні зберігатися. Неправильна або нерозпізнана директива dryRun призведе до помилки та припинення обробки запиту. Дійсні значення:
  • All: всі етапи dry run будуть виконані
fieldManagerstringfieldManager є імʼям, повʼязаним з а́ктором або сутністю, яка вносить ці зміни. Значення повинно бути менше або дорівнювати 128 символам і містити лише друковані символи, як визначено в https://golang.org/pkg/unicode/#IsPrint. Це поле обовʼязкове для запитів apply (application/apply-patch), але необовʼязкове для типів патчів, що не застосовуються (JsonPatch, MergePatch, StrategicMergePatch).
fieldValidationstringfieldValidation інструктує сервер, як обробляти обʼєкти в запиті (POST/PUT/PATCH), що містять невідомі або дубльовані поля. Дійсні значення:
  • Ignore: Ігнорує всі невідомі поля, які без попередження видаляються з обʼєкта, а також ігнорує всі дублікати полів, крім останнього, на які натрапляє декодер. Це стандартна поведінка до v1.23.
  • Warn: Надсилає попередження через стандартний заголовок відповіді для кожного невідомого поля, яке видаляється з обʼєкта, і для кожного дубльованого поля, яке зустрічається. Запит все ще буде успішним, якщо немає інших помилок, і буде зберігатися лише останнє з будь-яких дубльованих полів. Це стандартна поведінка у v1.23+
  • Strict: У цьому випадку запит завершиться з помилкою BadRequest, якщо з обʼєкта будуть вилучені невідомі поля або якщо будуть виявлені дублікати полів. Помилка, що повертається сервером, міститиме всі виявлені невідомі та дубльовані поля.
forcebooleanForce має на меті "примусово" застосовувати запити Apply. Це означає, що користувач повторно отримає конфліктні поля, що належать іншим користувачам. Прапорець Force повинен бути скасований для запитів, що не є патчами apply.

Параметри тіла запиту

НазваТипОпис
bodyPatch

Відповідь

СтатусОписВідповідь
200OKPod
201CreatedPod

put Replace

HTTP Запит

PUT /api/v1/namespaces/{namespace}/pods/{name}

Параметри шляху

НазваТипОпис
namestringІмʼя Podʼа
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
prettystringЯкщо 'true', то вихідні дані форматуються у зручному для читання вигляді. Зазвичай 'false', якщо user-agent не вказує оглядач або командний інструмент для роботи з HTTP (curl та wget).
dryRunstringКоли параметр присутній, це вказує, що зміни не повинні зберігатися. Неправильна або нерозпізнана директива dryRun призведе до помилки та припинення обробки запиту. Дійсні значення:
  • All: всі етапи dry run будуть виконані
fieldManagerstringfieldManager є імʼям, повʼязаним з а́ктором або сутністю, яка вносить ці зміни. Значення повинно бути менше або дорівнювати 128 символам і містити лише друковані символи, як визначено в https://golang.org/pkg/unicode/#IsPrint.
fieldValidationstringfieldValidation інструктує сервер, як обробляти обʼєкти в запиті (POST/PUT/PATCH), що містять невідомі або дубльовані поля. Дійсні значення:
  • Ignore: Ігнорує всі невідомі поля, які без попередження видаляються з обʼєкта, а також ігнорує всі дублікати полів, крім останнього, на які натрапляє декодер. Це стандартна поведінка до v1.23.
  • Warn: Надсилає попередження через стандартний заголовок відповіді для кожного невідомого поля, яке видаляється з обʼєкта, і для кожного дубльованого поля, яке зустрічається. Запит все ще буде успішним, якщо немає інших помилок, і буде зберігатися лише останнє з будь-яких дубльованих полів. Це стандартна поведінка у v1.23+
  • Strict: У цьому випадку запит завершиться з помилкою BadRequest, якщо з обʼєкта будуть вилучені невідомі поля або якщо будуть виявлені дублікати полів. Помилка, що повертається сервером, міститиме всі виявлені невідомі та дубльовані поля.

Параметри тіла запиту

НазваТипОпис
bodyPod

Відповідь

СтатусОписВідповідь
200OKPod
201CreatedPod

delete Delete

HTTP Запит

DELETE /api/v1/namespaces/{namespace}/pods/{name}

Параметри шляху

НазваТипОпис
namestringІмʼя Podʼа
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
prettystringЯкщо 'true', то вихідні дані форматуються у зручному для читання вигляді. Зазвичай 'false', якщо user-agent не вказує оглядач або командний інструмент для роботи з HTTP (curl та wget).
dryRunstringКоли параметр присутній, це вказує, що зміни не повинні зберігатися. Неправильна або нерозпізнана директива dryRun призведе до помилки та припинення обробки запиту. Дійсні значення:
  • All: всі етапи dry run будуть виконані
gracePeriodSecondsintegerЧасу у секундах перед видаленням обʼєкта. Значення повинно бути невідʼємним цілим числом. Значення нуль вказує на негайне видалення. Якщо це значення відсутнє, буде використано стандартний період очікування для зазначеного типу. Зазвичай використовується значення для конкретного обʼєкта, якщо не вказано. Нуль означає негайне видалення.
ignoreStoreReadErrorWithClusterBreakingPotentialbooleanЯкщо встановлено в true, це призведе до небезпечного видалення ресурсу у випадку, якщо нормальний процес видалення не вдасться через помилку пошкодженого обʼєкта. Ресурс вважається пошкодженим, якщо його не можна успішно отримати з відповідного сховища томущо: a) його дані не можна трансформувати, наприклад, помилка дешифрування, або b) не вдається декодувати в обʼєкт. ПРИМІТКА: небезпечне видалення ігнорує обмеження завершувача, пропускає перевірки передумов і видаляє обʼєкт зі сховища. ПОПЕРЕДЖЕННЯ: це може потенційно порушити роботу кластера, якщо робоче навантаження, повʼязане з ресурсом, що видаляється небезпечно, покладається на нормальний процес видалення. Використовуйте лише якщо ви ДІЙСНО знаєте, що робите. Стандартне значення — false, і користувач повинен явно погодитися на його використання.
orphanDependentsbooleanЗастаріло: будь ласка, використовуйте PropagationPolicy, це поле буде застарілим у версії 1.7. Чи повинні залежні обʼєкти залишатися покинутими. Якщо true/false, завершувач "orphan" буде доданий до/видалений з списку завершувачів обʼєкта. Можна встановити або це поле, або PropagationPolicy, але не обидва.
propagationPolicystringЧи і як буде виконано збір сміття. Можна встановити або це поле, або OrphanDependents, але не обидва. Стандартна політика визначається наявним завершувачем у metadata.finalizers та стандартною політикою для конкретного ресурсу. Допустимі значення: 'Orphan' — залишити залежні обʼєкти покинутими; 'Background' — дозволити збирачу сміття видаляти залежні обʼєкти у фоновому режимі; 'Foreground' — каскадна політика, яка видаляє всі залежні обʼєкти з показом всіх дій.

Параметри тіла запиту

НазваТипОпис
bodyDeleteOptions

Відповідь

СтатусОписВідповідь
200OKPod
202AcceptedPod

delete Delete Collection

HTTP Запит

DELETE /api/v1/namespaces/{namespace}/pods

Параметри шляху

НазваТипОпис
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
prettystringЯкщо 'true', то вихідні дані форматуються у зручному для читання вигляді. Зазвичай 'false', якщо user-agent не вказує оглядач або командний інструмент для роботи з HTTP (curl та wget).
continuestringОпція continue повинна бути встановлена при отриманні додаткових результатів від сервера. Оскільки це значення визначається сервером, клієнти можуть використовувати значення continue лише з попереднього результату запиту з ідентичними параметрами запиту (крім значення continue), і сервер може відхилити значення continue, яке він не розпізнає. Якщо вказане значення continue більше не дійсне через закінчення терміну дії (зазвичай пʼять-пʼятнадцять хвилин) або зміну конфігурації на сервері, сервер відповість помилкою 410 ResourceExpired разом з токеном continue. Якщо клієнту потрібен послідовний список, він повинен перезапустити свій список без поля continue. В іншому випадку клієнт може надіслати ще один запит списку з токеном, отриманим з помилкою 410, сервер відповість списком, починаючи з наступного ключа, але з останнього знімка, що не відповідає попереднім результатам списку — обʼєкти, які були створені, змінені або видалені після першого запиту списку, будуть включені у відповідь, якщо їх ключі йдуть після "наступного ключа". Це поле не підтримується, коли watch встановлено в true. Клієнти можуть почати спостереження з останнього значення resourceVersion, повернутого сервером, і не пропустити жодних змін.
dryRunstringКоли параметр присутній, це вказує, що зміни не повинні зберігатися. Неправильна або нерозпізнана директива dryRun призведе до помилки та припинення обробки запиту. Дійсні значення:
  • All: всі етапи dry run будуть виконані
fieldSelectorstringСелектор для обмеження списку обʼєктів, що повертаються, за їхніми полями. Зазвичай повертаються всі обʼєкти.
gracePeriodSecondsintegerЧасу у секундах перед видаленням обʼєкта. Значення повинно бути невідʼємним цілим числом. Значення нуль вказує на негайне видалення. Якщо це значення відсутнє, буде використано стандартний період очікування для зазначеного типу. Зазвичай використовується значення для конкретного обʼєкта, якщо не вказано. Нуль означає негайне видалення.
ignoreStoreReadErrorWithClusterBreakingPotentialbooleanЯкщо встановлено в true, це призведе до небезпечного видалення ресурсу у випадку, якщо нормальний процес видалення не вдасться через помилку пошкодженого обʼєкта. Ресурс вважається пошкодженим, якщо його не можна успішно отримати з відповідного сховища томущо: a) його дані не можна трансформувати, наприклад, помилка дешифрування, або b) не вдається декодувати в обʼєкт. ПРИМІТКА: небезпечне видалення ігнорує обмеження завершувача, пропускає перевірки передумов і видаляє обʼєкт зі сховища. ПОПЕРЕДЖЕННЯ: це може потенційно порушити роботу кластера, якщо робоче навантаження, повʼязане з ресурсом, що видаляється небезпечно, покладається на нормальний процес видалення. Використовуйте лише якщо ви ДІЙСНО знаєте, що робите. Стандартне значення — false, і користувач повинен явно погодитися на його використання.
labelSelectorstringСелектор для обмеження списку обʼєктів, що повертаються, за їхніми мітками. Зазвичай повертаються всі обʼєкти.
limitintegerlimit є максимальним числом відповідей, які потрібно повернути для виклику списку. Якщо існує більше елементів, сервер встановить поле continue у метаданих списку на значення, яке можна використовувати з тим самим початковим запитом для отримання наступного набору результатів. Встановлення обмеження може повернути менше, ніж запитана кількість елементів (до нуля елементів) у випадку, якщо всі запитані обʼєкти відфільтровані, і клієнти повинні використовувати лише наявність поля continue, щоб визначити, чи доступні додаткові результати. Сервери можуть вирішити не підтримувати аргумент limit і повернуть усі доступні результати. Якщо limit вказано, а поле continue порожнє, клієнти можуть припустити, що результатів більше немає. Це поле не підтримується, якщо watch дорівнює true. Сервер гарантує, що обʼєкти, повернені при використанні continue, будуть ідентичні до виконання одного виклику списку без обмеження — тобто жодні обʼєкти, створені, змінені або видалені після першого запиту, не будуть включені в будь-які наступні продовжені запити. Це іноді називають послідовним знімком, і забезпечує, що клієнт, який використовує limit для отримання менших частин дуже великого результату, може бути впевнений, що він бачить усі можливі обʼєкти. Якщо обʼєкти оновлюються під час отримання часткового списку, повертається версія обʼєкта, яка була присутня на момент обчислення першого результату списку.
orphanDependentsbooleanЗастаріло: будь ласка, використовуйте PropagationPolicy, це поле буде застарілим у версії 1.7. Чи повинні залежні обʼєкти залишатися покинутими. Якщо true/false, завершувач "orphan" буде доданий до/видалений з списку завершувачів обʼєкта. Можна встановити або це поле, або PropagationPolicy, але не обидва.
propagationPolicystringЧи і як буде виконано збір сміття. Можна встановити або це поле, або OrphanDependents, але не обидва. Стандартна політика визначається наявним завершувачем у metadata.finalizers та стандартною політикою для конкретного ресурсу. Допустимі значення: 'Orphan' — залишити залежні обʼєкти покинутими; 'Background' — дозволити збирачу сміття видаляти залежні обʼєкти у фоновому режимі; 'Foreground' — каскадна політика, яка видаляє всі залежні обʼєкти з показом всіх дій.
resourceVersionstringresourceVersion встановлює обмеження на те, з яких версій ресурсів може обслуговуватися запит. Див. https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions для деталей. Стандартне значення не встановлено
resourceVersionMatchstringresourceVersionMatch визначає, як resourceVersion застосовується до викликів списку. Рекомендується встановлювати resourceVersionMatch для викликів списку, де встановлено resourceVersion. Див. https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions для деталей. Стандартне значення не встановлено
sendInitialEventsbooleansendInitialEvents=true може бути встановлено разом з watch=true. У цьому випадку потік спостереження почнеться з синтетичних подій для відтворення поточного стану обʼєктів у колекції. Після надсилання всіх таких подій буде надіслано синтетичну подію "Bookmark". Закладка повідомить ResourceVersion (RV), що відповідає набору обʼєктів, і буде позначена анотацією "k8s.io/initial-events-end": "true". Після цього потік спостереження продовжиться як зазвичай, надсилаючи події спостереження, що відповідають змінам (після RV) для спостережуваних обʼєктів. Коли встановлено опцію sendInitialEvents, ми вимагаємо також встановлення опції resourceVersionMatch. Семантика запиту спостереження наступна:
  • resourceVersionMatch = NotOlderThan інтерпретується як «дані, що є принаймні такими ж новими, як зазначена resourceVersion», і подія bookmark надсилається, коли стан синхронізується з resourceVersion, яка є принаймні такою ж актуальною, як та, що вказана в ListOptions. Якщо resourceVersion не встановлено, це інтерпретується як «послідовне читання», і подія bookmark надсилається, коли стан синхронізується принаймні до моменту, коли почалася обробка запиту.
  • resourceVersionMatch, встановлений на будь-яке інше значення або не встановлений — повертається помилка Invalid. Стандартне значення true, якщо resourceVersion="" або resourceVersion="0" (з міркувань сумісності) і false в іншому випадку.
shardSelectorstringshardSelector обмежує список обʼєктів, що повертаються, за допомогою виразу вибору шардів на основі CEL. Формат використовує функцію shardRange() у поєднанні з || (логічне АБО) для вказівки одного або кількох діапазонів хешів:
shardRange(object.metadata.uid, '0x0', '0x8000000000000000')
shardRange(object.metadata.uid, '0x0', '0x8000000000000000') || shardRange(object.metadata.uid, '0x8000000000000000', '0x10000000000000000')
Шляхи полів використовують синтаксис CEL, що починається з обʼєкта (наприклад, "object.metadata.uid"), а не формат fieldSelector ("metadata.uid"). Наразі підтримуються такі шляхи:
  • object.metadata.uid
  • object.metadata.namespace
hexStart і hexEnd є рядковими літералами CEL у одинарних лапках з префіксом '0x', що визначають включну нижню і виключну верхню межі в 64-бітовому просторі хешів FNV-1a. Повний діапазон: [0x0, 0x10000000000000000), де виключна верхня межа дорівнює 2^64. Приклади:
  • 2-шардове розділення:
    шард 0: shardRange(object.metadata.uid, '0x0000000000000000', '0x8000000000000000')
    шард 1: shardRange(object.metadata.uid, '0x8000000000000000', '0x10000000000000000')
  • 4-шардове розділення:
    шард 0: shardRange(object.metadata.uid, '0x0000000000000000', '0x4000000000000000')
    шард 1: shardRange(object.metadata.uid, '0x4000000000000000', '0x8000000000000000')
    шард 2: shardRange(object.metadata.uid, '0x8000000000000000', '0xc000000000000000')
    шард 3: shardRange(object.metadata.uid, '0xc000000000000000', '0x10000000000000000')
Це альфа-поле і вимагає увімкнення функціональної можливості ShardedListAndWatch.
timeoutSecondsintegerЧас очікування для виклику list/watch. Це обмежує тривалість виклику, незалежно від будь-якої активності чи неактивності.

Параметри тіла запиту

НазваТипОпис
bodyDeleteOptions

Відповідь

СтатусОписВідповідь
200OKStatus

get Read

HTTP Запит

GET /api/v1/namespaces/{namespace}/pods/{name}

Параметри шляху

НазваТипОпис
namestringІмʼя Podʼа
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
prettystringЯкщо 'true', то вихідні дані форматуються у зручному для читання вигляді. Зазвичай 'false', якщо user-agent не вказує оглядач або командний інструмент для роботи з HTTP (curl та wget).

Відповідь

СтатусОписВідповідь
200OKPod

get List

HTTP Запит

GET /api/v1/namespaces/{namespace}/pods

Параметри шляху

НазваТипОпис
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
prettystringЯкщо 'true', то вихідні дані форматуються у зручному для читання вигляді. Зазвичай 'false', якщо user-agent не вказує оглядач або командний інструмент для роботи з HTTP (curl та wget).
allowWatchBookmarksbooleanallowWatchBookmarks запитує події спостереження з типом "BOOKMARK". Сервери, які не реалізують закладки, можуть ігнорувати цей прапорець, а закладки надсилаються на розсуд сервера. Клієнти не повинні припускати, що закладки повертаються через певний інтервал, і не можуть припускати, що сервер надішле будь-яку подію BOOKMARK під час сеансу. Якщо це не спостереження, це поле ігнорується.
continuestringОпція continue повинна бути встановлена при отриманні додаткових результатів від сервера. Оскільки це значення визначається сервером, клієнти можуть використовувати значення continue лише з попереднього результату запиту з ідентичними параметрами запиту (крім значення continue), і сервер може відхилити значення continue, яке він не розпізнає. Якщо вказане значення continue більше не дійсне через закінчення терміну дії (зазвичай пʼять-пʼятнадцять хвилин) або зміну конфігурації на сервері, сервер відповість помилкою 410 ResourceExpired разом з токеном continue. Якщо клієнту потрібен послідовний список, він повинен перезапустити свій список без поля continue. В іншому випадку клієнт може надіслати ще один запит списку з токеном, отриманим з помилкою 410, сервер відповість списком, починаючи з наступного ключа, але з останнього знімка, що не відповідає попереднім результатам списку — обʼєкти, які були створені, змінені або видалені після першого запиту списку, будуть включені у відповідь, якщо їх ключі йдуть після "наступного ключа". Це поле не підтримується, коли watch встановлено в true. Клієнти можуть почати спостереження з останнього значення resourceVersion, повернутого сервером, і не пропустити жодних змін.
fieldSelectorstringСелектор для обмеження списку обʼєктів, що повертаються, за їхніми полями. Зазвичай повертаються всі обʼєкти.
labelSelectorstringСелектор для обмеження списку обʼєктів, що повертаються, за їхніми мітками. Зазвичай повертаються всі обʼєкти.
limitintegerlimit є максимальним числом відповідей, які потрібно повернути для виклику списку. Якщо існує більше елементів, сервер встановить поле continue у метаданих списку на значення, яке можна використовувати з тим самим початковим запитом для отримання наступного набору результатів. Встановлення обмеження може повернути менше, ніж запитана кількість елементів (до нуля елементів) у випадку, якщо всі запитані обʼєкти відфільтровані, і клієнти повинні використовувати лише наявність поля continue, щоб визначити, чи доступні додаткові результати. Сервери можуть вирішити не підтримувати аргумент limit і повернуть усі доступні результати. Якщо limit вказано, а поле continue порожнє, клієнти можуть припустити, що результатів більше немає. Це поле не підтримується, якщо watch дорівнює true. Сервер гарантує, що обʼєкти, повернені при використанні continue, будуть ідентичні до виконання одного виклику списку без обмеження — тобто жодні обʼєкти, створені, змінені або видалені після першого запиту, не будуть включені в будь-які наступні продовжені запити. Це іноді називають послідовним знімком, і забезпечує, що клієнт, який використовує limit для отримання менших частин дуже великого результату, може бути впевнений, що він бачить усі можливі обʼєкти. Якщо обʼєкти оновлюються під час отримання часткового списку, повертається версія обʼєкта, яка була присутня на момент обчислення першого результату списку.
resourceVersionstringresourceVersion встановлює обмеження на те, з яких версій ресурсів може обслуговуватися запит. Див. https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions для деталей. Стандартне значення не встановлено
resourceVersionMatchstringresourceVersionMatch визначає, як resourceVersion застосовується до викликів списку. Рекомендується встановлювати resourceVersionMatch для викликів списку, де встановлено resourceVersion. Див. https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions для деталей. Стандартне значення не встановлено
sendInitialEventsbooleansendInitialEvents=true може бути встановлено разом з watch=true. У цьому випадку потік спостереження почнеться з синтетичних подій для відтворення поточного стану обʼєктів у колекції. Після надсилання всіх таких подій буде надіслано синтетичну подію "Bookmark". Закладка повідомить ResourceVersion (RV), що відповідає набору обʼєктів, і буде позначена анотацією "k8s.io/initial-events-end": "true". Після цього потік спостереження продовжиться як зазвичай, надсилаючи події спостереження, що відповідають змінам (після RV) для спостережуваних обʼєктів. Коли встановлено опцію sendInitialEvents, ми вимагаємо також встановлення опції resourceVersionMatch. Семантика запиту спостереження наступна:
  • resourceVersionMatch = NotOlderThan інтерпретується як «дані, що є принаймні такими ж новими, як зазначена resourceVersion», і подія bookmark надсилається, коли стан синхронізується з resourceVersion, яка є принаймні такою ж актуальною, як та, що вказана в ListOptions. Якщо resourceVersion не встановлено, це інтерпретується як «послідовне читання», і подія bookmark надсилається, коли стан синхронізується принаймні до моменту, коли почалася обробка запиту.
  • resourceVersionMatch, встановлений на будь-яке інше значення або не встановлений — повертається помилка Invalid. Стандартне значення true, якщо resourceVersion="" або resourceVersion="0" (з міркувань сумісності) і false в іншому випадку.
shardSelectorstringshardSelector обмежує список обʼєктів, що повертаються, за допомогою виразу вибору шардів на основі CEL. Формат використовує функцію shardRange() у поєднанні з || (логічне АБО) для вказівки одного або кількох діапазонів хешів:
shardRange(object.metadata.uid, '0x0', '0x8000000000000000')
shardRange(object.metadata.uid, '0x0', '0x8000000000000000') || shardRange(object.metadata.uid, '0x8000000000000000', '0x10000000000000000')
Шляхи полів використовують синтаксис CEL, що починається з обʼєкта (наприклад, "object.metadata.uid"), а не формат fieldSelector ("metadata.uid"). Наразі підтримуються такі шляхи:
  • object.metadata.uid
  • object.metadata.namespace
hexStart і hexEnd є рядковими літералами CEL у одинарних лапках з префіксом '0x', що визначають включну нижню і виключну верхню межі в 64-бітовому просторі хешів FNV-1a. Повний діапазон: [0x0, 0x10000000000000000), де виключна верхня межа дорівнює 2^64. Приклади:
  • 2-шардове розділення:
    шард 0: shardRange(object.metadata.uid, '0x0000000000000000', '0x8000000000000000')
    шард 1: shardRange(object.metadata.uid, '0x8000000000000000', '0x10000000000000000')
  • 4-шардове розділення:
    шард 0: shardRange(object.metadata.uid, '0x0000000000000000', '0x4000000000000000')
    шард 1: shardRange(object.metadata.uid, '0x4000000000000000', '0x8000000000000000')
    шард 2: shardRange(object.metadata.uid, '0x8000000000000000', '0xc000000000000000')
    шард 3: shardRange(object.metadata.uid, '0xc000000000000000', '0x10000000000000000')
Це альфа-поле і вимагає увімкнення функціональної можливості ShardedListAndWatch.
timeoutSecondsintegerЧас очікування для виклику list/watch. Це обмежує тривалість виклику, незалежно від будь-якої активності чи неактивності.
watchbooleanСпостерігати за змінами описаних ресурсів і повертати їх як потік сповіщень про додавання, оновлення та видалення. Вкажіть resourceVersion.

Відповідь

СтатусОписВідповідь
200OKPodList

get List All Namespaces

HTTP Запит

GET /api/v1/pods

Параметри запиту

НазваТипОпис
allowWatchBookmarksbooleanallowWatchBookmarks запитує події спостереження з типом "BOOKMARK". Сервери, які не реалізують закладки, можуть ігнорувати цей прапорець, а закладки надсилаються на розсуд сервера. Клієнти не повинні припускати, що закладки повертаються через певний інтервал, і не можуть припускати, що сервер надішле будь-яку подію BOOKMARK під час сеансу. Якщо це не спостереження, це поле ігнорується.
continuestringОпція continue повинна бути встановлена при отриманні додаткових результатів від сервера. Оскільки це значення визначається сервером, клієнти можуть використовувати значення continue лише з попереднього результату запиту з ідентичними параметрами запиту (крім значення continue), і сервер може відхилити значення continue, яке він не розпізнає. Якщо вказане значення continue більше не дійсне через закінчення терміну дії (зазвичай пʼять-пʼятнадцять хвилин) або зміну конфігурації на сервері, сервер відповість помилкою 410 ResourceExpired разом з токеном continue. Якщо клієнту потрібен послідовний список, він повинен перезапустити свій список без поля continue. В іншому випадку клієнт може надіслати ще один запит списку з токеном, отриманим з помилкою 410, сервер відповість списком, починаючи з наступного ключа, але з останнього знімка, що не відповідає попереднім результатам списку — обʼєкти, які були створені, змінені або видалені після першого запиту списку, будуть включені у відповідь, якщо їх ключі йдуть після "наступного ключа". Це поле не підтримується, коли watch встановлено в true. Клієнти можуть почати спостереження з останнього значення resourceVersion, повернутого сервером, і не пропустити жодних змін.
fieldSelectorstringСелектор для обмеження списку обʼєктів, що повертаються, за їхніми полями. Зазвичай повертаються всі обʼєкти.
labelSelectorstringСелектор для обмеження списку обʼєктів, що повертаються, за їхніми мітками. Зазвичай повертаються всі обʼєкти.
limitintegerlimit є максимальним числом відповідей, які потрібно повернути для виклику списку. Якщо існує більше елементів, сервер встановить поле continue у метаданих списку на значення, яке можна використовувати з тим самим початковим запитом для отримання наступного набору результатів. Встановлення обмеження може повернути менше, ніж запитана кількість елементів (до нуля елементів) у випадку, якщо всі запитані обʼєкти відфільтровані, і клієнти повинні використовувати лише наявність поля continue, щоб визначити, чи доступні додаткові результати. Сервери можуть вирішити не підтримувати аргумент limit і повернуть усі доступні результати. Якщо limit вказано, а поле continue порожнє, клієнти можуть припустити, що результатів більше немає. Це поле не підтримується, якщо watch дорівнює true. Сервер гарантує, що обʼєкти, повернені при використанні continue, будуть ідентичні до виконання одного виклику списку без обмеження — тобто жодні обʼєкти, створені, змінені або видалені після першого запиту, не будуть включені в будь-які наступні продовжені запити. Це іноді називають послідовним знімком, і забезпечує, що клієнт, який використовує limit для отримання менших частин дуже великого результату, може бути впевнений, що він бачить усі можливі обʼєкти. Якщо обʼєкти оновлюються під час отримання часткового списку, повертається версія обʼєкта, яка була присутня на момент обчислення першого результату списку.
prettystringЯкщо 'true', то вихідні дані форматуються у зручному для читання вигляді. Зазвичай 'false', якщо user-agent не вказує оглядач або командний інструмент для роботи з HTTP (curl та wget).
resourceVersionstringresourceVersion встановлює обмеження на те, з яких версій ресурсів може обслуговуватися запит. Див. https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions для деталей. Стандартне значення не встановлено
resourceVersionMatchstringresourceVersionMatch визначає, як resourceVersion застосовується до викликів списку. Рекомендується встановлювати resourceVersionMatch для викликів списку, де встановлено resourceVersion. Див. https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions для деталей. Стандартне значення не встановлено
sendInitialEventsbooleansendInitialEvents=true може бути встановлено разом з watch=true. У цьому випадку потік спостереження почнеться з синтетичних подій для відтворення поточного стану обʼєктів у колекції. Після надсилання всіх таких подій буде надіслано синтетичну подію "Bookmark". Закладка повідомить ResourceVersion (RV), що відповідає набору обʼєктів, і буде позначена анотацією "k8s.io/initial-events-end": "true". Після цього потік спостереження продовжиться як зазвичай, надсилаючи події спостереження, що відповідають змінам (після RV) для спостережуваних обʼєктів. Коли встановлено опцію sendInitialEvents, ми вимагаємо також встановлення опції resourceVersionMatch. Семантика запиту спостереження наступна:
  • resourceVersionMatch = NotOlderThan інтерпретується як «дані, що є принаймні такими ж новими, як зазначена resourceVersion», і подія bookmark надсилається, коли стан синхронізується з resourceVersion, яка є принаймні такою ж актуальною, як та, що вказана в ListOptions. Якщо resourceVersion не встановлено, це інтерпретується як «послідовне читання», і подія bookmark надсилається, коли стан синхронізується принаймні до моменту, коли почалася обробка запиту.
  • resourceVersionMatch, встановлений на будь-яке інше значення або не встановлений — повертається помилка Invalid. Стандартне значення true, якщо resourceVersion="" або resourceVersion="0" (з міркувань сумісності) і false в іншому випадку.
shardSelectorstringshardSelector обмежує список обʼєктів, що повертаються, за допомогою виразу вибору шардів на основі CEL. Формат використовує функцію shardRange() у поєднанні з || (логічне АБО) для вказівки одного або кількох діапазонів хешів:
shardRange(object.metadata.uid, '0x0', '0x8000000000000000')
shardRange(object.metadata.uid, '0x0', '0x8000000000000000') || shardRange(object.metadata.uid, '0x8000000000000000', '0x10000000000000000')
Шляхи полів використовують синтаксис CEL, що починається з обʼєкта (наприклад, "object.metadata.uid"), а не формат fieldSelector ("metadata.uid"). Наразі підтримуються такі шляхи:
  • object.metadata.uid
  • object.metadata.namespace
hexStart і hexEnd є рядковими літералами CEL у одинарних лапках з префіксом '0x', що визначають включну нижню і виключну верхню межі в 64-бітовому просторі хешів FNV-1a. Повний діапазон: [0x0, 0x10000000000000000), де виключна верхня межа дорівнює 2^64. Приклади:
  • 2-шардове розділення:
    шард 0: shardRange(object.metadata.uid, '0x0000000000000000', '0x8000000000000000')
    шард 1: shardRange(object.metadata.uid, '0x8000000000000000', '0x10000000000000000')
  • 4-шардове розділення:
    шард 0: shardRange(object.metadata.uid, '0x0000000000000000', '0x4000000000000000')
    шард 1: shardRange(object.metadata.uid, '0x4000000000000000', '0x8000000000000000')
    шард 2: shardRange(object.metadata.uid, '0x8000000000000000', '0xc000000000000000')
    шард 3: shardRange(object.metadata.uid, '0xc000000000000000', '0x10000000000000000')
Це альфа-поле і вимагає увімкнення функціональної можливості ShardedListAndWatch.
timeoutSecondsintegerЧас очікування для виклику list/watch. Це обмежує тривалість виклику, незалежно від будь-якої активності чи неактивності.
watchbooleanСпостерігати за змінами описаних ресурсів і повертати їх як потік сповіщень про додавання, оновлення та видалення. Вкажіть resourceVersion.

Відповідь

СтатусОписВідповідь
200OKPodList

get Watch

HTTP Запит

GET /api/v1/watch/namespaces/{namespace}/pods/{name}

Параметри шляху

НазваТипОпис
namestringІмʼя Podʼа
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
allowWatchBookmarksbooleanallowWatchBookmarks запитує події спостереження з типом "BOOKMARK". Сервери, які не реалізують закладки, можуть ігнорувати цей прапорець, а закладки надсилаються на розсуд сервера. Клієнти не повинні припускати, що закладки повертаються через певний інтервал, і не можуть припускати, що сервер надішле будь-яку подію BOOKMARK під час сеансу. Якщо це не спостереження, це поле ігнорується.
continuestringОпція continue повинна бути встановлена при отриманні додаткових результатів від сервера. Оскільки це значення визначається сервером, клієнти можуть використовувати значення continue лише з попереднього результату запиту з ідентичними параметрами запиту (крім значення continue), і сервер може відхилити значення continue, яке він не розпізнає. Якщо вказане значення continue більше не дійсне через закінчення терміну дії (зазвичай пʼять-пʼятнадцять хвилин) або зміну конфігурації на сервері, сервер відповість помилкою 410 ResourceExpired разом з токеном continue. Якщо клієнту потрібен послідовний список, він повинен перезапустити свій список без поля continue. В іншому випадку клієнт може надіслати ще один запит списку з токеном, отриманим з помилкою 410, сервер відповість списком, починаючи з наступного ключа, але з останнього знімка, що не відповідає попереднім результатам списку — обʼєкти, які були створені, змінені або видалені після першого запиту списку, будуть включені у відповідь, якщо їх ключі йдуть після "наступного ключа". Це поле не підтримується, коли watch встановлено в true. Клієнти можуть почати спостереження з останнього значення resourceVersion, повернутого сервером, і не пропустити жодних змін.
fieldSelectorstringСелектор для обмеження списку обʼєктів, що повертаються, за їхніми полями. Зазвичай повертаються всі обʼєкти.
labelSelectorstringСелектор для обмеження списку обʼєктів, що повертаються, за їхніми мітками. Зазвичай повертаються всі обʼєкти.
limitintegerlimit є максимальним числом відповідей, які потрібно повернути для виклику списку. Якщо існує більше елементів, сервер встановить поле continue у метаданих списку на значення, яке можна використовувати з тим самим початковим запитом для отримання наступного набору результатів. Встановлення обмеження може повернути менше, ніж запитана кількість елементів (до нуля елементів) у випадку, якщо всі запитані обʼєкти відфільтровані, і клієнти повинні використовувати лише наявність поля continue, щоб визначити, чи доступні додаткові результати. Сервери можуть вирішити не підтримувати аргумент limit і повернуть усі доступні результати. Якщо limit вказано, а поле continue порожнє, клієнти можуть припустити, що результатів більше немає. Це поле не підтримується, якщо watch дорівнює true. Сервер гарантує, що обʼєкти, повернені при використанні continue, будуть ідентичні до виконання одного виклику списку без обмеження — тобто жодні обʼєкти, створені, змінені або видалені після першого запиту, не будуть включені в будь-які наступні продовжені запити. Це іноді називають послідовним знімком, і забезпечує, що клієнт, який використовує limit для отримання менших частин дуже великого результату, може бути впевнений, що він бачить усі можливі обʼєкти. Якщо обʼєкти оновлюються під час отримання часткового списку, повертається версія обʼєкта, яка була присутня на момент обчислення першого результату списку.
prettystringЯкщо 'true', то вихідні дані форматуються у зручному для читання вигляді. Зазвичай 'false', якщо user-agent не вказує оглядач або командний інструмент для роботи з HTTP (curl та wget).
resourceVersionstringresourceVersion встановлює обмеження на те, з яких версій ресурсів може обслуговуватися запит. Див. https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions для деталей. Стандартне значення не встановлено
resourceVersionMatchstringresourceVersionMatch визначає, як resourceVersion застосовується до викликів списку. Рекомендується встановлювати resourceVersionMatch для викликів списку, де встановлено resourceVersion. Див. https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions для деталей. Стандартне значення не встановлено
sendInitialEventsbooleansendInitialEvents=true може бути встановлено разом з watch=true. У цьому випадку потік спостереження почнеться з синтетичних подій для відтворення поточного стану обʼєктів у колекції. Після надсилання всіх таких подій буде надіслано синтетичну подію "Bookmark". Закладка повідомить ResourceVersion (RV), що відповідає набору обʼєктів, і буде позначена анотацією "k8s.io/initial-events-end": "true". Після цього потік спостереження продовжиться як зазвичай, надсилаючи події спостереження, що відповідають змінам (після RV) для спостережуваних обʼєктів. Коли встановлено опцію sendInitialEvents, ми вимагаємо також встановлення опції resourceVersionMatch. Семантика запиту спостереження наступна:
  • resourceVersionMatch = NotOlderThan інтерпретується як «дані, що є принаймні такими ж новими, як зазначена resourceVersion», і подія bookmark надсилається, коли стан синхронізується з resourceVersion, яка є принаймні такою ж актуальною, як та, що вказана в ListOptions. Якщо resourceVersion не встановлено, це інтерпретується як «послідовне читання», і подія bookmark надсилається, коли стан синхронізується принаймні до моменту, коли почалася обробка запиту.
  • resourceVersionMatch, встановлений на будь-яке інше значення або не встановлений — повертається помилка Invalid. Стандартне значення true, якщо resourceVersion="" або resourceVersion="0" (з міркувань сумісності) і false в іншому випадку.
shardSelectorstringshardSelector обмежує список обʼєктів, що повертаються, за допомогою виразу вибору шардів на основі CEL. Формат використовує функцію shardRange() у поєднанні з || (логічне АБО) для вказівки одного або кількох діапазонів хешів:
shardRange(object.metadata.uid, '0x0', '0x8000000000000000')
shardRange(object.metadata.uid, '0x0', '0x8000000000000000') || shardRange(object.metadata.uid, '0x8000000000000000', '0x10000000000000000')
Шляхи полів використовують синтаксис CEL, що починається з обʼєкта (наприклад, "object.metadata.uid"), а не формат fieldSelector ("metadata.uid"). Наразі підтримуються такі шляхи:
  • object.metadata.uid
  • object.metadata.namespace
hexStart і hexEnd є рядковими літералами CEL у одинарних лапках з префіксом '0x', що визначають включну нижню і виключну верхню межі в 64-бітовому просторі хешів FNV-1a. Повний діапазон: [0x0, 0x10000000000000000), де виключна верхня межа дорівнює 2^64. Приклади:
  • 2-шардове розділення:
    шард 0: shardRange(object.metadata.uid, '0x0000000000000000', '0x8000000000000000')
    шард 1: shardRange(object.metadata.uid, '0x8000000000000000', '0x10000000000000000')
  • 4-шардове розділення:
    шард 0: shardRange(object.metadata.uid, '0x0000000000000000', '0x4000000000000000')
    шард 1: shardRange(object.metadata.uid, '0x4000000000000000', '0x8000000000000000')
    шард 2: shardRange(object.metadata.uid, '0x8000000000000000', '0xc000000000000000')
    шард 3: shardRange(object.metadata.uid, '0xc000000000000000', '0x10000000000000000')
Це альфа-поле і вимагає увімкнення функціональної можливості ShardedListAndWatch.
timeoutSecondsintegerЧас очікування для виклику list/watch. Це обмежує тривалість виклику, незалежно від будь-якої активності чи неактивності.
watchbooleanСпостерігати за змінами описаних ресурсів і повертати їх як потік сповіщень про додавання, оновлення та видалення. Вкажіть resourceVersion.

Відповідь

СтатусОписВідповідь
200OKWatchEvent

get Watch List

HTTP Запит

GET /api/v1/watch/namespaces/{namespace}/pods

Параметри шляху

НазваТипОпис
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
allowWatchBookmarksbooleanallowWatchBookmarks запитує події спостереження з типом "BOOKMARK". Сервери, які не реалізують закладки, можуть ігнорувати цей прапорець, а закладки надсилаються на розсуд сервера. Клієнти не повинні припускати, що закладки повертаються через певний інтервал, і не можуть припускати, що сервер надішле будь-яку подію BOOKMARK під час сеансу. Якщо це не спостереження, це поле ігнорується.
continuestringОпція continue повинна бути встановлена при отриманні додаткових результатів від сервера. Оскільки це значення визначається сервером, клієнти можуть використовувати значення continue лише з попереднього результату запиту з ідентичними параметрами запиту (крім значення continue), і сервер може відхилити значення continue, яке він не розпізнає. Якщо вказане значення continue більше не дійсне через закінчення терміну дії (зазвичай пʼять-пʼятнадцять хвилин) або зміну конфігурації на сервері, сервер відповість помилкою 410 ResourceExpired разом з токеном continue. Якщо клієнту потрібен послідовний список, він повинен перезапустити свій список без поля continue. В іншому випадку клієнт може надіслати ще один запит списку з токеном, отриманим з помилкою 410, сервер відповість списком, починаючи з наступного ключа, але з останнього знімка, що не відповідає попереднім результатам списку — обʼєкти, які були створені, змінені або видалені після першого запиту списку, будуть включені у відповідь, якщо їх ключі йдуть після "наступного ключа". Це поле не підтримується, коли watch встановлено в true. Клієнти можуть почати спостереження з останнього значення resourceVersion, повернутого сервером, і не пропустити жодних змін.
fieldSelectorstringСелектор для обмеження списку обʼєктів, що повертаються, за їхніми полями. Зазвичай повертаються всі обʼєкти.
labelSelectorstringСелектор для обмеження списку обʼєктів, що повертаються, за їхніми мітками. Зазвичай повертаються всі обʼєкти.
limitintegerlimit є максимальним числом відповідей, які потрібно повернути для виклику списку. Якщо існує більше елементів, сервер встановить поле continue у метаданих списку на значення, яке можна використовувати з тим самим початковим запитом для отримання наступного набору результатів. Встановлення обмеження може повернути менше, ніж запитана кількість елементів (до нуля елементів) у випадку, якщо всі запитані обʼєкти відфільтровані, і клієнти повинні використовувати лише наявність поля continue, щоб визначити, чи доступні додаткові результати. Сервери можуть вирішити не підтримувати аргумент limit і повернуть усі доступні результати. Якщо limit вказано, а поле continue порожнє, клієнти можуть припустити, що результатів більше немає. Це поле не підтримується, якщо watch дорівнює true. Сервер гарантує, що обʼєкти, повернені при використанні continue, будуть ідентичні до виконання одного виклику списку без обмеження — тобто жодні обʼєкти, створені, змінені або видалені після першого запиту, не будуть включені в будь-які наступні продовжені запити. Це іноді називають послідовним знімком, і забезпечує, що клієнт, який використовує limit для отримання менших частин дуже великого результату, може бути впевнений, що він бачить усі можливі обʼєкти. Якщо обʼєкти оновлюються під час отримання часткового списку, повертається версія обʼєкта, яка була присутня на момент обчислення першого результату списку.
prettystringЯкщо 'true', то вихідні дані форматуються у зручному для читання вигляді. Зазвичай 'false', якщо user-agent не вказує оглядач або командний інструмент для роботи з HTTP (curl та wget).
resourceVersionstringresourceVersion встановлює обмеження на те, з яких версій ресурсів може обслуговуватися запит. Див. https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions для деталей. Стандартне значення не встановлено
resourceVersionMatchstringresourceVersionMatch визначає, як resourceVersion застосовується до викликів списку. Рекомендується встановлювати resourceVersionMatch для викликів списку, де встановлено resourceVersion. Див. https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions для деталей. Стандартне значення не встановлено
sendInitialEventsbooleansendInitialEvents=true може бути встановлено разом з watch=true. У цьому випадку потік спостереження почнеться з синтетичних подій для відтворення поточного стану обʼєктів у колекції. Після надсилання всіх таких подій буде надіслано синтетичну подію "Bookmark". Закладка повідомить ResourceVersion (RV), що відповідає набору обʼєктів, і буде позначена анотацією "k8s.io/initial-events-end": "true". Після цього потік спостереження продовжиться як зазвичай, надсилаючи події спостереження, що відповідають змінам (після RV) для спостережуваних обʼєктів. Коли встановлено опцію sendInitialEvents, ми вимагаємо також встановлення опції resourceVersionMatch. Семантика запиту спостереження наступна:
  • resourceVersionMatch = NotOlderThan інтерпретується як «дані, що є принаймні такими ж новими, як зазначена resourceVersion», і подія bookmark надсилається, коли стан синхронізується з resourceVersion, яка є принаймні такою ж актуальною, як та, що вказана в ListOptions. Якщо resourceVersion не встановлено, це інтерпретується як «послідовне читання», і подія bookmark надсилається, коли стан синхронізується принаймні до моменту, коли почалася обробка запиту.
  • resourceVersionMatch, встановлений на будь-яке інше значення або не встановлений — повертається помилка Invalid. Стандартне значення true, якщо resourceVersion="" або resourceVersion="0" (з міркувань сумісності) і false в іншому випадку.
shardSelectorstringshardSelector обмежує список обʼєктів, що повертаються, за допомогою виразу вибору шардів на основі CEL. Формат використовує функцію shardRange() у поєднанні з || (логічне АБО) для вказівки одного або кількох діапазонів хешів:
shardRange(object.metadata.uid, '0x0', '0x8000000000000000')
shardRange(object.metadata.uid, '0x0', '0x8000000000000000') || shardRange(object.metadata.uid, '0x8000000000000000', '0x10000000000000000')
Шляхи полів використовують синтаксис CEL, що починається з обʼєкта (наприклад, "object.metadata.uid"), а не формат fieldSelector ("metadata.uid"). Наразі підтримуються такі шляхи:
  • object.metadata.uid
  • object.metadata.namespace
hexStart і hexEnd є рядковими літералами CEL у одинарних лапках з префіксом '0x', що визначають включну нижню і виключну верхню межі в 64-бітовому просторі хешів FNV-1a. Повний діапазон: [0x0, 0x10000000000000000), де виключна верхня межа дорівнює 2^64. Приклади:
  • 2-шардове розділення:
    шард 0: shardRange(object.metadata.uid, '0x0000000000000000', '0x8000000000000000')
    шард 1: shardRange(object.metadata.uid, '0x8000000000000000', '0x10000000000000000')
  • 4-шардове розділення:
    шард 0: shardRange(object.metadata.uid, '0x0000000000000000', '0x4000000000000000')
    шард 1: shardRange(object.metadata.uid, '0x4000000000000000', '0x8000000000000000')
    шард 2: shardRange(object.metadata.uid, '0x8000000000000000', '0xc000000000000000')
    шард 3: shardRange(object.metadata.uid, '0xc000000000000000', '0x10000000000000000')
Це альфа-поле і вимагає увімкнення функціональної можливості ShardedListAndWatch.
timeoutSecondsintegerЧас очікування для виклику list/watch. Це обмежує тривалість виклику, незалежно від будь-якої активності чи неактивності.
watchbooleanСпостерігати за змінами описаних ресурсів і повертати їх як потік сповіщень про додавання, оновлення та видалення. Вкажіть resourceVersion.

Відповідь

СтатусОписВідповідь
200OKWatchEvent

get Watch List All Namespaces

HTTP Запит

GET /api/v1/watch/pods

Параметри запиту

НазваТипОпис
allowWatchBookmarksbooleanallowWatchBookmarks запитує події спостереження з типом "BOOKMARK". Сервери, які не реалізують закладки, можуть ігнорувати цей прапорець, а закладки надсилаються на розсуд сервера. Клієнти не повинні припускати, що закладки повертаються через певний інтервал, і не можуть припускати, що сервер надішле будь-яку подію BOOKMARK під час сеансу. Якщо це не спостереження, це поле ігнорується.
continuestringОпція continue повинна бути встановлена при отриманні додаткових результатів від сервера. Оскільки це значення визначається сервером, клієнти можуть використовувати значення continue лише з попереднього результату запиту з ідентичними параметрами запиту (крім значення continue), і сервер може відхилити значення continue, яке він не розпізнає. Якщо вказане значення continue більше не дійсне через закінчення терміну дії (зазвичай пʼять-пʼятнадцять хвилин) або зміну конфігурації на сервері, сервер відповість помилкою 410 ResourceExpired разом з токеном continue. Якщо клієнту потрібен послідовний список, він повинен перезапустити свій список без поля continue. В іншому випадку клієнт може надіслати ще один запит списку з токеном, отриманим з помилкою 410, сервер відповість списком, починаючи з наступного ключа, але з останнього знімка, що не відповідає попереднім результатам списку — обʼєкти, які були створені, змінені або видалені після першого запиту списку, будуть включені у відповідь, якщо їх ключі йдуть після "наступного ключа". Це поле не підтримується, коли watch встановлено в true. Клієнти можуть почати спостереження з останнього значення resourceVersion, повернутого сервером, і не пропустити жодних змін.
fieldSelectorstringСелектор для обмеження списку обʼєктів, що повертаються, за їхніми полями. Зазвичай повертаються всі обʼєкти.
labelSelectorstringСелектор для обмеження списку обʼєктів, що повертаються, за їхніми мітками. Зазвичай повертаються всі обʼєкти.
limitintegerlimit є максимальним числом відповідей, які потрібно повернути для виклику списку. Якщо існує більше елементів, сервер встановить поле continue у метаданих списку на значення, яке можна використовувати з тим самим початковим запитом для отримання наступного набору результатів. Встановлення обмеження може повернути менше, ніж запитана кількість елементів (до нуля елементів) у випадку, якщо всі запитані обʼєкти відфільтровані, і клієнти повинні використовувати лише наявність поля continue, щоб визначити, чи доступні додаткові результати. Сервери можуть вирішити не підтримувати аргумент limit і повернуть усі доступні результати. Якщо limit вказано, а поле continue порожнє, клієнти можуть припустити, що результатів більше немає. Це поле не підтримується, якщо watch дорівнює true. Сервер гарантує, що обʼєкти, повернені при використанні continue, будуть ідентичні до виконання одного виклику списку без обмеження — тобто жодні обʼєкти, створені, змінені або видалені після першого запиту, не будуть включені в будь-які наступні продовжені запити. Це іноді називають послідовним знімком, і забезпечує, що клієнт, який використовує limit для отримання менших частин дуже великого результату, може бути впевнений, що він бачить усі можливі обʼєкти. Якщо обʼєкти оновлюються під час отримання часткового списку, повертається версія обʼєкта, яка була присутня на момент обчислення першого результату списку.
prettystringЯкщо 'true', то вихідні дані форматуються у зручному для читання вигляді. Зазвичай 'false', якщо user-agent не вказує оглядач або командний інструмент для роботи з HTTP (curl та wget).
resourceVersionstringresourceVersion встановлює обмеження на те, з яких версій ресурсів може обслуговуватися запит. Див. https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions для деталей. Стандартне значення не встановлено
resourceVersionMatchstringresourceVersionMatch визначає, як resourceVersion застосовується до викликів списку. Рекомендується встановлювати resourceVersionMatch для викликів списку, де встановлено resourceVersion. Див. https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions для деталей. Стандартне значення не встановлено
sendInitialEventsbooleansendInitialEvents=true може бути встановлено разом з watch=true. У цьому випадку потік спостереження почнеться з синтетичних подій для відтворення поточного стану обʼєктів у колекції. Після надсилання всіх таких подій буде надіслано синтетичну подію "Bookmark". Закладка повідомить ResourceVersion (RV), що відповідає набору обʼєктів, і буде позначена анотацією "k8s.io/initial-events-end": "true". Після цього потік спостереження продовжиться як зазвичай, надсилаючи події спостереження, що відповідають змінам (після RV) для спостережуваних обʼєктів. Коли встановлено опцію sendInitialEvents, ми вимагаємо також встановлення опції resourceVersionMatch. Семантика запиту спостереження наступна:
  • resourceVersionMatch = NotOlderThan інтерпретується як «дані, що є принаймні такими ж новими, як зазначена resourceVersion», і подія bookmark надсилається, коли стан синхронізується з resourceVersion, яка є принаймні такою ж актуальною, як та, що вказана в ListOptions. Якщо resourceVersion не встановлено, це інтерпретується як «послідовне читання», і подія bookmark надсилається, коли стан синхронізується принаймні до моменту, коли почалася обробка запиту.
  • resourceVersionMatch, встановлений на будь-яке інше значення або не встановлений — повертається помилка Invalid. Стандартне значення true, якщо resourceVersion="" або resourceVersion="0" (з міркувань сумісності) і false в іншому випадку.
shardSelectorstringshardSelector обмежує список обʼєктів, що повертаються, за допомогою виразу вибору шардів на основі CEL. Формат використовує функцію shardRange() у поєднанні з || (логічне АБО) для вказівки одного або кількох діапазонів хешів:
shardRange(object.metadata.uid, '0x0', '0x8000000000000000')
shardRange(object.metadata.uid, '0x0', '0x8000000000000000') || shardRange(object.metadata.uid, '0x8000000000000000', '0x10000000000000000')
Шляхи полів використовують синтаксис CEL, що починається з обʼєкта (наприклад, "object.metadata.uid"), а не формат fieldSelector ("metadata.uid"). Наразі підтримуються такі шляхи:
  • object.metadata.uid
  • object.metadata.namespace
hexStart і hexEnd є рядковими літералами CEL у одинарних лапках з префіксом '0x', що визначають включну нижню і виключну верхню межі в 64-бітовому просторі хешів FNV-1a. Повний діапазон: [0x0, 0x10000000000000000), де виключна верхня межа дорівнює 2^64. Приклади:
  • 2-шардове розділення:
    шард 0: shardRange(object.metadata.uid, '0x0000000000000000', '0x8000000000000000')
    шард 1: shardRange(object.metadata.uid, '0x8000000000000000', '0x10000000000000000')
  • 4-шардове розділення:
    шард 0: shardRange(object.metadata.uid, '0x0000000000000000', '0x4000000000000000')
    шард 1: shardRange(object.metadata.uid, '0x4000000000000000', '0x8000000000000000')
    шард 2: shardRange(object.metadata.uid, '0x8000000000000000', '0xc000000000000000')
    шард 3: shardRange(object.metadata.uid, '0xc000000000000000', '0x10000000000000000')
Це альфа-поле і вимагає увімкнення функціональної можливості ShardedListAndWatch.
timeoutSecondsintegerЧас очікування для виклику list/watch. Це обмежує тривалість виклику, незалежно від будь-якої активності чи неактивності.
watchbooleanСпостерігати за змінами описаних ресурсів і повертати їх як потік сповіщень про додавання, оновлення та видалення. Вкажіть resourceVersion.

Відповідь

СтатусОписВідповідь
200OKWatchEvent

patch Patch Status

HTTP Запит

PATCH /api/v1/namespaces/{namespace}/pods/{name}/status

Параметри шляху

НазваТипОпис
namestringІмʼя Podʼа
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
prettystringЯкщо 'true', то вихідні дані форматуються у зручному для читання вигляді. Зазвичай 'false', якщо user-agent не вказує оглядач або командний інструмент для роботи з HTTP (curl та wget).
dryRunstringКоли параметр присутній, це вказує, що зміни не повинні зберігатися. Неправильна або нерозпізнана директива dryRun призведе до помилки та припинення обробки запиту. Дійсні значення:
  • All: всі етапи dry run будуть виконані
fieldManagerstringfieldManager є імʼям, повʼязаним з а́ктором або сутністю, яка вносить ці зміни. Значення повинно бути менше або дорівнювати 128 символам і містити лише друковані символи, як визначено в https://golang.org/pkg/unicode/#IsPrint. Це поле обовʼязкове для запитів apply (application/apply-patch), але необовʼязкове для типів патчів, що не застосовуються (JsonPatch, MergePatch, StrategicMergePatch).
fieldValidationstringfieldValidation інструктує сервер, як обробляти обʼєкти в запиті (POST/PUT/PATCH), що містять невідомі або дубльовані поля. Дійсні значення:
  • Ignore: Ігнорує всі невідомі поля, які без попередження видаляються з обʼєкта, а також ігнорує всі дублікати полів, крім останнього, на які натрапляє декодер. Це стандартна поведінка до v1.23.
  • Warn: Надсилає попередження через стандартний заголовок відповіді для кожного невідомого поля, яке видаляється з обʼєкта, і для кожного дубльованого поля, яке зустрічається. Запит все ще буде успішним, якщо немає інших помилок, і буде зберігатися лише останнє з будь-яких дубльованих полів. Це стандартна поведінка у v1.23+
  • Strict: У цьому випадку запит завершиться з помилкою BadRequest, якщо з обʼєкта будуть вилучені невідомі поля або якщо будуть виявлені дублікати полів. Помилка, що повертається сервером, міститиме всі виявлені невідомі та дубльовані поля.
forcebooleanForce має на меті "примусово" застосовувати запити Apply. Це означає, що користувач повторно отримає конфліктні поля, що належать іншим користувачам. Прапорець Force повинен бути скасований для запитів, що не є патчами apply.

Параметри тіла запиту

НазваТипОпис
bodyPatch

Відповідь

СтатусОписВідповідь
200OKPod
201CreatedPod

get Read Status

HTTP Запит

GET /api/v1/namespaces/{namespace}/pods/{name}/status

Параметри шляху

НазваТипОпис
namestringІмʼя Podʼа
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
prettystringЯкщо 'true', то вихідні дані форматуються у зручному для читання вигляді. Зазвичай 'false', якщо user-agent не вказує оглядач або командний інструмент для роботи з HTTP (curl та wget).

Відповідь

СтатусОписВідповідь
200OKPod

put Replace Status

HTTP Запит

PUT /api/v1/namespaces/{namespace}/pods/{name}/status

Параметри шляху

НазваТипОпис
namestringІмʼя Podʼа
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
prettystringЯкщо 'true', то вихідні дані форматуються у зручному для читання вигляді. Зазвичай 'false', якщо user-agent не вказує оглядач або командний інструмент для роботи з HTTP (curl та wget).
dryRunstringКоли параметр присутній, це вказує, що зміни не повинні зберігатися. Неправильна або нерозпізнана директива dryRun призведе до помилки та припинення обробки запиту. Дійсні значення:
  • All: всі етапи dry run будуть виконані
fieldManagerstringfieldManager є імʼям, повʼязаним з а́ктором або сутністю, яка вносить ці зміни. Значення повинно бути менше або дорівнювати 128 символам і містити лише друковані символи, як визначено в https://golang.org/pkg/unicode/#IsPrint.
fieldValidationstringfieldValidation інструктує сервер, як обробляти обʼєкти в запиті (POST/PUT/PATCH), що містять невідомі або дубльовані поля. Дійсні значення:
  • Ignore: Ігнорує всі невідомі поля, які без попередження видаляються з обʼєкта, а також ігнорує всі дублікати полів, крім останнього, на які натрапляє декодер. Це стандартна поведінка до v1.23.
  • Warn: Надсилає попередження через стандартний заголовок відповіді для кожного невідомого поля, яке видаляється з обʼєкта, і для кожного дубльованого поля, яке зустрічається. Запит все ще буде успішним, якщо немає інших помилок, і буде зберігатися лише останнє з будь-яких дубльованих полів. Це стандартна поведінка у v1.23+
  • Strict: У цьому випадку запит завершиться з помилкою BadRequest, якщо з обʼєкта будуть вилучені невідомі поля або якщо будуть виявлені дублікати полів. Помилка, що повертається сервером, міститиме всі виявлені невідомі та дубльовані поля.

Параметри тіла запиту

НазваТипОпис
bodyPod

Відповідь

СтатусОписВідповідь
200OKPod
201CreatedPod

get Read Resize

HTTP Запит

GET /api/v1/namespaces/{namespace}/pods/{name}/resize

Параметри шляху

НазваТипОпис
namestringІмʼя Podʼа
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
prettystringЯкщо 'true', то вихідні дані форматуються у зручному для читання вигляді. Зазвичай 'false', якщо user-agent не вказує оглядач або командний інструмент для роботи з HTTP (curl та wget).

Відповідь

СтатусОписВідповідь
200OKPod

patch Patch Resize

HTTP Запит

PATCH /api/v1/namespaces/{namespace}/pods/{name}/resize

Параметри шляху

НазваТипОпис
namestringІмʼя Podʼа
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
prettystringЯкщо 'true', то вихідні дані форматуються у зручному для читання вигляді. Зазвичай 'false', якщо user-agent не вказує оглядач або командний інструмент для роботи з HTTP (curl та wget).
dryRunstringКоли параметр присутній, це вказує, що зміни не повинні зберігатися. Неправильна або нерозпізнана директива dryRun призведе до помилки та припинення обробки запиту. Дійсні значення:
  • All: всі етапи dry run будуть виконані
fieldManagerstringfieldManager є імʼям, повʼязаним з а́ктором або сутністю, яка вносить ці зміни. Значення повинно бути менше або дорівнювати 128 символам і містити лише друковані символи, як визначено в https://golang.org/pkg/unicode/#IsPrint. Це поле обовʼязкове для запитів apply (application/apply-patch), але необовʼязкове для типів патчів, що не застосовуються (JsonPatch, MergePatch, StrategicMergePatch).
fieldValidationstringfieldValidation інструктує сервер, як обробляти обʼєкти в запиті (POST/PUT/PATCH), що містять невідомі або дубльовані поля. Дійсні значення:
  • Ignore: Ігнорує всі невідомі поля, які без попередження видаляються з обʼєкта, а також ігнорує всі дублікати полів, крім останнього, на які натрапляє декодер. Це стандартна поведінка до v1.23.
  • Warn: Надсилає попередження через стандартний заголовок відповіді для кожного невідомого поля, яке видаляється з обʼєкта, і для кожного дубльованого поля, яке зустрічається. Запит все ще буде успішним, якщо немає інших помилок, і буде зберігатися лише останнє з будь-яких дубльованих полів. Це стандартна поведінка у v1.23+
  • Strict: У цьому випадку запит завершиться з помилкою BadRequest, якщо з обʼєкта будуть вилучені невідомі поля або якщо будуть виявлені дублікати полів. Помилка, що повертається сервером, міститиме всі виявлені невідомі та дубльовані поля.
forcebooleanForce має на меті "примусово" застосовувати запити Apply. Це означає, що користувач повторно отримає конфліктні поля, що належать іншим користувачам. Прапорець Force повинен бути скасований для запитів, що не є патчами apply.

Параметри тіла запиту

НазваТипОпис
bodyPatch

Відповідь

СтатусОписВідповідь
200OKPod
201CreatedPod

put Replace Resize

HTTP Запит

PUT /api/v1/namespaces/{namespace}/pods/{name}/resize

Параметри шляху

НазваТипОпис
namestringІмʼя Podʼа
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
prettystringЯкщо 'true', то вихідні дані форматуються у зручному для читання вигляді. Зазвичай 'false', якщо user-agent не вказує оглядач або командний інструмент для роботи з HTTP (curl та wget).
dryRunstringКоли параметр присутній, це вказує, що зміни не повинні зберігатися. Неправильна або нерозпізнана директива dryRun призведе до помилки та припинення обробки запиту. Дійсні значення:
  • All: всі етапи dry run будуть виконані
fieldManagerstringfieldManager є імʼям, повʼязаним з а́ктором або сутністю, яка вносить ці зміни. Значення повинно бути менше або дорівнювати 128 символам і містити лише друковані символи, як визначено в https://golang.org/pkg/unicode/#IsPrint.
fieldValidationstringfieldValidation інструктує сервер, як обробляти обʼєкти в запиті (POST/PUT/PATCH), що містять невідомі або дубльовані поля. Дійсні значення:
  • Ignore: Ігнорує всі невідомі поля, які без попередження видаляються з обʼєкта, а також ігнорує всі дублікати полів, крім останнього, на які натрапляє декодер. Це стандартна поведінка до v1.23.
  • Warn: Надсилає попередження через стандартний заголовок відповіді для кожного невідомого поля, яке видаляється з обʼєкта, і для кожного дубльованого поля, яке зустрічається. Запит все ще буде успішним, якщо немає інших помилок, і буде зберігатися лише останнє з будь-яких дубльованих полів. Це стандартна поведінка у v1.23+
  • Strict: У цьому випадку запит завершиться з помилкою BadRequest, якщо з обʼєкта будуть вилучені невідомі поля або якщо будуть виявлені дублікати полів. Помилка, що повертається сервером, міститиме всі виявлені невідомі та дубльовані поля.

Параметри тіла запиту

НазваТипОпис
bodyPod

Відповідь

СтатусОписВідповідь
200OKPod
201CreatedPod

patch Patch EphemeralContainers

HTTP Запит

PATCH /api/v1/namespaces/{namespace}/pods/{name}/ephemeralcontainers

Параметри шляху

НазваТипОпис
namestringІмʼя Podʼа
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
prettystringЯкщо 'true', то вихідні дані форматуються у зручному для читання вигляді. Зазвичай 'false', якщо user-agent не вказує оглядач або командний інструмент для роботи з HTTP (curl та wget).
dryRunstringКоли параметр присутній, це вказує, що зміни не повинні зберігатися. Неправильна або нерозпізнана директива dryRun призведе до помилки та припинення обробки запиту. Дійсні значення:
  • All: всі етапи dry run будуть виконані
fieldManagerstringfieldManager є імʼям, повʼязаним з а́ктором або сутністю, яка вносить ці зміни. Значення повинно бути менше або дорівнювати 128 символам і містити лише друковані символи, як визначено в https://golang.org/pkg/unicode/#IsPrint. Це поле обовʼязкове для запитів apply (application/apply-patch), але необовʼязкове для типів патчів, що не застосовуються (JsonPatch, MergePatch, StrategicMergePatch).
fieldValidationstringfieldValidation інструктує сервер, як обробляти обʼєкти в запиті (POST/PUT/PATCH), що містять невідомі або дубльовані поля. Дійсні значення:
  • Ignore: Ігнорує всі невідомі поля, які без попередження видаляються з обʼєкта, а також ігнорує всі дублікати полів, крім останнього, на які натрапляє декодер. Це стандартна поведінка до v1.23.
  • Warn: Надсилає попередження через стандартний заголовок відповіді для кожного невідомого поля, яке видаляється з обʼєкта, і для кожного дубльованого поля, яке зустрічається. Запит все ще буде успішним, якщо немає інших помилок, і буде зберігатися лише останнє з будь-яких дубльованих полів. Це стандартна поведінка у v1.23+
  • Strict: У цьому випадку запит завершиться з помилкою BadRequest, якщо з обʼєкта будуть вилучені невідомі поля або якщо будуть виявлені дублікати полів. Помилка, що повертається сервером, міститиме всі виявлені невідомі та дубльовані поля.
forcebooleanForce має на меті "примусово" застосовувати запити Apply. Це означає, що користувач повторно отримає конфліктні поля, що належать іншим користувачам. Прапорець Force повинен бути скасований для запитів, що не є патчами apply.

Параметри тіла запиту

НазваТипОпис
bodyPatch

Відповідь

СтатусОписВідповідь
200OKPod
201CreatedPod

get Read EphemeralContainers

HTTP Запит

GET /api/v1/namespaces/{namespace}/pods/{name}/ephemeralcontainers

Параметри шляху

НазваТипОпис
namestringІмʼя Podʼа
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
prettystringЯкщо 'true', то вихідні дані форматуються у зручному для читання вигляді. Зазвичай 'false', якщо user-agent не вказує оглядач або командний інструмент для роботи з HTTP (curl та wget).

Відповідь

СтатусОписВідповідь
200OKPod

put Replace EphemeralContainers

HTTP Запит

PUT /api/v1/namespaces/{namespace}/pods/{name}/ephemeralcontainers

Параметри шляху

НазваТипОпис
namestringІмʼя Podʼа
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
prettystringЯкщо 'true', то вихідні дані форматуються у зручному для читання вигляді. Зазвичай 'false', якщо user-agent не вказує оглядач або командний інструмент для роботи з HTTP (curl та wget).
dryRunstringКоли параметр присутній, це вказує, що зміни не повинні зберігатися. Неправильна або нерозпізнана директива dryRun призведе до помилки та припинення обробки запиту. Дійсні значення:
  • All: всі етапи dry run будуть виконані
fieldManagerstringfieldManager є імʼям, повʼязаним з а́ктором або сутністю, яка вносить ці зміни. Значення повинно бути менше або дорівнювати 128 символам і містити лише друковані символи, як визначено в https://golang.org/pkg/unicode/#IsPrint.
fieldValidationstringfieldValidation інструктує сервер, як обробляти обʼєкти в запиті (POST/PUT/PATCH), що містять невідомі або дубльовані поля. Дійсні значення:
  • Ignore: Ігнорує всі невідомі поля, які без попередження видаляються з обʼєкта, а також ігнорує всі дублікати полів, крім останнього, на які натрапляє декодер. Це стандартна поведінка до v1.23.
  • Warn: Надсилає попередження через стандартний заголовок відповіді для кожного невідомого поля, яке видаляється з обʼєкта, і для кожного дубльованого поля, яке зустрічається. Запит все ще буде успішним, якщо немає інших помилок, і буде зберігатися лише останнє з будь-яких дубльованих полів. Це стандартна поведінка у v1.23+
  • Strict: У цьому випадку запит завершиться з помилкою BadRequest, якщо з обʼєкта будуть вилучені невідомі поля або якщо будуть виявлені дублікати полів. Помилка, що повертається сервером, міститиме всі виявлені невідомі та дубльовані поля.

Параметри тіла запиту

НазваТипОпис
bodyPod

Відповідь

СтатусОписВідповідь
200OKPod
201CreatedPod

post Create Connect Portforward

HTTP Запит

POST /api/v1/namespaces/{namespace}/pods/{name}/portforward

Параметри шляху

НазваТипОпис
namestringІмʼя PodPortForwardOptions
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
portsintegerСписок портів для переадресації. Необхідний при використанні WebSockets

Відповідь

СтатусОписВідповідь
200OKstring

post Create Connect Proxy

HTTP Запит

POST /api/v1/namespaces/{namespace}/pods/{name}/proxy

Параметри шляху

НазваТипОпис
namestringІмʼя PodProxyOptions
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
pathstringPath є URL-адресою, яку слід використовувати для поточного проксі-запиту до пода.

Відповідь

СтатусОписВідповідь
200OKstring

post Create Connect Proxy Path

HTTP Запит

POST /api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}

Параметри шляху

НазваТипОпис
namestringІмʼя PodProxyOptions
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів
pathstringшлях до ресурсу

Параметри запиту

НазваТипОпис
pathstringPath є URL-адресою, яку слід використовувати для поточного проксі-запиту до пода.

Відповідь

СтатусОписВідповідь
200OKstring

delete Delete Connect Proxy

HTTP Запит

DELETE /api/v1/namespaces/{namespace}/pods/{name}/proxy

Параметри шляху

НазваТипОпис
namestringІмʼя PodProxyOptions
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
pathstringPath є URL-адресою, яку слід використовувати для поточного проксі-запиту до пода.

Відповідь

СтатусОписВідповідь
200OKstring

delete Delete Connect Proxy Path

HTTP Запит

DELETE /api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}

Параметри шляху

НазваТипОпис
namestringІмʼя PodProxyOptions
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів
pathstringшлях до ресурсу

Параметри запиту

НазваТипОпис
pathstringPath є URL-адресою, яку слід використовувати для поточного проксі-запиту до пода.

Відповідь

СтатусОписВідповідь
200OKstring

get Get Connect Portforward

HTTP Запит

GET /api/v1/namespaces/{namespace}/pods/{name}/portforward

Параметри шляху

НазваТипОпис
namestringІмʼя PodPortForwardOptions
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
portsintegerСписок портів для переадресації. Необхідний при використанні WebSockets

Відповідь

СтатусОписВідповідь
200OKstring

get Get Connect Proxy

HTTP Запит

GET /api/v1/namespaces/{namespace}/pods/{name}/proxy

Параметри шляху

НазваТипОпис
namestringІмʼя PodProxyOptions
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
pathstringPath є URL-адресою, яку слід використовувати для поточного проксі-запиту до пода.

Відповідь

СтатусОписВідповідь
200OKstring

get Get Connect Proxy Path

HTTP Запит

GET /api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}

Параметри шляху

НазваТипОпис
namestringІмʼя PodProxyOptions
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів
pathstringшлях до ресурсу

Параметри запиту

НазваТипОпис
pathstringPath є URL-адресою, яку слід використовувати для поточного проксі-запиту до пода.

Відповідь

СтатусОписВідповідь
200OKstring

head Head Connect Proxy

HTTP Запит

HEAD /api/v1/namespaces/{namespace}/pods/{name}/proxy

Параметри шляху

НазваТипОпис
namestringІмʼя PodProxyOptions
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
pathstringPath є URL-адресою, яку слід використовувати для поточного проксі-запиту до пода.

Відповідь

СтатусОписВідповідь
200OKstring

head Head Connect Proxy Path

HTTP Запит

HEAD /api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}

Параметри шляху

НазваТипОпис
namestringІмʼя PodProxyOptions
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів
pathstringшлях до ресурсу

Параметри запиту

НазваТипОпис
pathstringPath є URL-адресою, яку слід використовувати для поточного проксі-запиту до пода.

Відповідь

СтатусОписВідповідь
200OKstring

put Replace Connect Proxy

HTTP Запит

PUT /api/v1/namespaces/{namespace}/pods/{name}/proxy

Параметри шляху

НазваТипОпис
namestringІмʼя PodProxyOptions
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
pathstringPath є URL-адресою, яку слід використовувати для поточного проксі-запиту до пода.

Відповідь

СтатусОписВідповідь
200OKstring

put Replace Connect Proxy Path

HTTP Запит

PUT /api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}

Параметри шляху

НазваТипОпис
namestringІмʼя PodProxyOptions
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів
pathstringшлях до ресурсу

Параметри запиту

НазваТипОпис
pathstringPath є URL-адресою, яку слід використовувати для поточного проксі-запиту до пода.

Відповідь

СтатусОписВідповідь
200OKstring

get Read Log

HTTP Запит

GET /api/v1/namespaces/{namespace}/pods/{name}/log

Параметри шляху

НазваТипОпис
namestringІмʼя Podʼа
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
containerstringКонтейнер, для якого потрібно передавати журнали. Зазвичай використовується лише один контейнер, якщо в поді є лише один контейнер.
followbooleanСлідкувати за потоком журналів пода. Стандартно — false.
insecureSkipTLSVerifyBackendbooleaninsecureSkipTLSVerifyBackend вказує, що apiserver не повинен підтверджувати дійсність сертифіката обслуговуючого сервера бекенду, до якого він підключається. Це зробить HTTPS-зʼєднання між apiserver і бекендом небезпечним. Це означає, що apiserver не може перевірити, чи дані журналу, які він отримує, походять від реального kubelet. Якщо kubelet налаштований на перевірку облікових даних TLS apiserver, це не означає, що зʼєднання з реальним kubelet вразливе до атаки "людина посередині" (наприклад, зловмисник не зможе перехопити фактичні дані журналу, що надходять від реального kubelet).
limitBytesintegerЯкщо встановлено, кількість байтів для читання з сервера перед завершенням виводу журналу. Це може не відобразити повну останню лінію журналу і може повернути трохи більше або трохи менше, ніж вказаний ліміт.
prettystringЯкщо 'true', то вихідні дані форматуються у зручному для читання вигляді. Зазвичай 'false', якщо user-agent не вказує оглядач або командний інструмент для роботи з HTTP (curl та wget).
previousbooleanПовернути журнали попередньо завершеного контейнера. Стандартно — false.
sinceSecondsintegerВідносний час у секундах до поточного часу, з якого потрібно показувати журнали. Якщо це значення передує часу запуску пода, будуть повернуті лише журнали з моменту запуску пода. Якщо це значення знаходиться в майбутньому, журнали не будуть повернуті. Можна вказати лише один з параметрів sinceSeconds або sinceTime.
streamstringВкажіть, який потік журналів контейнера потрібно повернути клієнту. Допустимі значення: "All", "Stdout" та "Stderr". Якщо не вказано, використовується "All", і обидва потоки stdout та stderr повертаються змішаними. Зверніть увагу, що коли вказано "TailLines", "Stream" може бути встановлено лише в nil або "All".
tailLinesintegerЯкщо встановлено, кількість рядків з кінця журналів для відображення. Якщо не вказано, журнали відображаються з моменту створення контейнера або з параметрів sinceSeconds або sinceTime. Зверніть увагу, що коли вказано "TailLines", "Stream" може бути встановлено лише в nil або "All".
timestampsbooleanЯкщо true, додає мітку часу у форматі RFC3339 або RFC3339Nano на початку кожного рядка виводу журналу. Стандартно — false.

Відповідь

СтатусОписВідповідь
200OKstring

get Get Connect Exec

HTTP Запит

GET /api/v1/namespaces/{namespace}/pods/{name}/exec

Параметри шляху

НазваТипОпис
namestringІмʼя PodExecOptions
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
commandstringCommand є віддаленою командою, яку потрібно виконати. Масив argv. Не виконується в оболонці.
containerstringКонтейнер, у якому буде виконано команду. Стандартно використовується лише один контейнер, якщо в поді є лише один контейнер.
stderrbooleanПереспрямовує стандартний потік помилок пода для цього виклику.
stdinbooleanПереспрямовує стандартний потік введення пода для цього виклику. Стандартно — false.
stdoutbooleanПереспрямовує стандартний потік виводу пода для цього виклику. Стандартно — false.
ttybooleanTTY якщо true вказує, що для виклику exec буде виділено tty. Стандартно — false.

Відповідь

СтатусОписВідповідь
200OKstring

post Create Connect Exec

HTTP Запит

POST /api/v1/namespaces/{namespace}/pods/{name}/exec

Параметри шляху

НазваТипОпис
namestringІмʼя PodExecOptions
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
commandstringCommand є віддаленою командою, яку потрібно виконати. Масив argv. Не виконується в оболонці.
containerstringКонтейнер, у якому буде виконано команду. Стандартно використовується лише один контейнер, якщо в поді є лише один контейнер.
stderrbooleanПереспрямовує стандартний потік помилок пода для цього виклику.
stdinbooleanПереспрямовує стандартний потік введення пода для цього виклику. Стандартно — false.
stdoutbooleanПереспрямовує стандартний потік виводу пода для цього виклику. Стандартно — false.
ttybooleanTTY якщо true вказує, що для виклику exec буде виділено tty. Стандартно — false.

Відповідь

СтатусОписВідповідь
200OKstring

get Get Connect Attach

HTTP Запит

GET /api/v1/namespaces/{namespace}/pods/{name}/attach

Параметри шляху

НазваТипОпис
namestringІмʼя PodAttachOptions
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
containerstringThe Контейнер, у якому буде виконано команду. Стандартно використовується лише один контейнер, якщо в поді є лише один контейнер.
stderrbooleanЯкщо Stderr має значення true, це означає, що стандартний вивід помилок (stderr) має бути перенаправлений під час виклику attach. Стандартне значення — true.
stdinbooleanЯкщо Stdin має значення true, для цього виклику виконується перенаправлення потоку стандартного вводу пода. Стандартне значення — false.
stdoutbooleanЯкщо Stdout має значення true, це означає, що stdout має бути перенаправлено для виклику attach. Стандартне значення — true.
ttybooleanПараметр TTY, якщо має значення true, вказує, що для виклику attach буде виділено термінал TTY. Цей параметр передається через середовище виконання контейнера, тому термінал TTY виділяється на робочому вузлі саме цим середовищем. Стандартне значення — false.

Відповідь

СтатусОписВідповідь
200OKstring

post Create Connect Attach

HTTP Запит

POST /api/v1/namespaces/{namespace}/pods/{name}/attach

Параметри шляху

НазваТипОпис
namestringІмʼя PodAttachOptions
namespacestringНазва обʼєкта та область авторизації, наприклад для команд і проєктів

Параметри запиту

НазваТипОпис
containerstringThe Контейнер, у якому буде виконано команду. Стандартно використовується лише один контейнер, якщо в поді є лише один контейнер.
stderrbooleanЯкщо Stderr має значення true, це означає, що стандартний вивід помилок (stderr) має бути перенаправлений під час виклику attach. Стандартне значення — true.
stdinbooleanЯкщо Stdin має значення true, для цього виклику виконується перенаправлення потоку стандартного вводу пода. Стандартне значення — false.
stdoutbooleanЯкщо Stdout має значення true, це означає, що stdout має бути перенаправлено для виклику attach. Стандартне значення — true.
ttybooleanПараметр TTY, якщо має значення true, вказує, що для виклику attach буде виділено термінал TTY. Цей параметр передається через середовище виконання контейнера, тому термінал TTY виділяється на робочому вузлі саме цим середовищем. Стандартне значення — false.

Відповідь

СтатусОписВідповідь
200OKstring
Востаннє змінено June 10, 2026 at 8:00 PM PST: [uk] Ukrainian translation (all-in-one) (4e8fe0f729)