Тренинг

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”