Установка дистрибутива выполняется от учетной записи имеющей root права. Перед установкой требуется проверить маску режима создания пользовательских файлов командой
umask
Если она отличается от стандартной 0022 требуется задать ее командой
umask 0022
Сначала устанавливаем всё необходимое ПО для работы Optimacros, согласно инструкции по предварительной установке ПО. Так же установка воркспейса предполагает, что уже установлен для данного воркспейса Логин Центр либо на текущем сервере, либо на отдельном выделенным под Логин Центр. Так же предполагается, что на сервере уже скачан дистрибутив воркспейса
installer-версия.tar
.
/om - базовый каталог (данный каталог может быть любым)
/om/workspace-installer - директория различных версий дистрибутива
/om/workspace-installer/current - директория текущего инсталлятора WS
/om/workspace1 - директория WS
/om/cert - директория SSL сертификата
Kоманда для создания директории:
mkdir -p /om/{cert,workspace-installer/current,workspace1}
Переходим в директорию cert
c помощью команды cd cert
и создаем ssl
сертификат:
openssl req -newkey rsa:2048 -nodes -keyout crt.key -x509 -days 1095 -out bundle.crt
Затем перемещаемся в директорию workspace1
с помощью команды cd /om/workspace1
и создаём в ней файл manifest.json
При помощи команды nano manifest.json
. После выполнения, которой попадаем в режим редактирования данного файла. Стандартный вид файла manifest.json
выглядит следующим образом:
{
"container": {
"ip": "10.0.3.15",
"cpu": 6,
"memory": 33685016576,
"ports": {
"0.0.0.0:80": 80,
"0.0.0.0:443": 443
},
"hosts": {}
},
"workspace": {
"id": "8522aedecc6b4219ee87ee28",
"name": "TEST",
"web": {
"url": "https://om.test.workspace.ru",
"ssl": {
"cert": "/om/cert/bundle.crt",
"key": "/om/cert/crt.key"
}
},
"loginCenter": {
"url": "https://lc.company.ru/",
"token": "4aed337a0ac34dd13716c476a4c7",
"apiUrl": "wss://lc.company.ru/api/ws/v1/"
},
"admin": {
"email": "admin@optimacros.com"
}
}
}
Далее сохраняем документ со стандартным содержимым, и приступаем к сбору информации для корректного заполнения свойств для текущего сервера. Пройдёмся по свойствам объекта container
, ip
всегда остаётся неизменным и равен "10.0.3.15"
. cpu
соответствует количеству ядер процессора на текущем сервере, это мы можем узнать например воспользовавшись утилитой htop введя команду htop
.
В случае, если htop не установлен воспользуйтесь командой lscpu
.
Считаем ядра и видим, что их 6 на данном сервере значит в cpu
вводим значение 6. Теперь мы должны запомнить значение свойства memory
которое соответствует количеству оперативной памяти сервера в байтах. Для того чтобы это узнать воспользуемся командой free
Где в выводе 32895524 это значение количества памяти в килобайтах, умножаем это на 1024, чтобы узнать в байтах и получаем: 33685016576 вводим это значение в memory в нашем манифесте. Если ввести команду free -b
, то можно сразу получить число в байтах.
!Как рассчитать размер воркспейса (зелённое значение ОЗУ на счётчике в Drive Landing):
1 - черта Зелёной Зоны Воркспейса (9.17GB - объём в гигабайтах),
2 - текущий объём, занимаемый Воркспейсом на машине (10.4GB - объём в гигибайтах).
Посмотреть формулу расчёта можно здесь:
Далее нам нужно узнать workspace.id
его мы получаем, открыв Логин Центр и перейдя в раздел Workspaces
и выбираем нужный нам воркспейс.
Затем в адресной строке браузера копируем всё после последнего слэша отмеченным зелёной линией (1) на скриншоте ниже. Вводим это в workspace.id
. Затем в workspace.name
вводим название воркспейса который мы создаём, допустим workspace1
для тестового воркспейса или PROD
для
продакшн. В workspace.web.url
вводим URL нашего воркспейса.
Переходим к заполнению настроек Логин Центра в файле манифеста:
workspace.loginCenter.url
вводим URL нашего Логин Центра, в workspace.loginCenter.token
берём токен в месте отмеченным зелёной линией (2) на скриншоте ниже:
Затем в workspace.loginCenter.apiUrl
изменяем только домен оставляя протокол и путь:
wss://нашДоменЛогинЦентра/api/ws/v1/
Так же вводим admin.email
где в качестве значение указываем строку с мэйлом учётной записи администратора воркспейса.
Шпаргалка с краткими комментариями по свойствам файла манифест:
{
"container": {
"ip": "10.0.3.15", // данный IP остаётся неизменным
"cpu": 6, // количество ядер на сервере
"memory": 33685016576, //количество оперативной памяти
"ports": {
"0.0.0.0:80": 80,
"0.0.0.0:443": 443
},
"hosts": {},
},
"workspace": {
"id": "8522aedecc6b4219ee87ee28", // берётся в адресной строке прямо в Логин Центре при переходе к воркспейсу
"name": "workspace1", // название воркспейса
"web": {
"url": "https://temp-ws.om.local", // URL создаваемого воркспейса
"ssl": {
"cert": "/om/cert/bundle.crt", // Путь до сертификату ssl
"key": "/om/cert/crt.key" // Путь до ключа сертификата ssl
}
},
"loginCenter": {
"url": "https://lc.company.local/", // URL относящегося к воркспейсу Логин Центра
"token": "4aed337a0ac34dd13716c476a4c7", // id относящегося к воркспейсу Логин Центра
"apiUrl": "wss://lc.company.local/api/ws/v1/" // изменяем только домен на свой, оставляя протокол и путь
},
"admin": {
"email": "admin@optimacros.com" // почтовый ящик пользователя администратора воркспейса
},
"console": {
"commands": {
"frontend-build": {
"appConfig": {
"flags": [
"fun_loader_message_off", // отключает "веселые" сообщения при первичной загрузке
"interface_theme_optimacros", // по умолчанию фиолетовая тема с тайтлом Optimacros и своим фавиконом
"color_scheme_advexcel", // цветовая схема advexcel доступна для выбора в настройках
"color_scheme_optimacros", // цветовая схема optimacros доступна для выбора в настройках
"color_scheme_corplan", // цветовая схема corplan доступна для выбора в настройках
"color_scheme_orange", // цветовая схема orange доступна для выбора в настройках
"interface_language_RU", // руский язык доступен для выбора в настройках
"interface_language_EN", // английский язык доступен для выбора в настройках
"support_email_support@optimacros.com", // email для связи support@optimacros.com
]
}
}
}
}
}
}
Более подробно с цветовыми темами и интерфейсами, можно ознакомиться здесь
Переходим в директорию с установщиком cd /om/workspace-installer
и вводим последовательно команды:
mkdir current
Создали директорию current для распаковки в неё установочных файлов из архива с дистрибутивом.
tar -xf /home/user/installer-версия.tar -C current
Распаковываем архив с дистрибутивом в директорию current где /home/user/
это путь где скачан наш архив.
Затем запускаем команду поднятия воркспейса:
current/install workspace --path /om/workspace1/manifest.json up
Ожидаемый вывод терминала начало запуска WS:
И наблюдаем чтобы весь процесс поднятия прошёл успешно, по окончанию процесса видим такой вывод:
Установка воркспейса завершена!
Проверяем в браузере что воркспейс доступен: