Перейти к содержанию

Установка через Docker Compose

Требования к вычислительной мощности

Для функционирования Нимбиус требуется минимальные технические требования:

  • 4 физических ядра ЦП;
  • 16 ГБ RAM;
  • 16 ГБ дискового пространства.

Требования к установленному ПО

Для запуска Нимбиус необходимо предварительно установить Docker до актуальной версии.

$ sudo docker version

Client:
    Version:            20.10.21
    API version:        1.41
    Go version:         go1.18.1
    Git commit:         20.10.21-0ubuntu1\~22.04.3
    Built:              Thu Apr 27 05:57:17 2023
    OS/Arch:            linux/amd64
    Context:            default
    Experimental:       true

Server:
    Engine:
        Version:        20.10.21
        API version:    1.41 (minimum version 1.12)
        Go version:     go1.18.1
        Git commit:     20.10.21-0ubuntu1\~22.04.3
        Built:          Thu Apr 27 05:37:25 2023
        OS/Arch:        linux/amd64
        Experimental:   false
    containerd:
        Version: 1.6.12-0ubuntu1\~22.04.3
        GitCommit:
    runc:
        Version: 1.1.7-0ubuntu1\~22.04.2
        GitCommit:
    docker-init:
        Version: 0.19.0
        GitCommit:

Содержимое дистрибутива

В состав дистрибутива входят:

  • data - директория, в которой хранятся служебные файлы приложений;
  • docker-compose.yaml - файл для развертывания продукта;
  • .env - переменные конфигурации Нимбиус;
  • images.tar - образы контейнеров Нимбиус;
  • terraform-assets - сформированные манифесты terraform для работы с Yandex.Cloud.

Конфигурации переменных хранятся в файле «.env»

## Базовая конфигурация:

# Тег образов компонентов
NIMBIUS_IMAGE_TAG=latest

# Сервер БД. По умолчанию используется контейнер с именем хоста 'nimbius-db'
DB_SRV=nimbius-db

# Порт БД
DB_PORT=5432

# Пользователь БД
DB_USER=miq

# Пароль БД
DB_PASSWD=miq

# Имя БД. По умолчанию, при первом запуске сервер
# генерирует БД с именем 'vmdb_production'
DB_NAME=vmdb_production

# Публичный IP или имя хоста
PUBLIC_IP=10.31.136.146

# Публичный порт портала администратора
PUBLIC_ADMIN_PORT=8443

# Публичный порт портала пользователя
PUBLIC_USER_PORT=443

# Устанавливать пакет дополнение Нимбиус
# при первичной инициализации БД (включено=true)
EXT_PACK_INSTALL=true

## Конфигурация сервиса биллинга:
BILLING_DB_NAME=billing
BILLING_DB_USER=billing
BILLING_DB_PASSWD=billing
BILLING_PUBLIC_PORT=3000

## Конфигурация сервиса Terraform:
# Пользователь и пароль БД для сервиса
TF_DB_USER=terraform
TF_DB_PASSWD=terraform-password


## Конфигурация сервиса Keycloak:
# DB name for keycloak data
KC_DB_NAME=keycloak

# Пользователь и пароль БД
KC_DB_USER=keycloak
KC_DB_PASSWD=keycloak

# Публичный порт веб-интерфейса
KC_SERVER_PORT=7788

# Имя пользователя и пароль администратора Keycloack
KC_ADMIN_USERNAME=keycloak
KC_ADMIN_PASSWORD=keycloak

# Переменные для конфига httpd:
OIDC_PROVIDER_METADATA_URL=https://nimbius
OIDC_CLIENT_ID=nimbius
OIDC_CLIENT_SECRET=Ni24MB42IuS
OIDC_OAUTH_INTROSPECTION_ENDPOINT=https://nimbius

Установка сертификатов

При использовании корпоративного или внешнего СА, положить сертификаты SSL ~/nimbius-kazoo/data/certs

Важно

Если не выполнить это действия, будут сгенерированы самоподписанные сертификаты!

Процедура запуска платформы через docker-compose

Перед первым запуском необходимо:

  1. скопировать дистрибутив на целевой хост и распаковать.

    tar -xzf nimbius-kazoo-2.0.0d.tgz
    
  2. добавить образы контейнеров в локальный registry.

    docker load -i images.tar
    
  3. В файле .env изменить необходимые параметры.

  4. (Опциально) При использовании корпоративного или внешнего СА, положить сертификаты SSL ~/nimbius-kazoo/data/certs.

    Важно

    Если не выполнить это действия, будут сгенерированы самоподписанные сертификаты!

  5. Выполнить команду для запуска сервиса

    docker-compose up --d
    

Сервис доступен по адресу

https://<FQDN>:8443

  • Логин по умолчанию: admin
  • Пароль по умолчанию: smartvm

Cервис «Keycloak» доступен по адресу

https://<FQDN>:7788

  • Логин по умолчанию: keycloak
  • Пароль по умолчанию: keycloak

Примечание

Для изменения портов сервисов на собственные необходимо изменить значения PUBLIC_ADMIN_PORT, KC_SERVER_PORT в файле .env

Пояснение к пакету расширений Нимбиус

Пакет расширений загружается при первом запуске сервиса. Для этого необходимо выставить значение true параметра EXT_PACK_INSTALL в файле .env. Если значение параметра false, при запуске сервиса пакет не будет автоматически загружен.

После успешной загрузки пакета расширений в интерфейсе Нимбиус будут присутствовать перечень услуг-шаблонов и дополнительные домены (расширения), как на рисунке ниже.

Перечень услуг-шаблонов:

  • «Виртуальная машина»;
  • «Создание ВМ в публичном облаке Яндекс.Облако»;
  • «Создание ВМ в публичном облаке Селектел»;

Рисунок 1

Процедура остановки платформы

Процедуры запуска и остановки платформы состоят из следующих процессов:

  1. Процессы серверной части
    Для запуска необходимо запустить базу данных затем платформу.
    Для остановки необходимо остановить платформу затем базу данных.

  2. Процессы модуля приложения
    Для запуска необходимо запустить контейнер платформы.

    # sudo docker start NIMBIUS_CONTAINER_NAME
    
    Для остановки необходимо остановить контейнер платформы.
    # sudo docker stop NIMBIUS_CONTAINER_NAME
    
    Для проверки работоспособности сервисов подключитесь к консоли контейнера с приложением и введите команду appliance_console.