
- •Лабораторная работа №1 Создание и настройка виртуальной машины
- •Дополнительное задание
- •Контрольные вопросы
- •Лабораторная работа №2 Базовые команды Docker
- •Установка Docker в Ubuntu 22.04:
- •Запустим hello-world:
- •Метки и удаление образа - docker tag
- •Дополнительное задание
- •Контроольные вопросы
- •Лабораторная работа №3 Контейнер Adminer
- •Подключимся в браузере на хосте к http://127.0.0.1:8080/:
- •Сети - docker network
- •Теперь создадим новую сеть:
- •Теперь пересоздадим контейнеры субд и Adminer в этой сети:
- •Теперь грохнем все контейнеры:
- •Контрольные вопросы
- •Лабораторная работа №4 Знакомство с Kubernetes
- •Создание кластера Kubernetes с PostgreSql и Adminer
- •Контрольные вопросы
- •Лабораторная работа №5 Создание и настройка кластера Kubernetes с распределенной системой из трех взаимосвязанных компонентов
Контрольные вопросы
Что такое kuberneets и зачем он нужен?
Расскажите про основные компоненты kubernetes и покажите их в kube-systems.
Расскажите про создание пода из yaml, основные поля.
Расскажите про сервисы ClusterIp и Headless.
Расскажите про сервисы NodePort и LoadBalancer.
Расскажите про Ingress.
Расскажите про Deployment, StatefulSet и DaemonSet.
Расскажите про Job и CronJob.
Расскажите про ConfigMap и Secret.
Перечислите основные команды kubectl, рассмотренные в лабораторной работе.
Лабораторная работа №5 Создание и настройка кластера Kubernetes с распределенной системой из трех взаимосвязанных компонентов
Цель работы:
Освоить навыки развертывания и управления кластером Kubernetes, а также научиться настраивать взаимодействие между несколькими компонентами в распределенной системе.
Задание:
Ваша задача — создать кластер Kubernetes, состоящий из трех взаимосвязанных компонентов. Компоненты могут быть любыми на ваш выбор, например:
Nginx (веб-сервер), PostgreSQL (база данных) и Adminer (веб-интерфейс для управления БД).
Redis (кэш-сервер), Node.js (веб-приложение) и Prometheus (система мониторинга).
MySQL (база данных), PHP (веб-приложение) и phpMyAdmin (управление БД).
Или любые другие комбинации, которые вы считаете интересными и полезными.
Требования:
Кластер Kubernetes:
Разверните локальный кластер с использованием инструмента kind.
Убедитесь, что все компоненты работают в рамках одного кластера.
Три взаимосвязанных компонента:
Выберите три программы, которые могут взаимодействовать между собой (например, веб-сервер, база данных и интерфейс управления).
Настройте их так, чтобы они могли обмениваться данными или работать совместно.
Документация:
Опишите, какие компоненты вы выбрали и как они связаны между собой.
Укажите, какие проблемы вы решили в процессе настройки.
Проверка работоспособности:
Убедитесь, что все компоненты работают корректно и взаимодействуют друг с другом.
Предоставьте инструкцию по доступу к каждому компоненту (например, URL для веб-интерфейса или команды для проверки подключения к базе данных).
Пример выполнения:
Вы можете выбрать связку Nginx, PostgreSQL и Adminer:
Nginx выступает как веб-сервер.
PostgreSQL — база данных, которая хранит данные.
Adminer — веб-интерфейс для управления PostgreSQL.