Тренинг
Kubernetes для Java разработчиков
В наши дни микросервисы стали стандартом де-факто, поэтому ожидания от Java разработчиков теперь распространяются не только на написание кода, но и на его поставку на различные окружения. Для этого не нужно изобретать свои велосипеды, есть уже готовые решения в виде Docker для контейнеризации микросервисов и Kubernetes как платформы оркестрации контейнеров. С помощью данных инструментов Java разработчик может эффективно разворачивать, масштабировать, тестировать, мониторить и отлаживать свой микросервис как на локальной машине, так и на внешних окружениях.
Цели и задачи тренинга
- разобраться с принципами создания cloud-native микросервисов на примере платформы Spring Boot;
- существенно сократить время на изучение Docker/Kubernetes до уровня практического использования;
- узнать о лучших практиках и анти-паттернах, накопленных на опыте множества команд и компаний;
- разобраться в принципах работы достаточно глубоко, чтобы применять инструменты с пониманием;
- получить направления для дальнейшего углубленного изучения;
- понять как развивается экосистема Docker/Kubernetes и где находить решения для своих проблем и задач.
- Целевая аудитория
- Java разработчики, архитекторы, технические лидеры
- Стоимость
- 600 $за участника
- Дата и время
- 27 часов
Детальная программа
Часть 1
- Краткое введение в микросервисную архитектуру.
- Архитектурные атрибуты как основной драйвер требований к инфраструктуре.
- Определение cloud native для микросервисов.
- Принципы построения cloud native микросервисов на Spring Boot.
- Docker и принципы неизменяемой инфраструктуры.
- Упаковка Spring Boot микросервиса в Docker образ.
- Использование контейнеров для эффективной локальной разработки.
Часть 2
- Требования к современной платформе контейнерной оркестрации.
- Архитектура K8S и основные концепции.
- Принципы декларативного описания инфраструктуры.
- Обзор разнообразных клиентов для работы с K8S API.
- Варианты установки K8S.
- Детальное знакомство с kubectl.
- Возможности по валидации K8S манифестов.
Часть 3
- Pod как базовая абстракция.
- Возможности разработчика на уровне описания ресурса Pod.
- Scheduler и его принцип работы, возможности влияния на него.
- Реализация Service Discovery на базе ресурса Service.
- Масштабирование и управление версиями с помощью ресурсов Deployment и ReplicaSet.
- Гибкая конфигурация с ресурсом ConfigMap.
- Управление секретами с помощью ресурса Secret и альтернативные подходы.
- Решение административных задач с помощью ресурса DaemonSet, Job и CronJob.
- Принцип работы сервисов с состоянием при использовании ресурса StatefulSet.
- Полноценное разворачивание Spring Boot микросервиса в K8S.
- Дополнительные возможности с Spring Cloud Kubernetes.
Часть 4
- Управление сетевым взаимодействием в K8S.
- Управление HTTP трафиком с помощью ресурса Ingress.
- Безопасность в K8S, реализация RBAC.
- Варианты автоматизации масштабирования сервисов.
- Обеспечение высокой доступности сервиса в K8S.
- Инструменты для эффективной локальной разработки с K8S.
- Паттерны гибкого деплоймента в K8S.
Часть 5
- Кастомизация манифестов с Kustomize.
- Шаблонизация манифестов с Helm.
- Использование Helm для полного цикла разворачивания и конфигурации приложений в K8S.
- Изменение или валидация ресурсов с Admission Control.
- Возможности по расширению K8S с CRD и операторами.
- Концепция Service Mesh на примере Istio.
- Организация CD в gitops стиле с ArgoCD.
- Анти-паттерны использования K8S.
История проведения
- 6-25 марта, 2024онлайн9 занятий в Zoom по понедельникам, средам и пятницам с 16:00 до 19:00 (3 часа).
- 18 сентября - 6 октября, 2023онлайн9 занятий в Zoom по понедельникам, средам и пятницам с 16:00 до 19:00 (3 часа).
- 9-28 ноября, 2022онлайн9 занятий в Zoom по понедельникам, средам и пятницам с 17:00 до 20:00 (3 часа).
- 7-26 сентября, 2022онлайн9 занятий в Zoom по понедельникам, средам и пятницам с 17:00 до 20:00 (3 часа).
- 14 июня - 2 июля, 2022онлайн9 занятий в Zoom по вторникам и четвергам с 17:00 до 20:00 (3 часа), а также субботам с 10:00 до 13:00 (3 часа).
- 4-20 мая, 2022онлайн8 занятий в Zoom по понедельникам, средам и пятницам с 17:00 до 20:00 (3 часа).
- 11-29 апреля, 2022онлайн9 занятий в Zoom по понедельникам, средам и пятницам с 17:00 до 20:00 (3 часа).
- 13-14 марта, 2020Киев, УкраинаТренинг “Kubernetes for Java developers”
