Исходный код вики J02.08. Pods (Поды)

Редактировал(а) Ирина Сафонова 07.01.2024, 13:52

Последние авторы
1 {{box cssClass="floatinginfobox" title="**Содержание**"}}
2 {{toc/}}
3 {{/box}}
4
5 (% data-xwiki-non-generated-content="java.util.List" %)
6 (((
7 = Назначение подов =
8 )))
9
10 ----
11
12 **Поды** **(Pods)** — набор из одного и более[[ контейнеров>>https://wiki.dfcloud.ru/bin/view/Glossary/%D0%9A%D0%BE%D0%BD%D1%82%D0%B5%D0%B9%D0%BD%D0%B5%D1%80||style="background-color: rgb(255, 255, 255);"]] для совместного развертывания на [[ноде>>https://wiki.dfcloud.ru/bin/view/Glossary/%D0%9D%D0%BE%D0%B4%D0%B0||style="background-color: rgb(255, 255, 255);"]] в **Cloud Managed Kubernetes**. **Cloud Managed Kubernetes** предоставляет пользователям параметры для настройки конфигураций рабочей нагрузки. Примеры параметров:
13
14 * проверки работоспособности,
15 * [[переменные среды>>https://wiki.dfcloud.ru/bin/view/Glossary/%D0%9F%D0%B5%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D0%B0%D1%8F%20%D1%81%D1%80%D0%B5%D0%B4%D1%8B||style="background-color: rgb(255, 255, 255);"]],
16 * команды запуска.
17
18 Под указывается при создании [[развертываний>>https://wiki.dfcloud.ru/bin/view/%D0%9A%D0%BE%D0%BD%D1%82%D0%B5%D0%B9%D0%BD%D0%B5%D1%80%D0%BD%D0%B0%D1%8F%20%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0/Cloud%20Managed%20Kubernetes/2.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F/01.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F%20%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8F/L.%20%D0%A3%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5%20%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%BE%D0%BC/L02.%20%D0%A0%D0%B0%D0%B1%D0%BE%D1%87%D0%B8%D0%B5%20%D0%BD%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B8%20%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9/L02.01.%20%D0%A0%D0%B0%D0%B7%D0%B2%D0%BE%D1%80%D0%B0%D1%87%D0%B8%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%20%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9/||style="background-color: rgb(255, 255, 255);"]], [[наборов состояния>>https://wiki.dfcloud.ru/bin/view/%D0%9A%D0%BE%D0%BD%D1%82%D0%B5%D0%B9%D0%BD%D0%B5%D1%80%D0%BD%D0%B0%D1%8F%20%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0/Cloud%20Managed%20Kubernetes/2.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F/01.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F%20%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8F/L.%20%D0%A3%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5%20%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%BE%D0%BC/L02.%20%D0%A0%D0%B0%D0%B1%D0%BE%D1%87%D0%B8%D0%B5%20%D0%BD%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B8%20%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9/L02.02.%20StatefulSets/||style="background-color: rgb(255, 255, 255);"]] или [[набора даемона>>https://wiki.dfcloud.ru/bin/view/%D0%9A%D0%BE%D0%BD%D1%82%D0%B5%D0%B9%D0%BD%D0%B5%D1%80%D0%BD%D0%B0%D1%8F%20%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0/Cloud%20Managed%20Kubernetes/2.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F/01.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F%20%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8F/L.%20%D0%A3%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5%20%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%BE%D0%BC/L02.%20%D0%A0%D0%B0%D0%B1%D0%BE%D1%87%D0%B8%D0%B5%20%D0%BD%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B8%20%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9/L02.03.%20Kubernetes%20DaemonSets%20%D0%B2%20KubeSphere/||style="background-color: rgb(255, 255, 255);"]].
19
20 = Настройки подов =
21
22 ----
23
24 == Реплики подов ==
25
26 Установите количество реплицированных подов, щелкнув [[image:https://www.kubesphere.io/images/docs/v3.3/project-user-guide/application-workloads/container-image-settings/plus-icon.png||alt="icon" height="20" width="21"]] или [[image:https://www.kubesphere.io/images/docs/v3.3/project-user-guide/application-workloads/container-image-settings/minus-icon.png||alt="icon" height="20" width="20"]] в поле {{code language="none"}}.spec.replicas{{/code}} [[файла манифеста>>https://wiki.dfcloud.ru/bin/view/Glossary/%D0%9C%D0%B0%D0%BD%D0%B8%D1%84%D0%B5%D1%81%D1%82%20%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F]]. Эта опция недоступна для набора даемона.
27
28 Если  создаете развертывания в многокластерном проекте, выберите режим планирования реплик в разделе **Replica Scheduling Mode**:
29
30 * **Specify Replicas**: выберите [[кластеры>>https://wiki.dfcloud.ru/bin/view/Glossary/%D0%9A%D0%BB%D0%B0%D1%81%D1%82%D0%B5%D1%80]] и установите количество реплик подов в каждом кластере
31 * **Specify Weights**: выберите кластеры, установите общее количество реплик подов в **Total Replicas** и укажите емкость для каждого кластера. Реплики пропорционально распределяются по кластерам в соответствии с указанной емкостью. Чтобы отредактировать емкость после создания развертывания, перейдите на страницу сведений, щелкните имя развертывания и измените емкость в разделе **Weights** вкладки **Resource Status**
32
33 Если создаете наборы состояния в проекте с несколькими кластерами, выберите кластеры и установите количество реплик подов в каждом кластере раздела **Replicas Pod**.
34
35 == Добавление контейнера ==
36
37 Нажмите кнопку **Add Container**, чтобы добавить контейнер.
38
39 === Поле поиска изображений ===
40
41 При необходимости щелкните кнопку[[image:https://www.kubesphere.io/images/docs/v3.3/project-user-guide/application-workloads/container-image-settings/cube-icon.png||alt="icon"]], чтобы выбрать изображение из списка или ввести имя изображения для его поиска. **Cloud Managed Kubernetes** предоставляет образы [[Docker Hub>>https://hub.docker.com/]] и вличный репозиторий образов. Если хотите использовать свой репозиторий, создайте [[секретную переменную>>https://wiki.dfcloud.ru/bin/view/%D0%9A%D0%BE%D0%BD%D1%82%D0%B5%D0%B9%D0%BD%D0%B5%D1%80%D0%BD%D0%B0%D1%8F%20%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0/Cloud%20Managed%20Kubernetes/2.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F/01.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F%20%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8F/L.%20%D0%A3%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5%20%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%BE%D0%BC/L04.%20%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0%20%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%B0/L04.01.%20%D0%A1%D0%B5%D0%BA%D1%80%D0%B5%D1%82%D0%BD%D1%8B%D0%B5%20%D0%BF%D0%B5%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5/]] реестра образов раздела **Secrets** в **Configuration.**
42
43 {{warning}}
44 Нажмите **Enter** на клавиатуре после введения имени изображения в поле поиска.
45 {{/warning}}
46
47 === Тег изображения ===
48
49 При необходимости укажите тег, например, {{code language="none"}}imagename:tag{{/code}}. Если тег не указан, по умолчанию устанавливается последняя версия контейнера.
50
51 === Имя контейнера ===
52
53 **Cloud Managed Kubernetes** автоматически создает имя контейнера, на которое указывает {{code language="none"}}.spec.containers.name{{/code}}.
54
55 === Тип контейнера ===
56
57 Выбор **Init container **означает, что [[контейнер инициализации>>https://kubernetes.io/docs/concepts/workloads/pods/init-containers/?spm=a2c4g.11186623.2.19.16704b3e9qHXPb]] создается для рабочей нагрузки.
58
59 === Задание ресурсов ===
60
61 Зарезервированная контейнером квота включает ресурсы [[CPU>>https://wiki.dfcloud.ru/bin/view/Glossary/CPU]] и памяти. Резервирование означает, что контейнер монополизирует ресурс, не позволяя другим [[сервисам>>https://wiki.dfcloud.ru/bin/view/%D0%9A%D0%BE%D0%BD%D1%82%D0%B5%D0%B9%D0%BD%D0%B5%D1%80%D0%BD%D0%B0%D1%8F%20%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0/Cloud%20Managed%20Kubernetes/2.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F/01.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F%20%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8F/L.%20%D0%A3%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5%20%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%BE%D0%BC/L02.%20%D0%A0%D0%B0%D0%B1%D0%BE%D1%87%D0%B8%D0%B5%20%D0%BD%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B8%20%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9/L02.04.%20%D0%A1%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D1%8B/]] или процессам конкурировать за ресурсы из-за нехватки ресурсов.
62
63 * Запрос CPU обозначается как {{code language="none"}}.spec.containers[].resources.requests.cpu{{/code}} в файле манифеста. Запрос CPU может быть превышен.
64 * Запрос памяти обозначается как {{code language="none"}}.spec.containers[].resources.requests.memory{{/code}} в файле манифеста. Запрос может быть превышен, но контейнер может очиститься, когда памяти ноды недостаточно.
65
66 === Лимит ресурсов ===
67
68 При необходимости укажите верхний лимит ресурсов, которые может использовать приложение, включая CPU, память и [[GPU>>https://wiki.dfcloud.ru/bin/view/Glossary/vGPU]]. Лимиты предотвращают чрезмерную занятость ресурсов.
69
70 * Ограничение CPU указывается с помощью {{code language="none"}}.spec.containers[].resources.limits.cpu{{/code}} в файле манифеста. Лимит CPU может быть превышен на непродолжительное время, и контейнер не будет остановлен.
71 * Ограничение памяти указывается с помощью {{code language="none"}}.spec.containers[].resources.limits.memory{{/code}} в файле манифеста. Лимит памяти не может быть превышен. В случае превышения контейнер может быть остановлен или назначен на другой компьютер с достаточными ресурсами.
72
73 {{info}}
74 Ресурс CPU измеряется в единицах CPU или в ядрах в KubeSphere, а ресурс памяти — в байтах или MiB.
75 {{/info}}
76
77 Для установки **GPU Type **выберите его из раскрывающегося списка (по умолчанию {{code language="none"}}nvidia.com/gpu{{/code}}). **GPU Limit** по умолчанию **не установлено**.
78
79 === Настройки портов ===
80
81 Установите протокол доступа для контейнера и информацию о порте. Нажмите кнопку **Use Default Ports**, чтобы использовать настройку по умолчанию.
82
83 == Политика извлечения изображений ==
84
85 **Политика извлечения изображений** — политика, при которой [[kubelet>>https://wiki.dfcloud.ru/bin/view/Glossary/kubelet]] пытается извлечь указанное вами изображение. Значение параметра указывается полем {{code language="none"}}imagePullPolicy{{/code}} в файле манифеста. В дашборде при необходимости выберите один из следующих трех вариантов раскрывающегося списка:
86
87 * **Use Local Image First**. Образ подтягивается только в том случае, если он не существует локально.
88 * **Pull Image Always**. Изображение извлекается всякий раз, когда запускается под.
89 * **Use Local Image Only**. Изображение не извлекается независимо от факта существования.
90
91 {{info}}
92 * Значение по умолчанию — **Use Local Image First**, но для изображений с тегом {{code language="none"}}:latest{{/code}} по умолчанию используется значение **Pull Image Always**.
93 * **Docker** проверит значение по умолчанию при извлечении образа. Если MD5 не менялся, то **Cloud Managed Kubernetes** не подтянет это значение.
94 * Не используйте тега {{code language="none"}}:latest{{/code}} в продуктивной среде. Последнее изображение может быть автоматически извлечено с помощью тега {{code language="none"}}:latest{{/code}} в среде разработки.
95 {{/info}}
96
97 === Проверка состояния приложения ===
98
99 **Cloud Managed Kubernetes **предлагает три типа проверок:
100
101 * **Liveness Check **(Поддержка проверки работоспособности). Проверка используется, чтобы узнать, запущен ли контейнер. На это указывает тег {{code language="none"}}livenessProbe{{/code}}
102 * **Readiness Check **(Проверка готовности). Проверка используется, чтобы узнать, готов ли контейнер обслуживать запросы. На это указывает тег {{code language="none"}}readinessProbe{{/code}}
103 * **Startup Check **(Проверка запуска). Проверка используется, чтобы узнать, запущено ли приложение-контейнер. На это указывает тег {{code language="none"}}startupProbe{{/code}}
104
105 Поддержка проверки работоспособности, проверка готовности и проверка запуска включают в себя следующие конфигурации:
106
107 * [[HTTP-запрос>>https://wiki.dfcloud.ru/bin/view/%D0%9A%D0%BE%D0%BD%D1%82%D0%B5%D0%B9%D0%BD%D0%B5%D1%80%D0%BD%D0%B0%D1%8F%20%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0/Cloud%20Managed%20Kubernetes/2.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F/01.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F%20%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8F/L.%20%D0%A3%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5%20%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%BE%D0%BC/L02.%20%D0%A0%D0%B0%D0%B1%D0%BE%D1%87%D0%B8%D0%B5%20%D0%BD%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B8%20%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9/L02.08.%20%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B8%20%D0%BF%D0%BE%D0%B4%D0%BE%D0%B2/#HHTTP43743043F44043E441]],
108 * [[Порт TCP>>https://wiki.dfcloud.ru/bin/view/%D0%9A%D0%BE%D0%BD%D1%82%D0%B5%D0%B9%D0%BD%D0%B5%D1%80%D0%BD%D0%B0%D1%8F%20%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0/Cloud%20Managed%20Kubernetes/2.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F/01.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F%20%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8F/L.%20%D0%A3%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5%20%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%BE%D0%BC/L02.%20%D0%A0%D0%B0%D0%B1%D0%BE%D1%87%D0%B8%D0%B5%20%D0%BD%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B8%20%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9/L02.08.%20%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B8%20%D0%BF%D0%BE%D0%B4%D0%BE%D0%B2/#H41F43E440442TCP]],
109 * [[Команды>>https://wiki.dfcloud.ru/bin/view/%D0%9A%D0%BE%D0%BD%D1%82%D0%B5%D0%B9%D0%BD%D0%B5%D1%80%D0%BD%D0%B0%D1%8F%20%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0/Cloud%20Managed%20Kubernetes/2.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F/01.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F%20%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8F/L.%20%D0%A3%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5%20%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%BE%D0%BC/L02.%20%D0%A0%D0%B0%D0%B1%D0%BE%D1%87%D0%B8%D0%B5%20%D0%BD%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B8%20%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9/L02.08.%20%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B8%20%D0%BF%D0%BE%D0%B4%D0%BE%D0%B2/#H41A43E43C43043D43444B]].
110
111 ==== HTTP-запрос ====
112
113 Выполните HTTP-запрос Get для указанного порта и пути по IP-адресу контейнера. Если код состояния ответа больше или равен 200 и меньше 400, диагностика считается успешной. Поддерживаемые параметры включают в себя:
114
115 (% class="table-bordered" style="width:1034px" %)
116 (% class="active" %)|(% style="width:191px" %)**Параметр**|(% style="width:838px" %)**Комментарий**
117 |(% style="width:191px" %)**Path** (Путь)|(% style="width:838px" %)(((
118 (% id="cke_bm_51246S" style="display:none" %) (%%)TTP или HTTPS, указанный {{code language="none"}}scheme{{/code}}. Путь доступа к HTTP-серверу, указанный {{code language="none"}}path{{/code}}. Порт доступа или имя порта раскрывается контейнером. Номер порта должен быть в диапазоне от 1 до 65535. Значение определяется портом.
119 )))
120 |(% style="width:191px" %)**Initial Delay** (Начальная задержка в секундах)|(% style="width:838px" %)(((
121 (% id="cke_bm_56260S" style="display:none" %) (%%)Количество секунд после запуска контейнера до инициирования проверки работоспособности, указанное в {{code language="none"}}initialDelaySeconds{{/code}}. По умолчанию равно 0.
122 )))
123 |(% style="width:191px" %)**Check Interval** (Частота проверки в секундах)|(% style="width:838px" %)(((
124 (% id="cke_bm_60486S" style="display:none" %) (%%)Указывается в параметре {{code language="none"}}periodSeconds{{/code}}. По умолчанию 10. Минимальное значение 1.
125 )))
126 |(% style="width:191px" %)**Timeouts** (Тайм-аут в секундах)|(% style="width:838px" %)(((
127 Количество секунд, по истечении которых зонд истечет. Количество указывается параметром {{code language="none"}}timeoutSeconds{{/code}}. По умолчанию равно 1. Минимальное значение 1.
128 )))
129 |(% style="width:191px" %)**Success Threshold** (Порог успеха)|(% style="width:838px" %)(((
130 Минимальное количество последовательных успешных попыток проверки, которое считается успешным после неудачи. Задается параметром  {{code language="none"}}SuccessThreshold{{/code}}. По умолчанию равен 1. Параметр должен быть равен 1 для поддержки работоспобности и запуска.
131 )))
132 |(% style="width:191px" %)**Failure Threshold **(Порог сбоя)|(% style="width:838px" %)(((
133 Минимальное количество последовательных сбоев, при которых зонд считается сбойным после успешного завершения. Задается параметром {{code language="none"}}failureThreshold{{/code}}. По умолчанию 3. Минимальное значение 1.
134 )))
135
136 ==== Порт TCP ====
137
138 Выполните проверку TCP на указанном порту на IP-адресе контейнера. Если порт открыт, проверка успешна. Поддерживаемые параметры включают в себя:
139
140 (% class="table-bordered" style="width:1038px" %)
141 (% class="active" %)|(% style="width:191px" %)**Параметр**|(% style="width:842px" %)**Комментарий**
142 |(% style="width:191px" %)**Порт**|(% style="width:842px" %)(((
143 Порт доступа или имя порта предоставляется контейнером. Определяемый портом номер должен быть в диапазоне от 1 до 65535.
144 )))
145 |(% style="width:191px" %)**Initial Delay** (Начальная задержка в секундах)|(% style="width:842px" %)(((
146 Количество секунд после запуска контейнера до инициирования проверки работоспособности, указанное в {{code language="none"}}initialDelaySeconds{{/code}}. По умолчанию равен 0.
147 )))
148 |(% style="width:191px" %)**Check Interval** (Частота проверки в секундах)|(% style="width:842px" %)(((
149 Частота указывается в параметре {{code language="none"}}periodSeconds{{/code}}. По умолчанию 10. Минимальное значение 1.
150 )))
151 |(% style="width:191px" %)**Timeouts** (Тайм-аут в секундах)|(% style="width:842px" %)(((
152 Количество секунд, по истечении которых зонд истечет. Количество указывается параметром {{code language="none"}}timeoutSeconds{{/code}}. По умолчанию  равен 1. Минимальное значение 1.
153 )))
154 |(% style="width:191px" %)**Success Threshold** (Порог успеха)|(% style="width:842px" %)(((
155 Минимальное количество последовательных успешных попыток проверки, которое считается успешным после неудачи. Задается параметром  {{code language="none"}}SuccessThreshold{{/code}}. По умолчанию равен 1 и должен быть равен 1 для поддержки работоспобности и запуска.
156 )))
157 |(% style="width:191px" %)**Failure Threshold **(Порог сбоя)|(% style="width:842px" %)(((
158 Минимальное количество последовательных сбоев, при которых зонд считается сбойным после успешного завершения. Задается параметром {{code language="none"}}failureThreshold{{/code}}. По умолчанию равен 3. Минимальное значение 1.
159 )))
160
161 (% style="color:inherit; font-family:inherit; font-size:20px" %)Команды
162
163 Выполняется [[команда>>https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes]] в контейнере. Если при ее завершении код возврата равен 0, проверка успешна. Поддерживаемые параметры включают в себя:
164
165 (% class="table-bordered" style="width:1040px" %)
166 (% class="active" %)|(% style="width:191px" %)**Параметр**|(% style="width:845px" %)**Комментарий**
167 |(% style="width:191px" %)**Порт**|(% style="width:845px" %)(((
168 Команда обнаружения, используемая для определения работоспособности контейнера. Указывается в параметре  {{code language="none"}}exec.command{{/code}}.
169 )))
170 |(% style="width:191px" %)**Initial Delay** (Начальная задержка в секундах)|(% style="width:845px" %)(((
171 Количество секунд после запуска контейнера до инициирования проверки работоспособности, указанное в {{code language="none"}}initialDelaySeconds{{/code}}. По умолчанию равно 0.
172 )))
173 |(% style="width:191px" %)**Check Interval** (Частота проверки в секундах)|(% style="width:845px" %)(((
174 Указывается в параметре {{code language="none"}}periodSeconds{{/code}}. По умолчанию равен 10. Минимальное значение 1.
175 )))
176 |(% style="width:191px" %)**Timeouts** (Тайм-аут в секундах)|(% style="width:845px" %)(((
177 Количество указывается параметром {{code language="none"}}timeoutSeconds{{/code}}. По умолчанию  равен 1. Минимальное значение 1.
178 )))
179 |(% style="width:191px" %)**Success Threshold** (Порог успеха)|(% style="width:845px" %)(((
180 Минимальное количество последовательных успешных попыток проверки, которое считается успешным после неудачи. Задается параметром  {{code language="none"}}SuccessThreshold{{/code}}. По умолчанию параметр равен 1 и должен быть равен 1 для поддержки работоспособности и запуска. Минимальное значение равно 1.
181 )))
182 |(% style="width:191px" %)**Failure Threshold **(Порог сбоя)|(% style="width:845px" %)(((
183 Минимальное количество последовательных сбоев, при которых зонд считается сбойным после успешного завершения. Задается параметром {{code language="none"}}failureThreshold{{/code}}. По умолчанию 3. Минимальное значение 1.
184 )))
185
186 === Команда запуска ===
187
188 По умолчанию контейнер [[запускает команду>>https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/]] изображения:
189
190 * Команда относится к полю {{code language="none"}}command{{/code}} контейнеров в файле манифеста.
191 * Параметры относятся к полю {{code language="none"}}args{{/code}} контейнеров в файле манифеста.
192
193 === Переменные среды ===
194
195 Настройте переменные среды для подов в виде пар ключ-значение.
196
197 * **name**: Имя переменной окружения. Задается {{code language="none"}}env.name{{/code}}.
198 * **value**: значение переменной, на которую ссылаются. Задается {{code language="none"}}env.value{{/code}}.
199
200 Нажмите **From configmap** или **From secret**, чтобы использовать существующий [[**ConfigMap**>>https://wiki.dfcloud.ru/bin/view/%D0%9A%D0%BE%D0%BD%D1%82%D0%B5%D0%B9%D0%BD%D0%B5%D1%80%D0%BD%D0%B0%D1%8F%20%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0/Cloud%20Managed%20Kubernetes/2.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F/01.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F%20%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8F/L.%20%D0%A3%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5%20%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%BE%D0%BC/L04.%20%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0%20%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%B0/L04.03.%20%D0%9A%D0%B0%D1%80%D1%82%D1%8B%20%D0%BA%D0%BE%D0%BD%D1%84%D0%B8%D0%B3%D1%83%D1%80%D0%B0%D1%86%D0%B8%D0%B8/]] или [[секретную переменную>>https://wiki.dfcloud.ru/bin/view/%D0%9A%D0%BE%D0%BD%D1%82%D0%B5%D0%B9%D0%BD%D0%B5%D1%80%D0%BD%D0%B0%D1%8F%20%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0/Cloud%20Managed%20Kubernetes/2.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F/01.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F%20%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8F/L.%20%D0%A3%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5%20%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%BE%D0%BC/L04.%20%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0%20%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%B0/L04.01.%20%D0%A1%D0%B5%D0%BA%D1%80%D0%B5%D1%82%D0%BD%D1%8B%D0%B5%20%D0%BF%D0%B5%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5/]].
201
202 === Среда безопасности контейнера ===
203
204 Среда безопасности определяет [[привилегии и параметры управления доступом>>https://kubernetes.io/docs/concepts/security/pod-security-policy/]] для пода или контейнера.
205
206 === Синхронизация часового пояса хоста ===
207
208 Часовой пояс контейнера должен соответствовать часовому поясу [[хоста>>https://wiki.dfcloud.ru/bin/view/Glossary/%D0%A5%D0%BE%D1%81%D1%82]] после синхронизации.
209
210 = Обновление стратегии =
211
212 ----
213
214 == Обновление пода ==
215
216 Стратегии обновления различаются для разных рабочих нагрузок.
217
218 === Развертывание приложений ===
219
220 Поле {{code language="none"}}.spec.strategy{{/code}} указывает стратегию, используемую для замены старых подов новыми. {{code language="none"}}.spec.strategy.type{{/code}} может быть **Recreate** или **Rolling Update**. {{code language="none"}}Rolling Update{{/code}} — значение по умолчанию.
221
222 * **Rolling Update **(рекомендованное значение для выбора). Последовательное обновление означает, что экземпляры старой версии постепенно заменяются новыми. В процессе обновления трафик балансируется по нагрузке и распределяется между старым и новым экземплярами одновременно, поэтому работа сервиса не прерывается.
223 * **Simultaneous Update**. Все существующие поды удаляются до создания новых.
224
225 {{warning}}
226 Во время процесса [[обновления>>https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy]] работа сервиса прерывается.
227 {{/warning}}
228
229 === Набор состояния ===
230
231 Раскрывающееся меню в разделе **Update Strategy** обозначается полем {{code language="none"}}.spec.updateStrategy{{/code}} в файле манифеста. Поле позволяет обрабатывать обновления контейнеров подов, тегов, запросов ресурсов или ограничений, аннотаций. Предусмотрены две стратегии:
232
233 * **Rolling Update **(рекомендованная). Если {{code language="none"}}.spec.template{{/code}} обновлен, поды в StatefulSet будут автоматически удалены, а новые поды будут созданы в качестве замены. Поды обновляются в обратном порядке, последовательно удаляются и создаются. Новое обновление пода не начнется, пока предыдущий не заработает после его обновления
234 * **Update on Deletion**. Если {{code language="none"}}.spec.template{{/code}} обновлен, поды в StatefulSet не будут обновляться автоматически. Необходимо вручную удалить старые поды, чтобы контроллер мог создавать новые
235
236 Более подробно в [[статье>>https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#update-strategies]].
237
238 === Набор даемона ===
239
240 Раскрывающееся меню в разделе **Update Strategy **обозначается полем {{code language="none"}}.spec.updateStrategy{{/code}} набора [[даемонов>>https://wiki.dfcloud.ru/bin/view/Glossary/%D0%94%D0%B5%D0%BC%D0%BE%D0%BD]] файла манифеста. Набор позволяет обрабатывать [[обновления контейнеров>>https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/#daemonset-update-strategy]] подов, тегов, запросов ресурсов или ограничений, аннотаций. Предусмотрены две стратегии:
241
242 * **Rolling Update **(рекомендованная). Если {{code language="none"}}.spec.template{{/code}} обновлен, старые поды набора даемонов удаляются, а новые создаются автоматически. В течение всего процесса обновления на каждой ноде работает не более одного пода набора даемонов.
243 * **Update on Deletion**. Если {{code language="none"}}.spec.template{{/code}} обновлен, новые поды набора даемонов создаются только при ручном удалении старых.
244
245 == Параметры непрерывного обновления ==
246
247 === Развертывание приложений ===
248
249 Параметры непрерывного обновления в развертывании отличаются от параметров набора состояния.
250
251 * **Maximum Unavailable Pods**. Максимальное количество подов, которые могут быть недоступны во время обновления. Задается параметром {{code language="none"}}maxUnreachable{{/code}}. Значение по умолчанию — 25%
252 * **Maximum Extra Pods**. Максимальное количество подов, которое можно запланировать сверх желаемого количества. Задается параметром {{code language="none"}}maxSurge{{/code}}. Значение по умолчанию — 25%
253
254 === Набор состояния ===
255
256 **Ordinal for Dividing Pod Replicas**: когда вы разделяете обновление, все поды с порядковым номером, большим или равным установленным в разделе значением, обновляются при обновлении спецификации пода StatefulSet. Это поле определяется параметром {{code language="none"}}.spec.updateStrategy.rollingUpdate.partition{{/code}}. Значение параметра по умолчанию равно 0.
257
258 Более подробно в [[статье>>https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#partitions]].
259
260 === Набор даемона ===
261
262 Параметры последовательного обновления в наборе даемона отличаются от набора состояния.
263
264 * **Maximum Unavailable Pods**: максимальное количество подов, которые могут быть недоступны во время обновления. Задается параметром {{code language="none"}}maxUnreachable{{/code}}. Значение по умолчанию — 20%.
265 * **Minimum Running Time for Pod Readiness**: минимальное количество секунд, прежде чем вновь созданный под DaemonSet будет считаться доступным. Задается параметром {{code language="none"}}minReadySeconds{{/code}}. Значение по умолчанию — 0.
266
267 == Среда безопасности пода ==
268
269 Среда безопасности пода определяет [[привилегии и параметры управления доступом>>https://kubernetes.io/docs/concepts/security/pod-security-policy/]] для пода или контейнера.
270
271 == Правила планирования пода ==
272
273 При необходимости выберите режимы развертывания, чтобы переключаться между [[соответствием и анти-соответствием>>https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity]] между подами. Привязка между подами указывается как поле {{code language="none"}}podAffinity{{/code}} поля {{code language="none"}}affinity{{/code}}, а антипривязка между блоками  — как поле {{code language="none"}}podAntiAffinity{{/code}}. Для {{code language="none"}}podAffinity{{/code}} и {{code language="none"}}podAntiAffinity{{/code}} задано значение {{code language="none"}}selectedDuringSchedulingIgnoredDuringExecution{{/code}}. При необходимости нажмите кнопку **Edit YAML** в правом верхнем углу, чтобы увидеть детали поля.
274
275 * **Децентрализованное планирование** — правила раздельного существования между подами (affinity-правила).
276 * **Централизованное планирование** — правила совместного существования между подами.
277 * **Пользовательские правила** — пользовательские правила планирования.
278
279 **[[В начало>>doc:Контейнерная разработка.Cloud Managed Kubernetes.WebHome]] **🡱
280 **[[К следующему разделу>>doc:Контейнерная разработка.Cloud Managed Kubernetes.2\. Инструкция.01\. Инструкция пользователя.L\. Управление проектом.L02\. Рабочие нагрузки приложений.L02\.09\. Горизонтальное автомасштабирование подов.WebHome]] 🡲**
281 **[[К предыдущему разделу>>doc:Контейнерная разработка.Cloud Managed Kubernetes.2\. Инструкция.01\. Инструкция пользователя.L\. Управление проектом.L02\. Рабочие нагрузки приложений.L02\.07\. Routes.WebHome]] **🡰