Изменения документа DevOps
Редактировал(а) Anton Krivchenkov 06.01.2025 19:01
От версии 1.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,1 +1,322 @@ 1 +{{toc/}} 2 + 1 1 ![[devOps.jpg|devOps.jpg]] 4 + 5 +Порядок изучения технологий для DevOps: [https://roadmap.sh/r/devops-fork-hzrp1](https://roadmap.sh/r/devops-fork-hzrp1) и комментарии к порядку изучения технологий: 6 + 7 +1. Выучить основы bash и python/go (дополнительная информация ниже в Базовые знания Linux, сетей и bash скриптов) 8 +1. 9 + 10 +Из операционных систем советую поставить себе Ubuntu: [https://ubuntu.com/desktop](https://ubuntu.com/desktop) 11 + 12 +> Большинство серверов работают на linux и Ubuntu будет удобен в обычном пользовании и подготовке к работе 13 +1. Из текстовых редакторов научиться открывать файлы и редактировать в nano, а также в vim (если удобно) 14 +1. По терминалу вся информация будет в Базовые знания Linux, сетей и bash скриптов 15 +1. По системе контроля версий git ниже в Git система контроля версий и автоматизация с помощью GitLab CI/CD 16 +1. По контейнеризации изучать Docker, ниже в Контейнеризация с помощью Docker и Kubernetes 17 +1. Насчет Облачных провайдеров, в России лучше использовать Yandex Cloud, SberCloud или VK Cloud 18 +1. Сети изучать ниже в Базовые знания Linux, сетей и bash скриптов 19 +1. Изучать Terraform и Ansible как IaC (инфраструктуру как код, ниже в IaC - (Инфраструктура как код) создание серверов с помощью Terraform и настройка с помощью Ansible) 20 +1. CI/CD проще изучать на основе GitHub Actions, а потом GitLab CI/CD (автоматизация) 21 +1. Мониторинг ниже в пункте Мониторинг, золотые сигналы и логгирование 22 +1. Управление паролями, секретными данными или ключами с помощью Vault 23 +1. Мониторинг приложений: Jaeger Tracing, Sentry 24 +1. Управление логами Graylog и Loki, тоже ниже в Мониторинг, золотые сигналы и логгирование 25 +1. Под Kubenretes тоже отдельный пункт ниже совместо с Docker (в последних версиях Kubenretes отказались от Docker) 26 +1. Хранение собраных приложений, docker образов, helm чартов: Nexus и Artifactory 27 +1. Наблюдаемость и управление сетевым трафиком в Kubenretes: istio или linkerd (ниже в пункте с Kubenretes) 28 + 29 +Полезные youtube каналы: 30 + 31 +* Канал с плейлистами по которым учились многие devops инженеры: [https://www.youtube.com/@ADV-IT/playlists](https://www.youtube.com/@ADV-IT/playlists) 32 +* Канал от создателей платных курсов Merion Academy на котором рассказывают про технологии из RoadMap выше простыми словами: [https://www.youtube.com/watch?v=NtGN7Nz6I0c](https://www.youtube.com/watch?v=NtGN7Nz6I0c) 33 +* Хороший канал по devops, все видео смотреть на скорости 1.25 (если не хотите заснуть): [https://www.youtube.com/@pavlenkoat/playlists](https://www.youtube.com/@pavlenkoat/playlists) 34 + 35 +Базовые знания Linux, сетей и bash скриптов 36 + 37 +| Цель и что нужно для изучения + Задания | Как поймем что цель достигнута? | 38 +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | 39 +| Linux - ядро операционной системы, например Ubuntu построена на базе Linux. Пройти курс [https://youtu.be/wdaHKwvNRuU?si=UnvTogPjiVOE5PEc](https://youtu.be/wdaHKwvNRuU?si=UnvTogPjiVOE5PEc) и сделать все задания [https://github.com/eabykov/devops-linux](https://github.com/eabykov/devops-linux) | Может устанавливать программы, знает основные команды и может их применять, что такое ядро linux, знает какие основные папки есть в /, отвечает на вопросы [https://github.com/bregman-arie/devops-exercises/tree/master/topics/linux](https://github.com/bregman-arie/devops-exercises/tree/master/topics/linux) и [https://github.com/bregman-arie/devops-exercises#operating-system---self-assessment](https://github.com/bregman-arie/devops-exercises#operating-system---self-assessment) | 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 +| Сети и сетевые технологии - как сервера (настольные ПК и тд) обьединяются в общую сеть для обмена информацией, пример интернет, глобальная сеть обьединяющая компьютеры по всему миру. Прочесть статью [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 + 43 +</details> 44 + 45 +Git система контроля версий и автоматизация с помощью GitLab CI/CD 46 + 47 +| Цель и что нужно для изучения + Задания | Как поймем что цель достигнута? | 48 +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | 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 +| 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 + 52 +</details> 53 + 54 +Контейнеризация с помощью Docker и Kubernetes 55 + 56 +| Цель и что нужно для изучения + Задания | Как поймем что цель достигнута? | 57 +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | 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/) | 59 +| Kubernetes - приводит состояние кластера из пункта А в пункт С, нужно только обьяснить с помощью yaml манифестов чего хотим в пункте С. Пройти курс [https://learn.microsoft.com/ru-ru/training/modules/intro-to-kubernetes/](https://learn.microsoft.com/ru-ru/training/modules/intro-to-kubernetes/) вместе с [https://github.com/eabykov/kubernetes](https://github.com/eabykov/kubernetes) и поставить локально linkerd (посмотреть какие сервисы взаимодействуют, есть ли ошибки, сколько запросов в секунду) | Понимает зачем нужен Kubernetes, как устанавливать приложения через helm, вопросы [https://github.com/bregman-arie/devops-exercises/tree/master/topics/kubernetes](https://github.com/bregman-arie/devops-exercises/tree/master/topics/kubernetes) | 60 + 61 +Примерный порядок изучения технологии: 62 + 63 +* Docker: [https://roadmap.sh/docker](https://roadmap.sh/docker) 64 +* Kubernetes: [https://roadmap.sh/kubernetes](https://roadmap.sh/kubernetes) 65 + 66 +</details> 67 + 68 +Мониторинг, золотые сигналы и логгирование 69 + 70 +| Цель и что нужно для изучения + Задания | Как поймем что цель достигнута? | 71 +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | 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) | 73 + 74 +Логгирование в Kubernetes: [https://kubernetes.io/docs/concepts/cluster-administration/logging/](https://kubernetes.io/docs/concepts/cluster-administration/logging/) 75 + 76 +Золотые сигналы: [https://habr.com/ru/companies/southbridge/articles/688082/](https://habr.com/ru/companies/southbridge/articles/688082/) 77 + 78 +* Процент успешных запросов 79 +* RPS (requests per second) - количество запросов в секунду 80 +* время обработки запросов 81 + 82 +Автоматический мониторинг золотых сигналов (Golden metrics) с помощью Linkerd: [https://linkerd.io/2.13/features/telemetry/](https://linkerd.io/2.13/features/telemetry/) 83 + 84 +Пример алерта в AlertManager который срабатывает по условию из Prometheus 85 + 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 + 88 +Примеры работы с логами в ELK: 89 + 90 +* Приложения database записывает логи на диск в файл: 2023-10-11 18:45:01 INFO Application ready 91 +* Приложения web-app записывает логи на диск в файл: 18:45:02 2023-10-11 error: failed to start 92 + 93 +Логи которые попадут в Elasticsearch (формат JSON): 94 + 95 +</details> 96 + 97 +IaC - (Инфраструктура как код) создание серверов с помощью Terraform и настройка с помощью Ansible 98 + 99 +| Цель и что нужно для изучения + Задания | Как поймем что цель достигнута? | 100 +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | 101 +| Ansible - упарвляет конфигурацией хостов по SSH [https://youtu.be/23Zec3ORJOY](https://youtu.be/23Zec3ORJOY) . Пройти курс [https://www.youtube.com/watch?list=PLg5SS_4L6LYufspdPupdynbMQTBnZd31N](https://www.youtube.com/watch?list=PLg5SS_4L6LYufspdPupdynbMQTBnZd31N) 1,6,10,12,14,15,19 не по названию | Понимает зачем нужен Ansible, что такое идемпотентность, что такое playbook, умеет писать свои роли, вопросы [https://github.com/bregman-arie/devops-exercises/tree/master/topics/ansible](https://github.com/bregman-arie/devops-exercises/tree/master/topics/ansible) | 102 +| Terraform [https://youtu.be/ph4iNA0Uuko](https://youtu.be/ph4iNA0Uuko) . Пройти курс [https://www.youtube.com/watch?list=PLg5SS_4L6LYujWDTYb-Zbofdl44Jxb2l8](https://www.youtube.com/watch?list=PLg5SS_4L6LYujWDTYb-Zbofdl44Jxb2l8) 1,3,6,7,12,14,16,18 не по названию | Понимает зачем нужен Terraform, знает как создавать ресурсы (например виртуальную машину), где хранится состояние (информация) о том что сделал terraform, вопросы [https://habr.com/ru/company/southbridge/blog/528206/](https://habr.com/ru/company/southbridge/blog/528206/) | 103 + 104 +Генерация пары SSH ключей: 105 + 106 +Файловая структура Ansible role: 107 + 108 +Пример файла roles/prometheus/tasks/main.yml: 109 + 110 +</details> 111 + 112 +Вопросы на собеседовании 113 + 114 +Хороший набор ответов: [https://habr.com/ru/articles/775560/](https://habr.com/ru/articles/775560/) 115 + 116 +### Linux 117 + 118 +1. 119 + 120 +Что такое systemd 121 + 1. Где находится конфигурация 122 + 1. Какие основные поля в конфигурации 123 +1. 124 + 125 +Какие есть kill сигналы? 126 + 1. Когда мы во время выполнения команды жмем Ctrl + C то какой сигнал отправляется? 127 +1. 128 + 129 +Что такое ядро Linux? 130 + 1. Как посмотреть веросию ядра Linux? 131 + 1. Что такое системные и вызовы и какие бывают? 132 +1. Какой командой посмотреть сетевые интерфейсы? 133 +1. Какой командой посмотреть какие приложения занимают те или иные порты? 134 +1. Как забрать права на доступ к файлу или директории в linux? 135 +1. 136 + 137 +Как можно запланировать выполнение комманды по расписанию, например каждую минуту? 138 + 1. Как помотреть список уже запланированных заданий? 139 +1. 140 + 141 +Что такое SSH? 142 + 1. Что нужно чтобы подключиться к удаленному серверу через SSH? 143 + 1. Как посмотреть запущен ли SSH сервер на linux хосте? 144 + 1. Где находится конфигурация SSH сервера? 145 + 1. Где хранятся ssh ключи текущего пользователя? 146 +1. Как установить программму в Linux Ubuntu? 147 +1. Как обновить все программы? 148 +1. Как посмотреть информацию о комманде или программе? 149 +1. Как заменить одно слово на другое в файле? 150 +1. 151 + 152 +Как редактировать файл в Linux? 153 + 1. Что такое файловый дискриптор? 154 +1. Как посмотреть запущенные процессы? 155 +1. Как завершить запущенный процесс grafana? 156 + 157 +### Git 158 + 159 +1. 160 + 161 +Как создать новую ветку? 162 + 1. Как переключиться на другую ветку? 163 +1. Как откатиться на несколько версий назад чтобы последние изменения ищезли? 164 +1. Как отправить наши текущие изменения в удаленный репозиторий? 165 +1. 166 + 167 +Как выполнить добавление изменений из одной ветки в другую? 168 + 1. Что делать если при этом возник конфликт? 169 +1. Как скачать себе локально последние изменения из удаленного репозитория (репозиторий уже есть на компьютере)? 170 +1. Чем отличается tag от branch? 171 +1. Чем отличается fetch от pull? 172 + 173 +### GitLab 174 + 175 +1. 176 + 177 +Что такое GitLab CI/CD и CI/CD в целом? 178 + 1. Какие поля есть в шагах (stages)? 179 + 1. Как хранить пароли? 180 + 1. Как сделать так чтобы два или больше шагов запускались одновременно? 181 +1. Что такое артефакты и где они хранятся 182 +1. Что такое stage, preprod, prod окружения? 183 +1. Как склонировать себе локально git репозиторий из gitlab используя ssh? 184 + 185 +### Сеть и сетевые технологии 186 + 187 +1. Что такое прокси и чем отличается от VPN? 188 +1. Что такое балансировщик нагрузки? 189 +1. Что такое кэширующий сервер и какие проблемы решает? 190 +1. 191 + 192 +Что такое выделенный IP адресс в cloud? 193 + 1. Как правильно ограничить трафик к нашему приложению чтобы оно было доступно только нам? 194 +1. 195 + 196 +Какие есть уровни модели TCP/IP и пример протоколов на каждом из них? 197 + 1. 198 + 199 +В чем разница между TCP и UDP? 200 + 1. Что такое трехстороннее рукопожатие? 201 + 1. 202 + 203 +В чем разница между HTTP и HTTPS? 204 + 1. Опишите жизненный цикл запроса HTTP 205 + 1. Какие существуют методы HTTP? 206 + 1. Какие существуют коды/статусы ответа HTTP? 207 + 1. Какие распространненые заголовки HTTP? 208 + 1. Что такое TLS и как работает? 209 + 1. Что такое SMTP и как работает? 210 + 1. В чем разница между IP и MAC адресами? Для чего они используется? 211 + 1. Какие основные виды HTTP запросов существуют? 212 +1. Что такое TTL (Time to Live)? 213 +1. Как работает DHCP? 214 +1. 215 + 216 +Что такое DNS сервер? 217 + 1. По какому протоколу работает? 218 + 1. Что должен делать если не нашел запись у себя в конфигурации? 219 + 220 +### Docker и работа с упакованными в контейнер приложениями 221 + 222 +1. Чем контейнеризация Docker отличается от виртуализаии? 223 +1. Чем отличается контейнер от образа (image)? 224 +1. 225 + 226 +Как создать свой образ docker? 227 + 1. Что такое базовый образ? 228 + 1. Чем хорошо образ alpine linux и чем он отличается например от образа ubuntu linux? 229 + 1. В чем отличия между COPY и ADD? 230 + 1. Есть ли отличия между CMD и ENTRYPOINT и можно ли их использовать вместе? 231 + 1. Где лучше хранить собраные образы docker? 232 +1. 233 + 234 +Как запустить несколько образов вместе на своем компьютере для тестирования? 235 + 1. Можно ли в docker compose ограничить использование RAM и CPU для отдельных контейнеров? 236 + 1. Сохранятся ли данные записанные приложением в контенйнере на диск после его перезапуска? 237 + 1. Что такое volumes и для каких приложений использовать их нужно? 238 + 1. Как настроить контейнер так чтобы он перезапускался сам если приложение внутри сломается? 239 +1. Где хранятся volumes и logs в docker? 240 + 241 +### Облачные технологии 242 + 243 +1. Для чего нам вообще нужны облака? 244 +1. Что такое SaaS, PaaS и IaaS, в чем между ними разница? 245 +1. Что такое VPC, Security Group и EIP например в AWS? 246 + 247 +### Ansible и Terraform (инфраструктура как код) 248 + 249 +1. VPC, виртуальные машины или например EIP каким бы инструментом создавал? 250 +1. Устанавливал бы docker на linux машину, обновлял сервис, давал права на директорию? 251 + 252 +### Kubernetes или коротко k8s 253 + 254 +1. 255 + 256 +Какие компоненты должны быть установлены на master node? 257 + 1. А какие на worker node? 258 +1. 259 + 260 +Что такое etcd? 261 + 1. Какой тип у этой базы данных? 262 + 1. Почему в etcd должно быть нечетное количество реплик? 263 +1. 264 + 265 +Как настраивается сеть в k8s? 266 + 1. Что такое CNI? 267 + 1. Каким образом каждому pod выдается отдельный IP? 268 +1. 269 + 270 +Что такое service? 271 + 1. Как с помощью service обратиться к pod в другом namespace? 272 + 1. Является ли service DNS именем? 273 + 1. По какому правилу service будет распределять трафик между pod? 274 + 1. Чем отличаются service вида headless и clusterIP? 275 +1. 276 + 277 +Какие виды prob вы знаете? 278 + 1. Для чего нужна каждая из них? 279 +1. 280 + 281 +Сколько контейнеров может быть в одном pod? 282 + 1. Нужно ли создавать service для того чтобы контейнеры отправляли друг другу запросы в рамках одного pod? 283 +1. 284 + 285 +Какие ingress контроллеры вы знаете? 286 + 1. Что такое ingress, какие ресурсы он связывает на сетевом уровне? 287 + 1. Как в ingress использовать SSL сертификаты? 288 +1. Чем отличаются annotations от labels и приведите по одному примеру использования? 289 +1. Основные различия между Deployment, StatefulSet и DaemonSet? 290 +1. 291 + 292 +Что такое lifecycle хуки? 293 + 1. Для чего используется preStop хук с sleep 10 функцией? 294 +1. 295 + 296 +Для чего нужны лимиты (limits) и запросы (requests) у pod? 297 + 1. HPA при расчетах использует limits или requests? 298 + 1. Планировщик при выборе на какую node размещать pod учитывает limits? 299 +1. Каким образом можем ограничить права пользователей в k8s? 300 +1. Чем так удобны helm charts? 301 +1. Какие основные компоненты чарта? 302 +1. Что находится в файле values.yaml и Chart.yaml? 303 +1. Для чего в папке templates создают файл _helpers.tpl? 304 +1. Как создать цикл который создаст несколько сущностей (например ports в service)? 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 и разным зонам (датацентрам)_ 307 + 308 +### Vault 309 + 310 +1. Для чего нужен Vault? 311 +1. Что такое KV secrets engine в vault? 312 +1. Как сделать так чтобы в Kubernetes использовать например для Deployment секреты из Vault? 313 + 314 +### Сервисная сетка (service mesh) 315 + 316 +### Jaeger трейсинг запросов 317 + 318 +1. Что нужно сделать в приложении чтобы его трейсы появились в Jaeger? 319 + 320 +### Flux и Flagger (канареечные релизы) 321 + 322 +