DevOps2. Использование Kubernetes
Программа курса
Модуль 0. Подготовка стенда в классе
Модуль 1: Развертывание стенда
Теория
Лабораторные работы: Развертывание стенда
1.1 Схема стенда, импорт, настройка и запуск VM gate и server
Запустите с правами Administrator
C:\cmder\cmder.exe
bash
cd
test -d conf && rm -r conf
git clone http://val.bmstu.ru/unix/conf.git
cd conf/virtualbox/
!!! 9 - это номер курса, вместо X укажите Ваш номер стенда, если не знаете его, спросите преподавателя !!!
./setup.sh X 9
1.2 Настройка сети VM gate и server
# sh net_gate.sh
# init 6
# sh net_server.sh
# init 6
1.3 настройка сервисов DNS и DHCP
server:~# sh conf/dns.sh
Настройка клиента
DNS на gate и server
# cat /etc/resolv.conf
search corpX.un
nameserver 192.168.X.10
# nslookup ns
gate:~# sh conf/dhcp.sh
Вопросы
Модуль 2: Развертывание кластера через kubeadm
Теория
Лабораторные работы: Развертывание учебного кластера
2.1 Развертывание кластера
Развертываем с использованием
Технология Vagrant узлы node1,2,3 (!!! в provision_once.sh раскомментировать docker) для кластера
-
-
2.2 Знакомство с k8s
Вопросы
Модуль 3: Развертывание кластера через Kubespray
Теория
Лабораторные работы: Развертывание кластера предприятия
3.1 Подготовка узлов
3.2 Развертывание кластера
3.3 Управление кластером
Вопросы
Модуль 4: Разработка и CI приложения
Теория
Лабораторные работы: Разработка и CI приложения
4.1 Разработка приложения и упаковка его в Docker образ
4.2 Размещение кода и образа приложения в GitLab
-
Docker
Insecure Private Registry на client1 для проверки, можно использовать подсказки из раздела container_registry а затем удалить образ из GitLab
4.3 Сборка образа в k8s
Вопросы
Модуль 5: CD приложения
Теория
Лабораторные работы: CD приложения
5.1 Вручную
5.2 GitOps
6 DEVOPS2
Воспроизводим и качественно продолжаем то, на чем остановились на 1-м курсе
-
-
-
Создаем каталог gowebd-k8s пользователем gitlab-runner,
Пример shell Kubernetes, service и ingress можно оставить из лаборатороной работы 5.1
-
Создаем проект gowebd-k8s, что-бы не “возиться” с ключами ssh, указать:
gitlab-runner@server:~/gowebd-k8s$ git remote add origin http://server.corpX.un/student/gowebd-k8s.git
$ curl https://gowebd.corpX.un -k
5.3 Helm
8 DEVOPS2
-
-
-
-
-
-
Настраиваем
DNS на кластер kube
server# cat /etc/bind/corpX.un
...
webd A 192.168.X.222
A 192.168.X.223
gowebd CNAME webd
...
Возвращаем
DNS на кластер node
Лабораторная работа 4.3
5.4 ArgoCD
!!! ВНИМАНИЕ !!! Вместо 9-го фрагмента записи (его лучше просто просмотреть) рекомендую выполнить лабораторные работы из вебинара Доступ к приложениям в Bare-Metal Kubernetes, там есть все что нужно, плюс, много дополнительного материала !!!
-
Настраиваем
DNS на кластер kube
-
5.5 Работа с хранилищами в Kubernetes
!!! Если есть “настрой”, можно выполнить лабораторные работы из этого вебинара:
5.6 Обновление кластера Kubernetes
!!! Если Вы “еще здесь”)), есть можно выполнить лабораторные работы из этого вебинара:
Вопросы