Изменения документа DevOps
Редактировал(а) Anton Krivchenkov 06.01.2025 19:01
От версии 4.1
отредактировано Anton Krivchenkov
на 06.01.2025 19:01
на 06.01.2025 19:01
Изменить комментарий:
К данной версии нет комментариев
К версии 2.1
отредактировано Anton Krivchenkov
на 06.01.2025 19:01
на 06.01.2025 19:01
Изменить комментарий:
К данной версии нет комментариев
Сводка
-
Свойства страницы (1 изменено, 0 добавлено, 0 удалено)
Подробности
- Свойства страницы
-
- Содержимое
-
... ... @@ -1,5 +3,3 @@ 1 -ВОПРОСЫ для проверки знаний: 2 - 3 3 {{toc/}} 4 4 5 5 ![[devOps.jpg|devOps.jpg]] ... ... @@ -7,10 +7,11 @@ 7 7 Порядок изучения технологий для DevOps: [https://roadmap.sh/r/devops-fork-hzrp1](https://roadmap.sh/r/devops-fork-hzrp1) и комментарии к порядку изучения технологий: 8 8 9 9 1. Выучить основы bash и python/go (дополнительная информация ниже в Базовые знания Linux, сетей и bash скриптов) 10 -1. Из операционных систем советую поставить себе Ubuntu: [https://ubuntu.com/desktop](https://ubuntu.com/desktop)8 +1. 11 11 12 - >Большинствосерверовработаютнаlinuxи Ubuntuбудет удобен в обычном пользовании и подготовке к работе10 +Из операционных систем советую поставить себе Ubuntu: [https://ubuntu.com/desktop](https://ubuntu.com/desktop) 13 13 12 +> Большинство серверов работают на linux и Ubuntu будет удобен в обычном пользовании и подготовке к работе 14 14 1. Из текстовых редакторов научиться открывать файлы и редактировать в nano, а также в vim (если удобно) 15 15 1. По терминалу вся информация будет в Базовые знания Linux, сетей и bash скриптов 16 16 1. По системе контроля версий git ниже в Git система контроля версий и автоматизация с помощью GitLab CI/CD ... ... @@ -33,7 +33,7 @@ 33 33 * Канал от создателей платных курсов Merion Academy на котором рассказывают про технологии из RoadMap выше простыми словами: [https://www.youtube.com/watch?v=NtGN7Nz6I0c](https://www.youtube.com/watch?v=NtGN7Nz6I0c) 34 34 * Хороший канал по devops, все видео смотреть на скорости 1.25 (если не хотите заснуть): [https://www.youtube.com/@pavlenkoat/playlists](https://www.youtube.com/@pavlenkoat/playlists) 35 35 36 - ####Базовые знания Linux, сетей и bash скриптов35 +Базовые знания Linux, сетей и bash скриптов 37 37 38 38 | Цель и что нужно для изучения + Задания | Как поймем что цель достигнута? | 39 39 | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ... ... @@ -41,15 +41,19 @@ 41 41 | 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) | 42 42 | Сети и сетевые технологии - как сервера (настольные ПК и тд) обьединяются в общую сеть для обмена информацией, пример интернет, глобальная сеть обьединяющая компьютеры по всему миру. Прочесть статью [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) | 43 43 44 - #### Gitсистема контроля версий и автоматизация с помощью GitLab CI/CD43 +</details> 45 45 45 +Git система контроля версий и автоматизация с помощью GitLab CI/CD 46 + 46 46 | Цель и что нужно для изучения + Задания | Как поймем что цель достигнута? | 47 47 | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | 48 48 | 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) | 49 49 | 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) | 50 50 51 - #### Контейнеризация с помощью Docker и Kubernetes52 +</details> 52 52 54 +Контейнеризация с помощью Docker и Kubernetes 55 + 53 53 | Цель и что нужно для изучения + Задания | Как поймем что цель достигнута? | 54 54 | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | 55 55 | 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/) | ... ... @@ -60,8 +60,10 @@ 60 60 * Docker: [https://roadmap.sh/docker](https://roadmap.sh/docker) 61 61 * Kubernetes: [https://roadmap.sh/kubernetes](https://roadmap.sh/kubernetes) 62 62 63 - #### Мониторинг, золотые сигналы и логгирование66 +</details> 64 64 68 +Мониторинг, золотые сигналы и логгирование 69 + 65 65 | Цель и что нужно для изучения + Задания | Как поймем что цель достигнута? | 66 66 | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | 67 67 | Мониторинг - сбор исторических данных о нашей системе [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) | ... ... @@ -78,18 +78,6 @@ 78 78 79 79 Пример алерта в AlertManager который срабатывает по условию из Prometheus 80 80 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 - 93 93 > Готовые алерты брать тут: [https://github.com/samber/awesome-prometheus-alerts/blob/master/_data/rules.yml](https://github.com/samber/awesome-prometheus-alerts/blob/master/_data/rules.yml) 94 94 95 95 Примеры работы с логами в ELK: ... ... @@ -99,12 +99,9 @@ 99 99 100 100 Логи которые попадут в Elasticsearch (формат JSON): 101 101 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 -``` 95 +</details> 106 106 107 - ####IaC - (Инфраструктура как код) создание серверов с помощью Terraform и настройка с помощью Ansible97 +IaC - (Инфраструктура как код) создание серверов с помощью Terraform и настройка с помощью Ansible 108 108 109 109 | Цель и что нужно для изучения + Задания | Как поймем что цель достигнута? | 110 110 | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ... ... @@ -113,74 +113,53 @@ 113 113 114 114 Генерация пары SSH ключей: 115 115 116 - ssh-keygen -t ed25519 -C 'ВАШ АДРЕС ЭЛЕКТРОННОЙ ПОЧТЫ' 117 - 118 118 Файловая структура Ansible role: 119 119 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 - 131 131 Пример файла roles/prometheus/tasks/main.yml: 132 132 133 -```yaml 134 -- name: Install prometheus # устанавливаем prometheus на удаленном сервере 135 - ansible.builtin.apt: 136 - name: prometheus # какую программу будет устанавливать 110 +</details> 137 137 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 # какие права будут у файла на удаленной машине 112 +Вопросы на собеседовании 145 145 146 -- name: restart prometheus # перезапустить prometheus 147 - service: 148 - name: prometheus # с каким сервисом будем работать 149 - state: restarted # перезапустить prometheus 150 - enabled: yes # запускать nginx при перезапуске системы 151 -``` 152 - 153 ---- 154 - 155 -## Вопросы на собеседованииях 156 - 157 157 Хороший набор ответов: [https://habr.com/ru/articles/775560/](https://habr.com/ru/articles/775560/) 158 158 159 159 ### Linux 160 160 161 -1. Что такое systemd 118 +1. 119 + 120 +Что такое systemd 162 162 1. Где находится конфигурация 163 163 1. Какие основные поля в конфигурации 164 -1. Какие есть kill сигналы? 123 +1. 124 + 125 +Какие есть kill сигналы? 165 165 1. Когда мы во время выполнения команды жмем Ctrl + C то какой сигнал отправляется? 166 -1. Что такое ядро Linux? 127 +1. 128 + 129 +Что такое ядро Linux? 167 167 1. Как посмотреть веросию ядра Linux? 168 168 1. Что такое системные и вызовы и какие бывают? 169 169 1. Какой командой посмотреть сетевые интерфейсы? 170 170 1. Какой командой посмотреть какие приложения занимают те или иные порты? 171 171 1. Как забрать права на доступ к файлу или директории в linux? 172 -1. Как можно запланировать выполнение комманды по расписанию, например каждую минуту? 135 +1. 136 + 137 +Как можно запланировать выполнение комманды по расписанию, например каждую минуту? 173 173 1. Как помотреть список уже запланированных заданий? 174 -1. Что такое SSH? 139 +1. 140 + 141 +Что такое SSH? 175 175 1. Что нужно чтобы подключиться к удаленному серверу через SSH? 176 176 1. Как посмотреть запущен ли SSH сервер на linux хосте? 177 177 1. Где находится конфигурация SSH сервера? 178 178 1. Где хранятся ssh ключи текущего пользователя? 179 179 1. Как установить программму в Linux Ubuntu? 180 - 1. Как обновить все программы?181 - 1. Как посмотреть информацию о комманде или программе?147 +1. Как обновить все программы? 148 +1. Как посмотреть информацию о комманде или программе? 182 182 1. Как заменить одно слово на другое в файле? 183 -1. Как редактировать файл в Linux? 150 +1. 151 + 152 +Как редактировать файл в Linux? 184 184 1. Что такое файловый дискриптор? 185 185 1. Как посмотреть запущенные процессы? 186 186 1. Как завершить запущенный процесс grafana? ... ... @@ -187,11 +187,15 @@ 187 187 188 188 ### Git 189 189 190 -1. Как создать новую ветку? 159 +1. 160 + 161 +Как создать новую ветку? 191 191 1. Как переключиться на другую ветку? 192 192 1. Как откатиться на несколько версий назад чтобы последние изменения ищезли? 193 193 1. Как отправить наши текущие изменения в удаленный репозиторий? 194 -1. Как выполнить добавление изменений из одной ветки в другую? 165 +1. 166 + 167 +Как выполнить добавление изменений из одной ветки в другую? 195 195 1. Что делать если при этом возник конфликт? 196 196 1. Как скачать себе локально последние изменения из удаленного репозитория (репозиторий уже есть на компьютере)? 197 197 1. Чем отличается tag от branch? ... ... @@ -199,7 +199,9 @@ 199 199 200 200 ### GitLab 201 201 202 -1. Что такое GitLab CI/CD и CI/CD в целом? 175 +1. 176 + 177 +Что такое GitLab CI/CD и CI/CD в целом? 203 203 1. Какие поля есть в шагах (stages)? 204 204 1. Как хранить пароли? 205 205 1. Как сделать так чтобы два или больше шагов запускались одновременно? ... ... @@ -212,12 +212,20 @@ 212 212 1. Что такое прокси и чем отличается от VPN? 213 213 1. Что такое балансировщик нагрузки? 214 214 1. Что такое кэширующий сервер и какие проблемы решает? 215 -1. Что такое выделенный IP адресс в cloud? 190 +1. 191 + 192 +Что такое выделенный IP адресс в cloud? 216 216 1. Как правильно ограничить трафик к нашему приложению чтобы оно было доступно только нам? 217 -1. Какие есть уровни модели TCP/IP и пример протоколов на каждом из них? 218 - 1. В чем разница между TCP и UDP? 194 +1. 195 + 196 +Какие есть уровни модели TCP/IP и пример протоколов на каждом из них? 197 + 1. 198 + 199 +В чем разница между TCP и UDP? 219 219 1. Что такое трехстороннее рукопожатие? 220 - 1. В чем разница между HTTP и HTTPS? 201 + 1. 202 + 203 +В чем разница между HTTP и HTTPS? 221 221 1. Опишите жизненный цикл запроса HTTP 222 222 1. Какие существуют методы HTTP? 223 223 1. Какие существуют коды/статусы ответа HTTP? ... ... @@ -228,21 +228,27 @@ 228 228 1. Какие основные виды HTTP запросов существуют? 229 229 1. Что такое TTL (Time to Live)? 230 230 1. Как работает DHCP? 231 -1. Что такое DNS сервер? 214 +1. 215 + 216 +Что такое DNS сервер? 232 232 1. По какому протоколу работает? 233 233 1. Что должен делать если не нашел запись у себя в конфигурации? 234 234 235 235 ### Docker и работа с упакованными в контейнер приложениями 236 236 237 -1. Чем контейнеризация Docker отличается от виртуализа ции?222 +1. Чем контейнеризация Docker отличается от виртуализаии? 238 238 1. Чем отличается контейнер от образа (image)? 239 -1. Как создать свой образ docker? 224 +1. 225 + 226 +Как создать свой образ docker? 240 240 1. Что такое базовый образ? 241 241 1. Чем хорошо образ alpine linux и чем он отличается например от образа ubuntu linux? 242 242 1. В чем отличия между COPY и ADD? 243 243 1. Есть ли отличия между CMD и ENTRYPOINT и можно ли их использовать вместе? 244 244 1. Где лучше хранить собраные образы docker? 245 -1. Как запустить несколько образов вместе на своем компьютере для тестирования? 232 +1. 233 + 234 +Как запустить несколько образов вместе на своем компьютере для тестирования? 246 246 1. Можно ли в docker compose ограничить использование RAM и CPU для отдельных контейнеров? 247 247 1. Сохранятся ли данные записанные приложением в контенйнере на диск после его перезапуска? 248 248 1. Что такое volumes и для каких приложений использовать их нужно? ... ... @@ -262,41 +262,59 @@ 262 262 263 263 ### Kubernetes или коротко k8s 264 264 265 -1. Какие компоненты должны быть установлены на master node? 254 +1. 255 + 256 +Какие компоненты должны быть установлены на master node? 266 266 1. А какие на worker node? 267 -1. Что такое etcd? 258 +1. 259 + 260 +Что такое etcd? 268 268 1. Какой тип у этой базы данных? 269 269 1. Почему в etcd должно быть нечетное количество реплик? 270 -1. Как настраивается сеть в k8s? 263 +1. 264 + 265 +Как настраивается сеть в k8s? 271 271 1. Что такое CNI? 272 272 1. Каким образом каждому pod выдается отдельный IP? 273 -1. Что такое service? 268 +1. 269 + 270 +Что такое service? 274 274 1. Как с помощью service обратиться к pod в другом namespace? 275 275 1. Является ли service DNS именем? 276 276 1. По какому правилу service будет распределять трафик между pod? 277 277 1. Чем отличаются service вида headless и clusterIP? 278 -1. Какие виды prob вы знаете? 275 +1. 276 + 277 +Какие виды prob вы знаете? 279 279 1. Для чего нужна каждая из них? 280 -1. Сколько контейнеров может быть в одном pod? 279 +1. 280 + 281 +Сколько контейнеров может быть в одном pod? 281 281 1. Нужно ли создавать service для того чтобы контейнеры отправляли друг другу запросы в рамках одного pod? 282 -1. Какие ingress контроллеры вы знаете? 283 +1. 284 + 285 +Какие ingress контроллеры вы знаете? 283 283 1. Что такое ingress, какие ресурсы он связывает на сетевом уровне? 284 284 1. Как в ingress использовать SSL сертификаты? 285 285 1. Чем отличаются annotations от labels и приведите по одному примеру использования? 286 286 1. Основные различия между Deployment, StatefulSet и DaemonSet? 287 -1. Что такое lifecycle хуки? 288 - 1. Для чего используется preStop хук с `sleep 10` функцией? 289 -1. Для чего нужны лимиты (limits) и запросы (requests) у pod? 290 +1. 291 + 292 +Что такое lifecycle хуки? 293 + 1. Для чего используется preStop хук с sleep 10 функцией? 294 +1. 295 + 296 +Для чего нужны лимиты (limits) и запросы (requests) у pod? 290 290 1. HPA при расчетах использует limits или requests? 291 291 1. Планировщик при выборе на какую node размещать pod учитывает limits? 292 292 1. Каким образом можем ограничить права пользователей в k8s? 293 293 1. Чем так удобны helm charts? 294 294 1. Какие основные компоненты чарта? 295 -1. Что находится в файле `values.yaml`и`Chart.yaml`?296 -1. Для чего в папке templates создают файл `_helpers.tpl`?302 +1. Что находится в файле values.yaml и Chart.yaml? 303 +1. Для чего в папке templates создают файл _helpers.tpl? 297 297 1. Как создать цикл который создаст несколько сущностей (например ports в service)? 298 298 1. Как сделать условный оператор для boolean значений и для строк? 299 -1. Что будет записано вместо темплейта `{{ divf .Values.replicaCount .Values.zones | ceil }}`? Как может пригодиться читать тут<https://github.com/eabykov/devops-kubernetes/blob/main/ЛУЧШИЕ_ПРАКТИКИ.md>в коментарие к разделу _Распределите ваши pod по разным node и разным зонам (датацентрам)_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 и разным зонам (датацентрам)_ 300 300 301 301 ### Vault 302 302 ... ... @@ -311,3 +311,5 @@ 311 311 1. Что нужно сделать в приложении чтобы его трейсы появились в Jaeger? 312 312 313 313 ### Flux и Flagger (канареечные релизы) 321 + 322 +