Хабрахабр

Kubespray-as-a-Service — добавляем Kubernetes к любому облаку

image

Мы используем несколько провайдеров и ни у одного из них нет Kubernetes-as-a-Service. Вам нужен Kubernetes, а у вашего облачного провайдера такой услуги нет? И даже немного больше. Wigin это очень простой в использовании веб-сервис с UI, который может быстро и просто развернуть кластер Kubernetes на любые серверы.

Концепция

Сервис называется Wigin по трем причинам. Первая причина в том, что мы используем kubespray для развертывания kubernetes, а kubespray весь сделан на Ansible. Вторая состоит в том, что Ansible это Philotic Parallax Instantaneous Communicator — устройство для мгновенной коммуникации на любом расстоянии. Именно его использовал Эндер Виггин (Wiggin) для геноцида Жукеров. Почитайте «Игра Эндера».

Третья причина — домен wiggin.io был занят.

Раз конфигурация хранится в облаке, значит кластером можно управлять откуда угодно, и можно давать доступ к конфигурации и управлению кластером другим пользователям. Концепция Wigin состоит в том, чтобы в пару кликов разворачивать кластер Kubernetes на любые доступные по IP серверы, делать это из веб-сервиса, который будет хранить конфигурацию кластера.

В результате вы получите кластер kubernetes в режиме HA, который можно будет масштабировать также через Wigin. При этом для конфигурации кластера мы не изобретаем паровоз, а используем стандартный kubespray, который, по сути, есть набор ansible плейбуков.

Как это работает

Конфигурация кластера не займет более 5 минут.

  1. Вы логинитесь в Wigin и создаете новый кластер.
  2. Затем вам нужно скачать или скопировать SSH ключ, который нужно положить на серверы, которые вы будете использовать для вашего кластера. Этот автоматически сгенерированный ключ, специально для вашего кластера. Он нужен, чтобы Wigin мог разворачивать ансибл плейбуки на серверах.

    Как добавить SSH ключ на существующий сервер

    Если ваш сервер уже создан, то проще всего сделать следующее:

    cat <PUBLIC_KEY_FILE> | ssh root@<SERVER_IP> "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

    Консоль спросит у вас пароль от указанного пользователя (в данном примере — root).
    PUBLIC_KEY_FILE — файл с ключом, который вы скачали из Wigin;
    SERVER_IP — адрес вашего сервера.
    Еще больше вариантов здесь.

  3. Затем нужно ввести список IP адресов ваших серверов. Не забудьте нажать +.
  4. Осталось только нажать Deploy Cluster.

После успешного выполнения плейбука появится инструкция, и вы сможете скачать kubeconfig файл для доступа к кластеру. В дальнейшем мы также планируем добавить возможность конфигурации настроек плейбука. Все, ваш Kubernetes up&running. Кстати, вигин бесплатный и будет таковым оставаться.

Но все может быть интереснее

Сейчас Wigin разворачивает кластер Kubernetes, но на месте kubespray может быть любое приложение для которого есть ansible playbook. Значит таким образом можно разворачивать любое кластерное приложение.

Теги
Показать больше

Похожие статьи

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Кнопка «Наверх»
Закрыть