Installation
Перед установкой убедитесь, что у вас уже есть файл 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, в котором будут создаваться ВМ, сети и т.д. Панель управления работает с одним ВЦОД внутри кластера.
- locations — локации кластеров.
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