VK Cloud Solutions logo

Создание кластера Kubernetes

Описание

Кластер Kubernetes состоит из набора машин, так называемых узлов (node's), которые запускают контейнеризированные приложения. Кластер должен иметь как минимум один рабочий узел.

На рабочих узлах размещены поды (pod's), являющиеся компонентами приложения. Внутренние сервисы Kubernetes управляют рабочими узлами и подами в кластере. В промышленных управляющие сервисы обычно запускается на нескольких компьютерах, а кластер, как правило, развёртывается на нескольких узлах, гарантируя отказоустойчивость и высокую надёжность.

Топология кластеров в VK CS включает в себя понятие мастер-узлов, на которых располагаются управляющие сервисы и групп рабочих узлов (Node Group), на которых запущены приложения пользователь. Каждый кластер Kubernetes может содержать несколько групп рабочих узлов, каждая из которых создана на базе определенного шаблона виртуальной машины.

Создание кластера

Для создания кластера следует перейти в раздел панели управления VK CS "Контейнеры" и нажать кнопку "Добавить".

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

  • Dev среда (разработка)
  • Staging среда (пред-релизная среда)
  • Production (боевое или живое окружение, для такой среды рекомендуется минимум 3 мастер-ноды)

Также вы можете выбрать какие предустановленные аддоны будут активированы в кластере:

  • Мониторинг на базе Prometheus Operator и Grafana
  • Docker Registry, хранящий данные images в объектном хранилище MCS
  • Nginx Ingress Controller, для которого дополнительно создается балансировщик нагрузки 

После нажатия кнопки "Следующий шаг" необходимо выбрать конфигурацию кластера:

Мастер создания отражает следующие поля конфигурации:

ПолеОписание
Тип виртуальной машины MasterКонфигурация головного узла - количество CPU и оперативной памяти управляющей машины ("Master"). Для продуктивных сред, рекомендуется минимальная конфигурация CPU=2 RAM=4Gb. 
Количество узлов MasterКоличество управляющих машин (машин типа "Master"). Для production-сред рекомендуется минимум 3 мастер-ноды. 
Размер диска на Master‑узле, GBОбъем диска на управляющих Master-нодах. 
Тип виртуальной машины NodeТип конфигурации для рабочего узла - количество CPU и оперативной памяти.
Количество узлов NodeКоличество рабочих узлов.
Размер диска на Node‑узле, GBОбъем диска для рабочих узлов.
Тип дисков для Master и Node-узловТип дисков (HDD/SSD). 
Версия KubernetesВерсия Kubernetes, которая будет установлена на ноды кластера.
СетьСеть, в которой будет развернут кластер, если она создана. Если сети нет, то для кластера создастся собственная приватная сеть.
Назначить внешний IPЕсли этот переключатель включен, то будет назначен публичный IPv4 адрес для балансировщика нагрузки, управляющего Kubernetes API Server, а также для балансировщика нагрузки, отвечающего за Ingress Controller.
Также можно выбрать создание кластера без внешнего IP для обоих балансировщиков. В этом случае для доступа к кластеру потребуется создание VPN-соединения. 
Имя кластераИмя кластера.
Ключ виртуальной машиныЕсли ключевая пара уже создана, рекомендуется указать её. Необходимо убедиться, что файл от нее сохранен. Также можно создать новую ключевую пару - она нужна для подключения к нодам кластера по ssh.

На следующем шаге будет предложено выбрать количество узлов Node в Node Group по умолчанию. На этапе создания кластера вы можете добавить несколько Node Group разного размера с разными размерами рабочих узлов. Также для каждого Node Group можно активировать параметры автоматического масштабирования.

Для завершения создания кластера потребуется некоторое время.

Все операции, перечисленные выше могут быть выполнены с помощью VK CS Terraform Provider.