Skip to content

Latest commit

 

History

History
57 lines (39 loc) · 4.57 KB

12-kubernetes-01-intro.md

File metadata and controls

57 lines (39 loc) · 4.57 KB

Домашнее задание к занятию "12.1 Компоненты Kubernetes"

Вы DevOps инженер в крупной компании с большим парком сервисов. Ваша задача — разворачивать эти продукты в корпоративном кластере.

Задача 1: Установить Minikube

Для экспериментов и валидации ваших решений вам нужно подготовить тестовую среду для работы с Kubernetes. Оптимальное решение — развернуть на рабочей машине Minikube.

Как поставить на AWS:

  • создать EC2 виртуальную машину (Ubuntu Server 20.04 LTS (HVM), SSD Volume Type) с типом t3.small. Для работы потребуется настроить Security Group для доступа по ssh. Не забудьте указать keypair, он потребуется для подключения.
  • подключитесь к серверу по ssh (ssh ubuntu@<ipv4_public_ip> -i .pem)
  • установите миникуб и докер следующими командами:
  • проверить версию можно командой minikube version
  • переключаемся на root и запускаем миникуб: minikube start --vm-driver=none
  • после запуска стоит проверить статус: minikube status
  • запущенные служебные компоненты можно увидеть командой: kubectl get pods --namespace=kube-system

Для сброса кластера стоит удалить кластер и создать заново:

  • minikube delete
  • minikube start --vm-driver=none

Возможно, для повторного запуска потребуется выполнить команду: sudo sysctl fs.protected_regular=0

Инструкция по установке Minikube - ссылка

Важно: t3.small не входит во free tier, следите за бюджетом аккаунта и удаляйте виртуалку.

Задача 2: Запуск Hello World

После установки Minikube требуется его проверить. Для этого подойдет стандартное приложение hello world. А для доступа к нему потребуется ingress.

  • развернуть через Minikube тестовое приложение по туториалу
  • установить аддоны ingress и dashboard

Задача 3: Установить kubectl

Подготовить рабочую машину для управления корпоративным кластером. Установить клиентское приложение kubectl.

  • подключиться к minikube
  • проверить работу приложения из задания 2, запустив port-forward до кластера

Задача 4 (*): собрать через ansible (необязательное)

Профессионалы не делают одну и ту же задачу два раза. Давайте закрепим полученные навыки, автоматизировав выполнение заданий ansible-скриптами. При выполнении задания обратите внимание на доступные модули для k8s под ansible.

  • собрать роль для установки minikube на aws сервисе (с установкой ingress)
  • собрать роль для запуска в кластере hello world

Как оформить ДЗ?

Выполненное домашнее задание пришлите ссылкой на .md-файл в вашем репозитории.