Skip to content

Latest commit

 

History

History
49 lines (41 loc) · 4.64 KB

15.4.md

File metadata and controls

49 lines (41 loc) · 4.64 KB

Домашнее задание к занятию 15.4 "Кластеры. Ресурсы под управлением облачных провайдеров"

Организация кластера Kubernetes и кластера баз данных MySQL в отказоустойчивой архитектуре. Размещение в private подсетях кластера БД, а в public - кластера Kubernetes.


Задание 1. Яндекс.Облако (обязательное к выполнению)

  1. Настроить с помощью Terraform кластер баз данных MySQL:
  • Используя настройки VPC с предыдущих ДЗ, добавить дополнительно подсеть private в разных зонах, чтобы обеспечить отказоустойчивость
  • Разместить ноды кластера MySQL в разных подсетях
  • Необходимо предусмотреть репликацию с произвольным временем технического обслуживания
  • Использовать окружение PRESTABLE, платформу Intel Broadwell с производительностью 50% CPU и размером диска 20 Гб
  • Задать время начала резервного копирования - 23:59
  • Включить защиту кластера от непреднамеренного удаления
  • Создать БД с именем netology_db c логином и паролем
  1. Настроить с помощью Terraform кластер Kubernetes
  • Используя настройки VPC с предыдущих ДЗ, добавить дополнительно 2 подсети public в разных зонах, чтобы обеспечить отказоустойчивость
  • Создать отдельный сервис-аккаунт с необходимыми правами
  • Создать региональный мастер kubernetes с размещением нод в разных 3 подсетях
  • Добавить возможность шифрования ключом из KMS, созданного в предыдущем ДЗ
  • Создать группу узлов состояющую из 3 машин с автомасштабированием до 6
  • Подключиться к кластеру с помощью kubectl
  • *Запустить микросервис phpmyadmin и подключиться к БД, созданной ранее
  • *Создать сервис типы Load Balancer и подключиться к phpmyadmin. Предоставить скриншот с публичным адресом и подключением к БД

Документация


Задание 2. Вариант с AWS (необязательное к выполнению)

  1. Настроить с помощью terraform кластер EKS в 3 AZ региона, а также RDS на базе MySQL с поддержкой MultiAZ для репликации и создать 2 readreplica для работы:
  • Создать кластер RDS на базе MySQL
  • Разместить в Private subnet и обеспечить доступ из public-сети c помощью security-group
  • Настроить backup в 7 дней и MultiAZ для обеспечения отказоустойчивости
  • Настроить Read prelica в кол-ве 2 шт на 2 AZ.
  1. Создать кластер EKS на базе EC2:
  • С помощью terraform установить кластер EKS на 3 EC2-инстансах в VPC в public-сети
  • Обеспечить доступ до БД RDS в private-сети
  • С помощью kubectl установить и запустить контейнер с phpmyadmin (образ взять из docker hub) и проверить подключение к БД RDS
  • Подключить ELB (на выбор) к приложению, предоставить скрин

Документация