October 30, 2018

Конфигурации Kubernetes

Kubernetes можно установить в различных конфигурациях. Ниже кратко представлены четыре основных типа установки:

  • All-in-One Single-Node Installation

С все-в-одном (all-in-one) — master и node worker устанавливаются на одном узле. Это очень полезно для обучения, разработки и тестирования. Ни в коем случае не использовать продакшене! Minikube является одним из таких примеров.

  • Single-Node etcd, Single-Master, and Multi-Worker Installation

В этой настройке у нас есть один главный узел (master), который также запускает экземпляр etcd с одним узлом. Несколько рабочих узлов подключены к главному узлу.

  • Single-Node etcd, Multi-Master, and Multi-Worker Installation

В этой настройке у нас есть несколько главных узлов, которые работают в режиме HA, но у нас есть экземпляр etcd с одним узлом. Несколько рабочих узлов подключены к главным узлам.

  • Multi-Node etcd, Multi-Master, and Multi-Worker Installation

В этом режиме etcd настраивается в кластерном режиме, вне кластера Kubernetes, и узлы подключаются к нему. Главные узлы настраиваются в режиме высокой готовности, подключаясь к нескольким рабочим узлам. Это самая предварительная и самая порекомендованная установка продукции.

Инфраструктура для установки Kubernetes

После того, как мы определимся с типом установки, нам также необходимо принять некоторые инфраструктурные решения:

  • Настраиваем Kubernetes на «железном» сервере, публичном облаке или частном облаке?
  • Какую операционную систему будем использовать? Это будет RHEL, CoreOS, CentOS или что-то еще?
  • Какое сетевое решение мы должны использовать?

Установка на localhost

Существует несколько вариантов установки localhost для развертывания одно-или многоузловых кластеров Kubernetes на нашей рабочей станции / ноутбуке:

Minikube является предпочтительным и рекомендуемым способом, чтобы установаить Kubernetes all-in-one.

On-primise установка

Kubernetes может быть установлен локально на виртуальную машину и «железный» физический сервер:

  • On-Premise VMs

Kubernetes может быть установлен на виртуальные машины, созданные через Vagrant, VMware vSphere, KVM, и т.д. Существуют различные инструменты, доступные для автоматизации установки, как Ansible или kubeadm.

  • On-Premise на «железный» сервер

Kubernetes может быть установлен физический выделенный сервер, поверх различных операционных систем, как RHEL, CoreOS, CentOS, Fedora, Ubuntu, и т.д. Большинство инструментов, используемых, чтобы установить VMs, может использоваться и на выделенном сервере.

Облачная установка

Kubernetes может устанавливаться и управляться на почти любой облачной платформе:

  • Хостинг-решения

При использовании хостинг-решения, любое программное обеспечение полностью управляется поставщиком этих услуг. Пользователю останется только оплатить хостинг и управление. Ниже приведены примеры поставщиков хостинг-решения для Kubernetes:

  • Облачные решения "под ключ"

Для Kubernetes есть несколько готовых облачных решений, с помощью которых Kubernetes можно установить с помощью нескольких команд на базовой платформе IaaS:

  • Выделенный физический сервер

Kubernetes может быть установлен на железном сервере, предоставляемом различными поставщиками облачных служб.