Установка
Перед установкой убедитесь, что у вас уже есть файл cldmng-distr, с помощью него будет производиться инсталляция панели управления на ВМ пользователя.
Пошаговая инструкция¶
1. В директории, где находится cldmng-distr, введите следующую команду:
Эта команда сгенерирует sample.config.yml.2. Откройте файл sample.config.yml и заполните нужные параметры.
sample.config.yml состоит из двух частей config и host_lists.
config¶
В разделе config определяются такие базовые значения, как:
a. customer_token - guid пользователя, который будет использоваться для аутентификации при подключении к репозиторию, в котором находится дистрибутив.
b. base_name - техническое имя партнёра, которое будет указано в БД. Должно быть написано латинскими буквами без пробелов и специальных символов, допустимо использование нижнего подчеркивания.
c. base_short_name - сокращённая версия base_name. Этот параметр будет указан в именах виртуальных машин внутри инфраструктуры. Сокращенное техническое имя партнёра имеет ограничение в 4 символа, оно также должно быть написано латинскими буквами без пробелов и специальных символов.
d. base_domain - базовый домен, вокруг которого будет выстраиваться панель управления.
e. timezone - часовой пояс, который будет использоваться в панели управления.
f. mail - почтовый сервер, через который панель управления будет отправлять email-нотификации.
mail:
host: mail.ya.ru
port: 25
user: support@ya.ru
pass: ThisIsYourNAilPassword
from: "user@ya.ru"
is_starttls_enabled: true
- host - почтовый сервер, к которому будет происходить обращение при отправке почты
- port - номер порта
- user - учётная запись для подключения к серверу
- pass - пароль от учётной записи
- from - почтовый ящик, с которого будут приходить email-нотификации
- is_starttls_enabled - шифрование starttls
- name_for_notifications - имя, от которого будут приходить email-нотификации
g. support_email - почта службы технической поддержки, также на этот адрес будут приходить нотификации о работе сервиса.
h. win_data_disk - параметр, в котором нужно указать букву диска Windows, где будут храниться сайты и службы.
i. 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.
j. super_admin - данные учётной записи с ролью суперадмина. В конце процесса установки отправляется запрос на её создание.
- user - почта
- pass - пароль, который обязательно должен быть на латинице, содержать буквы в нижнем и верхнем регистрах и иметь как минимум один специальный символ
k. 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-адрес со статическими ресурсами для дистрибутива
l. 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
- 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, в котором будут создаваться ВМ, сети и т.д. Панель управления работает с одним ВЦОД внутри кластера
m. 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 - пароль
-
postgresql - база данных на СУБД PostgreSQL
n. oferta - ссылка на оферту, предварительно составленную и размещенную пользователем.
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. Запустите команду: