0 Голосов

Изменения документа DevOps

Редактировал(а) Anton Krivchenkov 06.01.2025 19:01

От версии 2.1
отредактировано Anton Krivchenkov
на 06.01.2025 19:01
Изменить комментарий: К данной версии нет комментариев
К версии 4.1
отредактировано Anton Krivchenkov
на 06.01.2025 19:01
Изменить комментарий: К данной версии нет комментариев

Сводка

Подробности

Свойства страницы
Содержимое
... ... @@ -1,3 +1,5 @@
1 +ВОПРОСЫ для проверки знаний:
2 +
1 1  {{toc/}}
2 2  
3 3  ![[devOps.jpg|devOps.jpg]]
... ... @@ -5,11 +5,10 @@
5 5  Порядок изучения технологий для DevOps: [https://roadmap.sh/r/devops-fork-hzrp1](https://roadmap.sh/r/devops-fork-hzrp1) и комментарии к порядку изучения технологий:
6 6  
7 7  1. Выучить основы bash и python/go (дополнительная информация ниже в Базовые знания Linux, сетей и bash скриптов)
8 -1.
10 +1. Из операционных систем советую поставить себе Ubuntu: [https://ubuntu.com/desktop](https://ubuntu.com/desktop)
9 9  
10 -Из операционных систем советую поставить себе Ubuntu: [https://ubuntu.com/desktop](https://ubuntu.com/desktop)
11 -
12 12  > Большинство серверов работают на linux и Ubuntu будет удобен в обычном пользовании и подготовке к работе
13 +
13 13  1. Из текстовых редакторов научиться открывать файлы и редактировать в nano, а также в vim (если удобно)
14 14  1. По терминалу вся информация будет в Базовые знания Linux, сетей и bash скриптов
15 15  1. По системе контроля версий git ниже в Git система контроля версий и автоматизация с помощью GitLab CI/CD
... ... @@ -32,7 +32,7 @@
32 32  * Канал от создателей платных курсов Merion Academy на котором рассказывают про технологии из RoadMap выше простыми словами: [https://www.youtube.com/watch?v=NtGN7Nz6I0c](https://www.youtube.com/watch?v=NtGN7Nz6I0c)
33 33  * Хороший канал по devops, все видео смотреть на скорости 1.25 (если не хотите заснуть): [https://www.youtube.com/@pavlenkoat/playlists](https://www.youtube.com/@pavlenkoat/playlists)
34 34  
35 -​Базовые знания Linux, сетей и bash скриптов​
36 +#### ​Базовые знания Linux, сетей и bash скриптов​
36 36  
37 37  | Цель и что нужно для изучения + Задания | Как поймем что цель достигнута? |
38 38  | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
... ... @@ -40,19 +40,15 @@
40 40  | Linux скрипты - простые сценарии, автоматизация рутинных задач. Задание: сделать скрипты для всех заданий [https://github.com/eabykov/devops-linux](https://github.com/eabykov/devops-linux) и задания 2,5,9 в [https://github.com/bregman-arie/devops-exercises/tree/master/topics/shell](https://github.com/bregman-arie/devops-exercises/tree/master/topics/shell) | Умеет создавать и использовать переменные, может применять условный оператор IF и использовать CASE, умеет использовать циклы, вопросы [https://github.com/bregman-arie/devops-exercises/tree/master/topics/shell](https://github.com/bregman-arie/devops-exercises/tree/master/topics/shell) |
41 41  | Сети и сетевые технологии - как сервера (настольные ПК и тд) обьединяются в общую сеть для обмена информацией, пример интернет, глобальная сеть обьединяющая компьютеры по всему миру. Прочесть статью [https://habr.com/ru/post/326574/](https://habr.com/ru/post/326574/) , [https://ru.wikipedia.org/wiki/](https://ru.wikipedia.org/wiki/)Маска_подсети и [https://habr.com/ru/post/711578/](https://habr.com/ru/post/711578/) , посмотреть про websocket [https://youtu.be/19d4AXt3dSI](https://youtu.be/19d4AXt3dSI) | Как подключиться по SSH и как работает SSH, что такое 'пакет', уровни TCP/IP, что такое DNS, что такое HTTP/HTTPS протокол и REST API, что такое IP и маска подсети, как на linux посмотреть сетевые интерфейсы, сниффинг трафика, что такое Nginx (как выглядит конфиг) и round-robin балансировка, вопросы [https://github.com/bregman-arie/devops-exercises#network](https://github.com/bregman-arie/devops-exercises#network) и [https://github.com/bregman-arie/devops-exercises/tree/master/topics/dns](https://github.com/bregman-arie/devops-exercises/tree/master/topics/dns) |
42 42  
43 -</details>
44 +#### ​Git система контроля версий и автоматизация с помощью GitLab CI/CD​
44 44  
45 -​Git система контроля версий и автоматизация с помощью GitLab CI/CD​
46 -
47 47  | Цель и что нужно для изучения + Задания | Как поймем что цель достигнута? |
48 48  | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
49 49  | Git - система управления версиями для совместной работы над проектом и в случае чего удобному восстановлению к более старой версии [https://youtu.be/EeARyFrZsnU](https://youtu.be/EeARyFrZsnU) . Пройти курс [https://www.youtube.com/watch?list=PLg5SS_4L6LYstwxTEOU05E0URTHnbtA0l](https://www.youtube.com/watch?list=PLg5SS_4L6LYstwxTEOU05E0URTHnbtA0l) до 15 урока и создать свой репозиторий на github с несколькими ветками и тегами | Знает что такое commit и как его делать, умеет делать branch и tag и знает в чем между ними разница, знает что такое merge и как исправлять конфликты, знает как откатиться на более старую версию, как склонировать репозиторий локально и как загрузить свои изменения в github, в чем разница межу fetch и pull, вопросы [https://github.com/bregman-arie/devops-exercises/tree/master/topics/git](https://github.com/bregman-arie/devops-exercises/tree/master/topics/git) |
50 50  | CI/CD - выполнение автоматически действий по триггеру, например commit в master, создание merge, создание tag или cron расписанию. В курсе [https://www.youtube.com/watch?list=PLg5SS_4L6LYstwxTEOU05E0URTHnbtA0l](https://www.youtube.com/watch?list=PLg5SS_4L6LYstwxTEOU05E0URTHnbtA0l) 15й и 16й, [https://youtu.be/tE3u1LquFcg?t=212](https://youtu.be/tE3u1LquFcg?t=212) скорость 1.25, [https://github.com/gitlabhq/gitlabhq/blob/master/doc/ci/docker/using_kaniko.md](https://github.com/gitlabhq/gitlabhq/blob/master/doc/ci/docker/using_kaniko.md) .gitlab-ci.yml как собирать Docker Image в GitLab правильно | Сделал автоматическую сборку своего Docker Image и отправку dockerhub хранилище образов (хранилище образов называют registry), GitLab CI/CD основные понятия, из каких шагов состоит идеальный CI/CD пайплайн, вопросы [https://github.com/bregman-arie/devops-exercises/tree/master/topics/cicd](https://github.com/bregman-arie/devops-exercises/tree/master/topics/cicd) |
51 51  
52 -</details>
51 +#### ​Контейнеризация с помощью Docker и Kubernetes
53 53  
54 -​Контейнеризация с помощью Docker и Kubernetes​
55 -
56 56  | Цель и что нужно для изучения + Задания | Как поймем что цель достигнута? |
57 57  | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
58 58  | Docker - упаковка приложения в image в котором будет все что нужно для запуска [https://youtu.be/aZTL2zRmOnA](https://youtu.be/aZTL2zRmOnA) | Понимает зачем нужен docker, умеет создавать свой образ и пушить его в dockerhub, умеет запускать несколько образов вместе используя compose, вопросы [https://habr.com/ru/company/southbridge/blog/528206/](https://habr.com/ru/company/southbridge/blog/528206/) |
... ... @@ -63,10 +63,8 @@
63 63  * Docker: [https://roadmap.sh/docker](https://roadmap.sh/docker)
64 64  * Kubernetes: [https://roadmap.sh/kubernetes](https://roadmap.sh/kubernetes)
65 65  
66 -</details>
63 +#### ​Мониторинг, золотые сигналы и логгирование​
67 67  
68 -​Мониторинг, золотые сигналы и логгирование​
69 -
70 70  | Цель и что нужно для изучения + Задания | Как поймем что цель достигнута? |
71 71  | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
72 72  | Мониторинг - сбор исторических данных о нашей системе [https://youtu.be/wDan20_WyNg](https://youtu.be/wDan20_WyNg) использовать пример [https://github.com/ruanbekker/docker-monitoring-stack-gpnc](https://github.com/ruanbekker/docker-monitoring-stack-gpnc) , Linux серверах, показателей приложений и их логов, сетевых метрик, и оповещение, если что-то пошло не так. Prometheus + Grafana + любые экспортеры, ELK стек [https://youtu.be/ZcC3BTChCY0?t=110](https://youtu.be/ZcC3BTChCY0?t=110) и [https://github.com/docker/awesome-compose/tree/master/elasticsearch-logstash-kibana](https://github.com/docker/awesome-compose/tree/master/elasticsearch-logstash-kibana) , Трейсинг [https://youtu.be/7Dyf4AiUAcQ](https://youtu.be/7Dyf4AiUAcQ) | Понимает как создавать алерты (оповещения), может настроить мониторинг Docker, linux host, в Kubernetes установить [https://github.com/prometheus-community/helm-charts/tree/main/charts/kube-prometheus-stack](https://github.com/prometheus-community/helm-charts/tree/main/charts/kube-prometheus-stack) , вопросы [https://github.com/bregman-arie/devops-exercises#prometheus](https://github.com/bregman-arie/devops-exercises#prometheus) , [https://github.com/bregman-arie/devops-exercises#monitoring](https://github.com/bregman-arie/devops-exercises#monitoring) и [https://github.com/bregman-arie/devops-exercises#elastic](https://github.com/bregman-arie/devops-exercises#elastic) |
... ... @@ -83,6 +83,18 @@
83 83  
84 84  Пример алерта в AlertManager который срабатывает по условию из Prometheus
85 85  
81 +```yaml
82 +- name: Host out of memory
83 + # description - описание алерта, более детальное пояснение о чем он
84 + description: Node memory is filling up (< 10% left)
85 + # query - запрос в случае которого будет срабатывать алерт, правило (например памяти меньше 10%)
86 + query: '(node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes * 100 < 10) * on(instance) group_left (nodename) node_uname_info{nodename=~".+"}'
87 + # severity - уровень алертинга, важность, например warning это предупреждение, а critical критично и опасно - самый большой приоритет
88 + severity: warning
89 + # for - сколько минут должно соблюдаться 'query' выше, 0m сработает алерт сразу, 2m правило в query должно соблюдаться 2 минуты
90 + for: 2m
91 +```
92 +
86 86  > Готовые алерты брать тут: [https://github.com/samber/awesome-prometheus-alerts/blob/master/_data/rules.yml](https://github.com/samber/awesome-prometheus-alerts/blob/master/_data/rules.yml)
87 87  
88 88  Примеры работы с логами в ELK:
... ... @@ -92,9 +92,12 @@
92 92  
93 93  Логи которые попадут в Elasticsearch (формат JSON):
94 94  
95 -</details>
102 +```json
103 +{"program_name": "database", "date": "2023-10-11", "time": "18:45:01", "level": "INFO", "message": "Application ready"}
104 +{"program_name": "web-app", "date": "2023-10-11", "time": "18:45:02", "level": "ERROR", "message": "failed to start"}
105 +```
96 96  
97 -​IaC - (Инфраструктура как код) создание серверов с помощью Terraform и настройка с помощью Ansible​
107 +#### ​IaC - (Инфраструктура как код) создание серверов с помощью Terraform и настройка с помощью Ansible​
98 98  
99 99  | Цель и что нужно для изучения + Задания | Как поймем что цель достигнута? |
100 100  | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
... ... @@ -103,53 +103,74 @@
103 103  
104 104  Генерация пары SSH ключей:
105 105  
116 + ssh-keygen -t ed25519 -C 'ВАШ АДРЕС ЭЛЕКТРОННОЙ ПОЧТЫ'
117 +
106 106  Файловая структура Ansible role:
107 107  
120 + roles/ # роли хранятся в папке 'roles'
121 + prometheus/ # имя роли, в нашем случае 'prometheus'
122 + tasks/
123 + main.yml # ниже пример файла
124 + files/
125 + prometheus.conf # файл который будет скопирован на удаленную машину
126 + vars/
127 + main.yml # переменные для данной роли, например версия prometheus
128 + defaults/
129 + main.yml # самые базовые переменные по умолчанию, имеют ниже приоритет чем 'vars' выше
130 +
108 108  Пример файла roles/prometheus/tasks/main.yml:
109 109  
110 -</details>
133 +```yaml
134 +- name: Install prometheus # устанавливаем prometheus на удаленном сервере
135 + ansible.builtin.apt:
136 + name: prometheus # какую программу будет устанавливать
111 111  
112 -​Вопросы на собеседовании​
138 +- name: Copy prometheus config to remote hosts # имя задачи, чтобы мы понимали что делает
139 + ansible.builtin.copy:
140 + src: prometheus.conf # где файл лежит у нас на компе
141 + dest: /etc/prometheus/prometheus.conf # то куда файл попадет на удаленных хостах
142 + owner: aider # кто будет хозяином файла на удаленной машине
143 + group: aider # какая группа будет у файла на удаленной машине
144 + mode: u=rw,g=r,o=r # какие права будут у файла на удаленной машине
113 113  
146 +- name: restart prometheus # перезапустить prometheus
147 + service:
148 + name: prometheus # с каким сервисом будем работать
149 + state: restarted # перезапустить prometheus
150 + enabled: yes # запускать nginx при перезапуске системы
151 +```
152 +
153 +---
154 +
155 +## ​Вопросы на собеседованииях
156 +
114 114  Хороший набор ответов: [https://habr.com/ru/articles/775560/](https://habr.com/ru/articles/775560/)
115 115  
116 116  ### Linux
117 117  
118 -1.
119 -
120 -Что такое systemd
161 +1. Что такое systemd
121 121   1. Где находится конфигурация
122 122   1. Какие основные поля в конфигурации
123 -1.
124 -
125 -Какие есть kill сигналы?
164 +1. Какие есть kill сигналы?
126 126   1. Когда мы во время выполнения команды жмем Ctrl + C то какой сигнал отправляется?
127 -1.
128 -
129 -Что такое ядро Linux?
166 +1. Что такое ядро Linux?
130 130   1. Как посмотреть веросию ядра Linux?
131 131   1. Что такое системные и вызовы и какие бывают?
132 132  1. Какой командой посмотреть сетевые интерфейсы?
133 133  1. Какой командой посмотреть какие приложения занимают те или иные порты?
134 134  1. Как забрать права на доступ к файлу или директории в linux?
135 -1.
136 -
137 -Как можно запланировать выполнение комманды по расписанию, например каждую минуту?
172 +1. Как можно запланировать выполнение комманды по расписанию, например каждую минуту?
138 138   1. Как помотреть список уже запланированных заданий?
139 -1.
140 -
141 -Что такое SSH?
174 +1. Что такое SSH?
142 142   1. Что нужно чтобы подключиться к удаленному серверу через SSH?
143 143   1. Как посмотреть запущен ли SSH сервер на linux хосте?
144 144   1. Где находится конфигурация SSH сервера?
145 145   1. Где хранятся ssh ключи текущего пользователя?
146 146  1. Как установить программму в Linux Ubuntu?
147 -1. Как обновить все программы?
148 -1. Как посмотреть информацию о комманде или программе?
180 + 1. Как обновить все программы?
181 + 1. Как посмотреть информацию о комманде или программе?
149 149  1. Как заменить одно слово на другое в файле?
150 -1.
151 -
152 -Как редактировать файл в Linux?
183 +1. Как редактировать файл в Linux?
153 153   1. Что такое файловый дискриптор?
154 154  1. Как посмотреть запущенные процессы?
155 155  1. Как завершить запущенный процесс grafana?
... ... @@ -156,15 +156,11 @@
156 156  
157 157  ### Git
158 158  
159 -1.
160 -
161 -Как создать новую ветку?
190 +1. Как создать новую ветку?
162 162   1. Как переключиться на другую ветку?
163 163  1. Как откатиться на несколько версий назад чтобы последние изменения ищезли?
164 164  1. Как отправить наши текущие изменения в удаленный репозиторий?
165 -1.
166 -
167 -Как выполнить добавление изменений из одной ветки в другую?
194 +1. Как выполнить добавление изменений из одной ветки в другую?
168 168   1. Что делать если при этом возник конфликт?
169 169  1. Как скачать себе локально последние изменения из удаленного репозитория (репозиторий уже есть на компьютере)?
170 170  1. Чем отличается tag от branch?
... ... @@ -172,9 +172,7 @@
172 172  
173 173  ### GitLab
174 174  
175 -1.
176 -
177 -Что такое GitLab CI/CD и CI/CD в целом?
202 +1. Что такое GitLab CI/CD и CI/CD в целом?
178 178   1. Какие поля есть в шагах (stages)?
179 179   1. Как хранить пароли?
180 180   1. Как сделать так чтобы два или больше шагов запускались одновременно?
... ... @@ -187,20 +187,12 @@
187 187  1. Что такое прокси и чем отличается от VPN?
188 188  1. Что такое балансировщик нагрузки?
189 189  1. Что такое кэширующий сервер и какие проблемы решает?
190 -1.
191 -
192 -Что такое выделенный IP адресс в cloud?
215 +1. Что такое выделенный IP адресс в cloud?
193 193   1. Как правильно ограничить трафик к нашему приложению чтобы оно было доступно только нам?
194 -1.
195 -
196 -Какие есть уровни модели TCP/IP и пример протоколов на каждом из них?
197 - 1.
198 -
199 -В чем разница между TCP и UDP?
217 +1. Какие есть уровни модели TCP/IP и пример протоколов на каждом из них?
218 + 1. В чем разница между TCP и UDP?
200 200   1. Что такое трехстороннее рукопожатие?
201 - 1.
202 -
203 -В чем разница между HTTP и HTTPS?
220 + 1. В чем разница между HTTP и HTTPS?
204 204   1. Опишите жизненный цикл запроса HTTP
205 205   1. Какие существуют методы HTTP?
206 206   1. Какие существуют коды/статусы ответа HTTP?
... ... @@ -211,27 +211,21 @@
211 211   1. Какие основные виды HTTP запросов существуют?
212 212  1. Что такое TTL (Time to Live)?
213 213  1. Как работает DHCP?
214 -1.
215 -
216 -Что такое DNS сервер?
231 +1. Что такое DNS сервер?
217 217   1. По какому протоколу работает?
218 218   1. Что должен делать если не нашел запись у себя в конфигурации?
219 219  
220 220  ### Docker и работа с упакованными в контейнер приложениями
221 221  
222 -1. Чем контейнеризация Docker отличается от виртуализаии?
237 +1. Чем контейнеризация Docker отличается от виртуализации?
223 223  1. Чем отличается контейнер от образа (image)?
224 -1.
225 -
226 -Как создать свой образ docker?
239 +1. Как создать свой образ docker?
227 227   1. Что такое базовый образ?
228 228   1. Чем хорошо образ alpine linux и чем он отличается например от образа ubuntu linux?
229 229   1. В чем отличия между COPY и ADD?
230 230   1. Есть ли отличия между CMD и ENTRYPOINT и можно ли их использовать вместе?
231 231   1. Где лучше хранить собраные образы docker?
232 -1.
233 -
234 -Как запустить несколько образов вместе на своем компьютере для тестирования?
245 +1. Как запустить несколько образов вместе на своем компьютере для тестирования?
235 235   1. Можно ли в docker compose ограничить использование RAM и CPU для отдельных контейнеров?
236 236   1. Сохранятся ли данные записанные приложением в контенйнере на диск после его перезапуска?
237 237   1. Что такое volumes и для каких приложений использовать их нужно?
... ... @@ -251,59 +251,41 @@
251 251  
252 252  ### Kubernetes или коротко k8s
253 253  
254 -1.
255 -
256 -Какие компоненты должны быть установлены на master node?
265 +1. Какие компоненты должны быть установлены на master node?
257 257   1. А какие на worker node?
258 -1.
259 -
260 -Что такое etcd?
267 +1. Что такое etcd?
261 261   1. Какой тип у этой базы данных?
262 262   1. Почему в etcd должно быть нечетное количество реплик?
263 -1.
264 -
265 -Как настраивается сеть в k8s?
270 +1. Как настраивается сеть в k8s?
266 266   1. Что такое CNI?
267 267   1. Каким образом каждому pod выдается отдельный IP?
268 -1.
269 -
270 -Что такое service?
273 +1. Что такое service?
271 271   1. Как с помощью service обратиться к pod в другом namespace?
272 272   1. Является ли service DNS именем?
273 273   1. По какому правилу service будет распределять трафик между pod?
274 274   1. Чем отличаются service вида headless и clusterIP?
275 -1.
276 -
277 -Какие виды prob вы знаете?
278 +1. Какие виды prob вы знаете?
278 278   1. Для чего нужна каждая из них?
279 -1.
280 -
281 -Сколько контейнеров может быть в одном pod?
280 +1. Сколько контейнеров может быть в одном pod?
282 282   1. Нужно ли создавать service для того чтобы контейнеры отправляли друг другу запросы в рамках одного pod?
283 -1.
284 -
285 -Какие ingress контроллеры вы знаете?
282 +1. Какие ingress контроллеры вы знаете?
286 286   1. Что такое ingress, какие ресурсы он связывает на сетевом уровне?
287 287   1. Как в ingress использовать SSL сертификаты?
288 288  1. Чем отличаются annotations от labels и приведите по одному примеру использования?
289 289  1. Основные различия между Deployment, StatefulSet и DaemonSet?
290 -1.
291 -
292 -Что такое lifecycle хуки?
293 - 1. Для чего используется preStop хук с sleep 10 функцией?
294 -1.
295 -
296 -Для чего нужны лимиты (limits) и запросы (requests) у pod?
287 +1. Что такое lifecycle хуки?
288 + 1. Для чего используется preStop хук с `sleep 10` функцией?
289 +1. Для чего нужны лимиты (limits) и запросы (requests) у pod?
297 297   1. HPA при расчетах использует limits или requests?
298 298   1. Планировщик при выборе на какую node размещать pod учитывает limits?
299 299  1. Каким образом можем ограничить права пользователей в k8s?
300 300  1. Чем так удобны helm charts?
301 301  1. Какие основные компоненты чарта?
302 -1. Что находится в файле values.yaml и Chart.yaml?
303 -1. Для чего в папке templates создают файл _helpers.tpl?
295 +1. Что находится в файле `values.yaml` и `Chart.yaml`?
296 +1. Для чего в папке templates создают файл `_helpers.tpl`?
304 304  1. Как создать цикл который создаст несколько сущностей (например ports в service)?
305 305  1. Как сделать условный оператор для boolean значений и для строк?
306 -1. Что будет записано вместо темплейта {{ divf .Values.replicaCount .Values.zones | ceil }}? Как может пригодиться читать тут [https://github.com/eabykov/devops-kubernetes/blob/main/](https://github.com/eabykov/devops-kubernetes/blob/main/)ЛУЧШИЕ_ПРАКТИКИ.md в коментарие к разделу _Распределите ваши pod по разным node и разным зонам (датацентрам)_
299 +1. Что будет записано вместо темплейта `{{ divf .Values.replicaCount .Values.zones | ceil }}`? Как может пригодиться читать тут <https://github.com/eabykov/devops-kubernetes/blob/main/ЛУЧШИЕ_ПРАКТИКИ.md> в коментарие к разделу _Распределите ваши pod по разным node и разным зонам (датацентрам)_
307 307  
308 308  ### Vault
309 309  
... ... @@ -318,5 +318,3 @@
318 318  1. Что нужно сделать в приложении чтобы его трейсы появились в Jaeger?
319 319  
320 320  ### Flux и Flagger (канареечные релизы)
321 -
322 -