Перейти к содержанию

Содержание

🔹 Этап 1. Основы Docker (если не уверен на 100%)

Если Docker знаком — переходи к следующему этапу.

  1. Контейнеры vs Виртуальные машины

  2. Docker CLI:

    • docker build, run, ps, exec, logs
  3. Docker Compose

  4. Работа с Docker Hub и Dockerfile

  5. Сетевые и томовые конфигурации


🔹 Этап 2. Введение в Kubernetes (K8s)

  1. Что такое Kubernetes и зачем он нужен

  2. Основные компоненты:

    • Master Node: kube-apiserver, scheduler, controller-manager, etcd

    • Worker Node: kubelet, kube-proxy, container runtime

  3. Архитектура: pod → deployment → service → ingress

📘 Рекомендуемый курс: Kubernetes the Hard Way by Kelsey Hightower (опционально)


🔹 Этап 3. Работа с Kubernetes локально

  1. Установка Minikube или kind (или k3s для lightweight-версии)

  2. kubectl — CLI-инструмент:

    • kubectl get, describe, apply, delete, logs, exec
  3. Манифесты YAML:

    • Pods

    • Deployments

    • Services

    • Namespaces

🧪 Практика: разверни nginx и доступ к нему через LoadBalancer/NodePort/Ingress


🔹 Этап 4. Продвинутая конфигурация

  1. ConfigMap и Secrets

  2. Volumes (Persistent Volume и Claims)

  3. Probes (readiness/liveness/startup)

  4. ServiceAccount, RBAC

  5. Helm: пакетный менеджер для Kubernetes

🧪 Практика: задеплой приложение с конфигом, секретами и подключенной БД


🔹 Этап 5. CI/CD и GitOps

  1. CI/CD с GitLab CI, GitHub Actions, ArgoCD или Flux

  2. Helm Charts как часть пайплайна

  3. Автодеплой по git push с использованием GitOps


🔹 Этап 6. Облачные кластеры и продакшн

  1. Managed Kubernetes:

    • GKE (Google)

    • EKS (AWS)

    • AKS (Azure)

  2. Мониторинг и логирование:

    • Prometheus + Grafana

    • Loki, ELK stack

  3. Horizontal Pod Autoscaler (HPA)

  4. Network policies и безопасность

  5. Backup/Restore: Velero, etcd snapshots


🔹 Этап 7. Advanced

  1. Custom Resource Definitions (CRD)

  2. Operators

  3. Multi-cluster и Federation

  4. Service Mesh (Istio, Linkerd)

  5. Kubernetes API и разработка контроллеров


🧰 Инструменты, которые стоит изучить:

  • kubectl, k9s, stern, kubectx, kubens

  • Helm, Kustomize

  • Lens — визуальный интерфейс

  • Terraform (для автоматизации инфраструктуры)


📚 Ресурсы: