Skip to content

Установка

Перед установкой убедитесь, что у вас уже есть файл cldmng-distr, с помощью него будет производиться инсталляция панели управления на ВМ пользователя.

Пошаговая инструкция

1. В директории, где находится cldmng-distr, введите следующую команду:

./cldmng-distr genconfig
Эта команда сгенерирует sample.config.yml.

2. Откройте файл sample.config.yml и заполните нужные параметры.

sample.config.yml состоит из двух частей config и host_lists.

config

В разделе config определяются такие базовые значения, как:

        a. wildcard_ssl_cert

    wildcard_ssl_cert:
        pfx_location: FULL_PATH_TO_YOUR_CERT
        pfx_pass: CERTIFICATE_PASSWORD
В этом блоке содержится информация о Wildcard SSL-сертификате для домена из параметра base_domain.

  • pfx_location - путь до SSL-сертификата в формате pfx.
  • pfx_pass - пароль от SSL-сертификата.

        b. customer_token

    customer_token: PASTE_YOUR_TOKEN_HERE
Сюда нужно вписать guid пользователя, который будет использоваться для аутентификации при подключении к репозиторию, в котором находится дистрибутив.

        c. base_name

    base_name: Contoso
Техническое имя партнёра, которое будет указано в БД. Техническое имя должно быть написано латинскими буквами без пробелов и специальных символов, допустимо использование нижнего подчеркивания.

        d. base_short_name

    base_short_name: "cnts"
Сокращённая версия base_name. Этот параметр будет указан в именах виртуальных машин внутри инфраструктуры. Сокращенное техническое имя партнёра имеет ограничение в 4 символа, оно также должно быть написано латинскими буквами без пробелов и специальных символов.

        e. base_domain

    base_domain: contoso.com
Здесь указывается базовый домен, вокруг которого будет выстраиваться панель управления.

        f. timezone

    timezone: "Europe/Moscow"
Временная зона места, в котором будет развернута панель.

        g. mail

    mail:
        host: mail.ya.ru
        port: 25
        user: support@ya.ru
        pass: ThisIsYourNAilPassword
        from: "user@ya.ru"
        is_starttls_enabled: true
В этом блоке указывается почтовый сервер, через который панель управления будет отправлять email-нотификации.

  • host - почтовый сервер, к которому будет происходить обращение при отправке почты.
  • port - номер порта.
  • user - учётная запись для подключения к серверу.
  • pass - пароль от учётной записи.
  • from - почтовый ящик, с которого будут приходить email-нотификации.
  • is_starttls_enabled - шифрование starttls.
  • name_for_notifications - имя, от которого будут приходить email-нотификации.

        h. support_email

    support_email: support@contoso.com
Почта службы технической поддержки, также сюда будут приходить нотификации о работе сервиса.

        i. win_data_disk

    win_data_disk: ""
Сюда нужно вписать букву диска Windows, где будут храниться сайты и службы.

        j. logos

    logos:
        favicon_path: /logos/favicon.ico
        logo_png_path: /logos/logo.png
        logo_svg_paths: 
            dark: /logos/logo-dark.svg
            white:  /logos/logo-white.svg
В этом блоке содержится информация о логотипах.

  • favicon_path - путь к фавикону.
  • logo_png_path - путь к тёмному логотипу в формате .png.
  • logo_svg_paths - пути к логотипам для тёмной и светлой тем в формате .svg.
    • dark - путь к тёмному логотипу для светлой темы.
    • white - путь к светлому логотипу для тёмной темы.

  • Логотипы в формате .svg должны быть не более 200px в ширину и не более 40px в высоту.
  • Фавикон должен быть в формате .ico и иметь размер 16х16, 32х32 или 48х48.

        k. super_admin

    super_admin:
        user: ""
        pass: ""
В конце процесса установки отправляется запрос на создание учётной записи с ролью суперадмина.

  • user - почта.
  • pass - пароль, который обязательно должен быть на латинице, содержать буквы в нижнем и верхнем регистрах и иметь как минимум один специальный символ.

        l. subdomains

    subdomains:
        admin: admin
        auth: auth
        panel: panel
        api_public: api
        api_partner: api-partner
        api_referral: api-referral
        public_docs: docs
        partner_docs: partner-docs
        static: static
Поддомены, которые будут использоваться для сайтов.

  • admin - эндпоинт для административной панели.
  • auth - эндпоинт для страницы авторизации.
  • panel - эндпоинт для панели управления.
  • api_public - эндпоинт для публичного API.
  • api_partner - эндпоинт для партнерского API.
  • api_referral - эндпоинт для реферального API.
  • public_docs - эндопинт для публичной документации.
  • partner_docs - эндпоинт для партнерской документации.
  • static - URL-адрес со статическими ресурсами для дистрибутива.

        m. features

    features:
        vstack:
            locations:
                - name: location_name
                  inventory_notifications_to:
                    - mail_to_service_notifications@mail.com
                  location_techtitle: ""
                  bandwith_mbps:
                    min: 0
                    max: 0
                  clusters:
                    - name: cluster_name
                      default: true
                      host: https://your.vstack.cluster
                      user: vdc_admin
                      pass: ThisIsPasswordOfYourCluster
                      vdc_id: 111
                    - name: cluster_name
                      default: false
                      host: https://your.vstack.cluster
                      user: vdc_admin
                      pass: ThisIsPasswordOfYourCluster
                      vdc_id: 111                  
Здесь находится список backend-услуг.

  • vstack - кластеры vStack.
  • locations - локации кластеров.
    • name - имя локации, используется в именах контейнеров. Количество символов не должно превышать 10, нельзя использовать пробелы, допустимо использование нижнего подчеркивания.
    • inventory_notifications_to - список почт, на которые будет производиться рассылка информации об инвентаризации vStack серверов.
    • location_techtitle - техническое имя локации, выбирается из списка локаций.
    • bandwith_mbps - параметры ширины канала. Все значения должны быть кратны 10.
      • min - минимальная ширина канала.
      • max - максимальная ширина канала.
    • clusters - список кластеров.
      • name - имя кластера. Количество символов не должно превышать 10, нельзя писать пробелы, допустимо использование нижнего подчеркивания. Рекомендуется использовать только нижний регистр.
      • default - при значении true кластер становится кластером по умолчанию (дефолтным). Дефолтный кластер может быть только один.
      • host - эндпоинт кластера, где будет создана инфраструктура.
      • user - пользователь.
      • pass - пароль.
      • vdc_id - ID vDC, в котором будут создаваться ВМ, сети и т.д. Панель управления работает с одним ВЦОД внутри кластера.

        n. databases

    databases:
        mssql:
            host: 192.168.1.2
            port: 1433
            user: user
            pass: password
        postgresql:
            host: 192.168.1.2
            port: 5432
            user: user
            pass: password
Список баз данных, которые необходимы для работы панели.

  • mssql - база данных на СУБД MS SQL.
    • host - эндпонит базы данных.
    • port - порт.
    • user - пользователь.
    • pass - пароль.

        o. oferta

    oferta: contoso.com/oferta
Cсылка на оферту, предварительно составленную и размещенную пользователем.

host_list

В этой части находится список ВМ, которые необходимы для работы панели управления.

        a. services

    services:
        name: name
        host: 192.168.1.2
        port: 22
        user: username
        ssh_private_key_location: ~/.ssh/ssh_private_key_location
Данные Виртуальной машины, которая отвечает за работу служб.

  • name - имя ВМ, которое будет использоваться для логирования.
  • host - IP-адрес или доменное имя ВМ.
  • port - порт.
  • user - пользователь.
  • ssh_private_key_location - путь к приватному SSH-ключу.

        b. sites

    sites:
        name: name
        host: 192.168.1.2
        port: 22
        user: username
        ssh_private_key_location: ~/.ssh/ssh_private_key_location
Данные виртуальной машины, которая отвечает за работу сайтов.

        c. features

    features:
        name: name
        host: 192.168.1.2
        port: 22
        user: username
        ssh_private_key_location: ~/.ssh/ssh_private_key_location
Данные виртуальной машины, которая отвечает за работу бэкенд-услуг.

        d. frontend

    frontend:
        name: name
        host: 192.168.1.2
        port: 22
        user: username
        ssh_private_key_location: ~/.ssh/ssh_private_key_location

Данные виртуальной машины, которая отвечает за работу фронтенда.

3. Сохраните изменения в файле sample.config.yml и переименуйте его в config.yml.

4. Запустите команду:

./cldmng-distr install