Aноним
			- #1
 
Эксплуатация и разработка в Kubernetes [Евгений Ахметзянов, Кирилл Демченко]
- Ссылка на картинку
 
Kubernetes даёт вам фреймворк для гибкой работы распределённых систем
Контейнеры — отличный способ связать и запустить ваши приложения, но контейнерами необходимо управлять, и с этим как раз поможет Kubernetes. Он занимается масштабированием приложений и обработкой ошибок в них, предоставляет шаблоны развёртывания и многое другое.
Это курс для специалистов с опытом, которые хотят профессионально вырасти
Нужно знать основы программирования, операционную систему Linux и популярные DevOps-инструменты, такие как Git и Docker
Программа:
Знакомство с Kubernetes
						Контейнеры — отличный способ связать и запустить ваши приложения, но контейнерами необходимо управлять, и с этим как раз поможет Kubernetes. Он занимается масштабированием приложений и обработкой ошибок в них, предоставляет шаблоны развёртывания и многое другое.
Это курс для специалистов с опытом, которые хотят профессионально вырасти
Нужно знать основы программирования, операционную систему Linux и популярные DevOps-инструменты, такие как Git и Docker
Программа:
Знакомство с Kubernetes
- Знакомство с курсом
 - Узнаете, как организовано обучение: из чего состоит программа курса, как устроен учебник, какие учебные активности вас ждут.
 - Настройка окружения
 - Узнаете, что такое Kubernetes, установите и настроите основные утилиты, которые нужны для работы с кластером и создания контейнеров.
 - Упаковка приложения в контейнер
 - Познакомитесь с Docker, Image, Container Registry и Dockerfile. Напишете инструкцию для создания образа с приложением, поднимете приложение локально в Docker и проверите, корректно ли оно работает.
 - Погружение в Kubernetes
 - Напишете инструкции по развёртыванию приложения на понятном для Kubernetes языке «манифестов» — специальных YAML‑файлов. Убедитесь, что приложение работает корректно.
 - Работа с Ingress и вывод приложения в мир
 - Сделаете приложение доступным для внешнего мира по доменному имени, чтобы к запущенному приложение в K8s было удобно подключаться.
 
- Приложения в облаке
 - Узнаете о принципах Cloud Native, которые используются для запуска приложений в облачной инфраструктуре. Ключевые из них: контейнеризация, микросервисная архитектура и оркестрация контейнеров.
 - Docker и Kubernetes
 - Разберётесь в работе контейнеров: как они запускаются и какие механизмы используют. Затем запустите своё приложение в Docker‑контейнере.
 - Базовые абстракции в Kubernetes
 - Запустите приложение в Kubernetes.
 - Развернёте приложение в Kubernetes и запустите его с помощью утилиты kubectl, создадите базовые абстракции
 
- Stateful- и stateless-приложения
 - Познакомитесь с понятиями stateless и stateful, узнаете об их особенностях, преимуществах и недостатках. Научитесь классифицировать приложения с точки зрения stateless и stateful.
 - Deployment, запуск stateless-приложений
 - Узнаете, как связаны объекты Kubernetes и YAML‑манифесты, познакомитесь с абстракциями ReplicaSet и Deployment, а также развернёте в кластере stateless-приложение.
 - StatefulSet, запуск stateful‑приложений
 - Поймёте, чем StatefulSet отличается от Deployment и как правильно с ним работать.
 - Абстракция DaemonSet
 - Познакомитесь с «демонами» и узнаете, как с помощью DaemonSet запускать приложение в кластере.
 - Job, CronJob
 - Научитесь управлять процессами, которые завершаются после выполнения работы с помощью абстракции Job, и запускать подобные задачи по расписанию с помощью CronJob.
 
- Архитектура Kubernetes
 - Узнаете, из каких компонентов состоит кластер, как эти компоненты взаимодействуют друг с другом, какая роль отводится каждому из них в процессе запуска контейнеров и управления ими.
 - Сеть в Kubernetes
 - Поймёте, как поды и узлы (англ. nodes) связываются между собой, а также расширите свои знания о типах Service.
 - Service Discovery
 - Разберётесь, как приложения в Kubernetes взаимодействуют друг с другом и с сервисами внутри и вне кластера, а также как реализуется механизм динамического обнаружения нагрузок и как маршрутизируется трафик.
 - Настроите взаимодействие приложений в кластере с помощью механизма Service Discovery, предоставите внешний доступ к приложению и маршрутизируете трафик при помощи Ingress, выполните траблшутинг в Kubernetes
 
- Жизненный цикл подов
 - Рассмотрите, какие состояния у контейнеров и подов могут быть в Kubernetes. Узнаете, на какие инструменты опирается платформа, чтобы управлять подом, как смотреть журнал событий, какие события бывают в кластере.
 - Управление жизненным циклом подов
 - Поймёте, какие сигналы Kubernetes может посылать запущенным в нём приложениям и как он это делает.
 - Структурные паттерны
 - Разберёте структурные паттерны в Kubernetes, которые помогают создать более чёткую иерархию компонентов и улучшить взаимодействие между сервисами.
 - Развернёте небольшое самописное приложение в Kubernetes и настроите различные пробы, чтобы сделать его более надёжным
 
- Введение в Helm и управление пакетами в Kubernetes
 - Разберёте, что такое пакетные менеджеры и какой из них подходит для приложений в Kubernetes. Узнаете, что из себя представляет Helm и какие проблемы может решать, из чего состоит Helm-чарт, как пользоваться шаблонами и как можно сформировать свой Helm-пакет.
 - Разработка Helm-чартов
 - Погрузитесь в процесс создания собственного чарта: подробно рассмотрите структуру чарта, возможности шаблонизации, а также инструменты для диагностики и устранения ошибок при разработке чарта.
 - Управление Helm-релизами
 - Узнаете, как можно управлять Helm-релизами, задавать параметры, устанавливать релизы, откатывать их или удалять при необходимости.
 - Продвинутые возможности Helm и управление зависимостями
 - Поймёте, как управлять зависимостями чартов, выполнять операции на разных этапах их жизненного цикла и использовать плагины для расширения возможностей Helm.
 
- Управление ресурсами: введение
 - Поймёте, какие ресурсы кластера Kubernetes нам доступны, какое количество ресурсов на самом деле можно использовать. Научитесь заранее оценивать, насколько кластер Kubernetes готов для развёртывания нашего приложения.
 - Что такое Scheduler и зачем это нужно
 - Узнаете, как Kubernetes выбирает узел, на котором стоит разместить под, что такое запрашиваемые ресурсы и каким образом можно ограничить их потребление, познакомитесь с механизмами распределения ресурсов узлов между подами.
 - Умное размещение приложения в кластере
 - Разберётесь в отказоустойчивости и доступности приложений — насколько Kubernetes заботится об этих факторах «из коробки», какие инструменты предоставляет и что мы можем получить при их использовании.
 - Виды масштабирования в Kubernetes
 - Погрузитесь в масштабирование в Kubernetes: узнаете, какие бывают виды масштабирования и чем они различаются, какой вид использовать в том или ином случае и как это делать.
 - Практическое применение автомасштабирования в Kubernetes
 - Поймёте, как ведёт себя автомасштабирование в реальных условиях и как можно дорабатывать его в зависимости от специфики приложения.
 
- Понятие CI/CD-конвейера и его назначение
 - Познакомитесь с практиками и методиками CI/CD, инструментами для их реализации, поймёте связь между CI/CD и Kubernetes, научитесь решать проблемы при помощи CI/CD‑конвейера и рассмотрите лучшие практики в этом.
 - CI/CD-конвейер на примере GitLab CI
 - Подготовите окружение и познакомитесь с пайплайном, настроите раннер/воркер для CI/CD‑инструмента, развернёте приложение.
 - Настройка версионирования в GitLab
 - Рассмотрите подходы к версионированию, их преимущества и недостатки. Разберёте пример настройки версионирования в GitLab. Узнаете, как работают helm lint и kubectl --dry-run.
 - Организуете процесс Continuous Delivery при помощи GitLab CI
 
- Введение в мониторинг приложений
 - Разберётесь, что такое мониторинг, какие перед ним стоят цели и задачи, какие есть виды классификации мониторинга.
 - Мониторинг приложений Kubernetes с помощью Prometheus
 - Познакомитесь с Prometheus: узнаете, как использовать его инструменты для мониторинга приложений, как собирать разные метрики с его помощью и какую функциональность он предлагает.
 - Продвинутые стратегии масштабирования с использованием Prometheus
 - Научитесь масштабировать приложения в соответствии с реальными условиями нагрузки, избегать избыточного или недостаточного использования ресурсов, создавать более стабильную и предсказуемую инфраструктуру.
 - Настроите мониторинг приложения в K8s
 
- Обзор продвинутых стратегий развёртывания в Kubernetes
 - Познакомитесь с базовыми концепциями продвинутых стратегий развёртывания: Blue/Green, Canary, Rolling Updates. Поймёте их различия, преимущества и недостатки, а также как эти подходы помогают минимизировать простои и риски при вводе новых версий приложений.
 - Практическая реализация Blue/Green-развёртывания
 - Настроите Blue/Green-развёртывание, научитесь использовать Service и Ingress для переключения трафика.
 - Развёртывание Canary и прогрессивный выпуск изменений
 - Узнаете, как Canary-развёртывание позволяет постепенно вводить новую версию для части трафика, анализировать её работу по метрикам и принимать решение о полном переключении или откате.
 - Выберете и реализуете одну стратегию развёртывания приложения
 
								Показать больше
					
			
			
											
												
													Зарегистрируйтесь
												
											, чтобы посмотреть скрытый контент.