"Element Management System" ("Система управления объектами инфраструктуры") (далее – Система, EMS) – геораспределенная система мониторинга и управления объектами инфраструктуры.
Документ содержит информацию, необходимую для инсталляции ПО EMS версии 4.2.2 в режиме одной ноды.
Настоящий документ является составной частью комплекта технической документации на систему EMS и разработан в соответствии с требованиями ГОСТ 2.105-95 «Единая система конструкторской документации. Общие требования к текстовым документам».
Система EMS предназначена для решения следующих бизнес-задач в IT-инфраструктуре компании:
- Снижение расходов на использование нескольких систем, за счет централизованного мониторинга аппаратных и программных (виртуальные машины, гипервизоры, сервисы) ОМиУ(объектов мониторинга и управления) в системе;
- Снижение времени на выполнение задач по обновлению и установке операционных систем и прошивок, за счет централизованной панели управления и возможности массового запуска операций на ОМиУ;
- Снижение времени реагирования на инциденты, за счет формирования необходимого представления инфраструктуры, выделения ОМиУ требующих более пристального внимания и возможности настройки разных способов оповещения о событиях.
Система EMS предназначена для:
- Автоматизации задач управления серверным оборудованием;
- Автоматизации задач управления сетевым оборудованием;
- Мониторинга в режиме реального времени доступности серверов, устройств хранения и сетевых коммутаторов;
- Мониторинга виртуальных машин, гипервизоров, систем и сервисов;
- SMART мониторинга дисков;
- Автоматизации развертывания операционных систем и программного обеспечения;
- Предоставления информации для планирования модернизации оборудования ИТ-инфраструктуры.
Система представляет собой композицию docker-контейнеров. В качестве оркестратора контейнеров используется docker-compose
.
Bergen EMS
Наименование | Описание |
---|---|
EMS, Система | Element Management System (EMS) - система управления и мониторинга оборудования |
Docker | Программное обеспечение для автоматизации развёртывания и управления приложениями в средах с поддержкой контейнеризации, контейнеризатор приложений |
Docker compose | Средство для определения и запуска приложений Docker с несколькими контейнерами |
single-node | ВМ для размещения EMS |
master | Группа сервисов EMS уровней middle и frontend |
tool | Группа сервисов EMS уровня бэк-энд |
transport | Группа инфраструктурных сервисов. (До EMS 3.3.0 storage ) |
Общие термины и определения
Наименование | Описание |
---|---|
bash | (англ. Bourne again shell) - усовершенствованная и модернизированная вариация командной оболочки Bourne shell. Одна из наиболее популярных современных разновидностей командной оболочки UNIX. Особенно популярна в среде Linux, где она часто используется в качестве предустановленной командной оболочки. |
firewall | (англ. firewall «брандмауэр») Персональный межсетевой экран — программное обеспечение, осуществляющее контроль сетевой активности компьютера, на котором он установлен, а также фильтрацию трафика в соответствии с заданными правилами. |
FirewallD | Инструмент управления брандмауэром для операционных систем Linux. Он предоставляет функции брандмауэра, выступая в качестве интерфейса для сетевой фильтрации ядра Linux. |
hostname | (англ. hostname - имя хоста) - метка, которая присваивается устройству, подключенному к компьютерной сети, и используется для идентификации устройства в различных формах электронной связи. |
HTTPS | (англ. HyperText Transfer Protocol Secure) - расширение протокола HTTP, для поддержки шифрования в целях повышения безопасности. Данные в протоколе HTTPS передаются поверх криптографических протоколов SSL или TLS. |
IPMI | Интеллектуальный интерфейс управления платформой, предназначенный для автономного мониторинга и управления функциями, встроенными непосредственно в аппаратное и микропрограммное обеспечения серверных платформ. |
ISO | (англ. International Organization for Standardization) Термин для обозначения образа оптического диска, содержащего файловую систему стандарта ISO 9660. |
LDAP | (англ. Lightweight Directory Access Protocol) - протокол прикладного уровня для доступа к службе каталогов. |
localhost | Стандартное, официально зарезервированное доменное имя для частных IP-адресов. |
MinIO | Серверное программное хранилище, совместимый с Amazon S3, он может обрабатывать неструктурированные данные, такие как фотографии, видео, файлы журналов, резервные копии и образы контейнеров с максимальным поддерживаемым размером объекта 5 ТБ. |
NATS.io | Система обмена сообщениями с открытым исходным кодом. |
OpenSearch | Распределённый, управляемый сообществом, лицензированный Apache 2.0, со 100 % открытым исходным кодом комплект поисковых и аналитических ресурсов для различных примеров использования, таких как мониторинг приложений в режиме реального времени, анализ журналов и поиск по веб-сайтам. |
PostgreSQL | Свободная объектно-реляционная система управления базами данных (СУБД). |
RPM-based | (рекурсивный акроним RPM Package Manager — RPM — менеджер пакетов; ранее раскрывался как Red Hat Package Manager — менеджер пакетов Red Hat) — формат пакетов программного обеспечения, а также программа, созданная для управления этими пакетами, используемые в ряде Linux-дистрибутивов; является основным форматом пакетов в LSB. |
sh | (англ. Shell script) Сценарий командной строки, или сценарий командной оболочки, — программа, выполняемая командной оболочкой операционной системы. Наиболее часто термин применяется к скриптам, написанным для Bourne shell — программной оболочки систем UNIX. |
SMTP | (англ. Simple Mail Transfer Protocol) - сетевой протокол, предназначенный для передачи электронной почты в сетях TCP/IP. |
SNMP | (англ. Simple Network Management Protocol) - протокол, который используется для управления сетевыми устройствами. С помощью протокола SNMP, программное обеспечение для управления сетевыми устройствами может получать доступ к информации, которая хранится на управляемых устройствах. |
SSH | (англ. Secure Shell ) - сетевой протокол прикладного уровня, позволяющий производить удалённое управление операционной системой и туннелирование TCP-соединений. |
SWAP | Механизм виртуальной памяти, при котором отдельные фрагменты памяти (обычно неактивные) перемещаются из ОЗУ во вторичное хранилище (отдельный раздел или файл), освобождая ОЗУ для загрузки других активных фрагментов памяти. |
TCP/IP | (англ. Transmission Control Protocol и Internet Protocol) — сетевая модель передачи данных, представленных в цифровом виде. Модель описывает способ передачи данных от источника информации к получателю |
Telegram | Кроссплатформенная система мгновенного обмена сообщениями с функциями обмениваться текстовыми, голосовыми и видеосообщениями, стикерами и фотографиями, файлами многих форматов. |
TLS | (англ. Transport Layer Security-защищённый транспортный узел) - протокол безопасности, обеспечивающий защищённую передачу данных между узлами в сети Интернет. |
UFW | Uncomplicated Firewall — это утилита для конфигурирования межсетевого экрана Netfilter. Она использует интерфейс командной строки, состоящий из небольшого числа простых команд. |
UEFI | (англ. Unified Extensible Firmware Interface - единый интерфейс расширяемой прошивки) - интерфейс между операционной системой и микропрограммами, управляющими низкоуровневыми функциями оборудования, его основное предназначение: корректно инициализировать оборудование при включении системы и передать управление загрузчику или непосредственно ядру операционной системы. |
volume | В терминологии docker - хранилище данных, используемое контейнером в процессе работы. |
АРМ | Автоматизированное рабочее место - рабочее место специалиста, оснащенное персональным компьютером, программным обеспечением и совокупностью информационных ресурсов индивидуального или коллективного пользования. |
Бакет | Чтобы разместить файл в объектном хранилище S3, его необходимо поместить в бакет, сущность для организации хранения в хранилище. |
ВМ | Виртуальная машина - абстрактный вычислительный экземпляр, созданные программой, работающей на другой машине (физической), и который физически не существует, но работает, как настоящий компьютер. |
Гипервизор | Программа или аппаратная схема, обеспечивающая или позволяющая одновременное, параллельное выполнение нескольких операционных систем на одном и том же хост-компьютере. Гипервизор также обеспечивает изоляцию операционных систем друг от друга, защиту и безопасность, разделение ресурсов между различными запущенными ОС и управление ресурсами |
ИС | Информационная система |
ОМиУ | Оборудование мониторинга и управления. |
ОС | Операционная система |
ЦОД | Центр обработки данных |
Действия по инсталляции Системы выполняет эксплуатационный персонал заказчика в соответствии с ролью:
- Системный администратор - отвечает за следующие процессы:
- Подготовка инфраструктуры для установки Системы;
- Установка Системы;
- Первичное конфигурирование Системы;
- Установка первой лицензии на Систему;
- Эксплуатационное сопровождение и конфигурирование Системы;
- Эксплуатационная установка лицензий на Систему;
- Подготовка инфраструктуры для обновления Системы;
- Обновление Системы.
Для функционирования Системы, необходимо выполнение следующих общих требований:
- Протокол канала связи - IPv4;
- Пропускная способность каналов связи между серверами в пределах ЦОД - 1 Гбит/сек;
- Целевые ОМиУ должны находиться в одной сети с ВМ single-node;
- Должна быть обеспечена сетевая доступность между АРМ оператора и ВМ single-node;
- Для выполнения процесса установки необходимо подключиться к ВМ, на которой производится установка по протоколу SSH;
- Все команды выполняются в консоли от имени пользователя root;
- Установка Системы может быть выполнена как в открытом, так и закрытом контуре; процесс установки Системы универсален для обоих случаев.
Внимание: Перед началом установки необходимо удостовериться, что ВМ соответствуют системным требованиям EMS. Несоответствие требованиям приведёт к невозможности установить систему или неработоспособности системы после завершения процесса установки!
Рекомендованные системные требования к аппаратному обеспечению приведены ниже.
В виду того, что EMS использует высокопроизводительные системы хранения данных, к дисковой подсистеме предъявляются строгие требования:
- Дисковая подсистема должна обеспечивать производительность не менее 15000 IOPS (количество операций ввода-вывода в секунду);
- Для обеспечения оптимальной производительности и стабильности Системы, настоятельно рекомендуется избегать использования сетевых файловых систем в качестве основного хранилища узлов. Применение сетевых файловых систем может привести к снижению производительности кластера, вплоть до потери функциональности;
- Для хранения узлов рекомендуется использовать локальные твердотельные накопители (SSD), установленные непосредственно на физический хост. Это гарантирует повышение эффективности работы Системы и уменьшение вероятности возникновения технических проблем, связанных с хранением данных;
- Рекомендованный необходимый объем дискового пространства для Системы, без учета пространства занимаемого ОС и прикладным ПО составляет не менее 200 GB;
- Для корректной работы Системы рекомендуется использовать разметку, при которой все пространство выделено под корневой раздел
/
; - При наличии особой разметки дисков следует удостовериться что:
- В каталоге установки Системы
/opt
доступно не менее 15 GB. Docker
для хранения данных, по умолчанию/var/lib/docker
доступно не менее 175 GB.- В каталоге первоначального размещения инсталляционного пакета
/root
доступно не менее 10 GB.
- В каталоге установки Системы
К CPU предъявляются строгие требования:
- На каждой ноде должно быть не менее 20 vCPU;
- 64-разрядный процессор с тактовой частотой не менее 2000 Hz.
К RAM предъявляются строгие требования:
- На каждой ноде должно быть доступно не менее 20 Gb;
- Версия - не ниже DDR4;
- Тип ECC (код исправления ошибок) или аналогичная технология.
Между нодами кластера должно быть обеспечено сетевое соединение со скоростью не менее 1 гигабит в секунду.
- Инсталляционный пакет состоит из:
├── bin
│ ├── docker-compose
│ └── emssyscheck
├── config
│ ├── ca.crt
│ ├── ems.config
│ └── emssyscheck
│ └── requirements.json
├── emsinstaller
├── executable
│ ├── composer
│ │ ├── destroy.sh
│ │ ├── destroy_tool.sh
│ │ ├── seed_node.sh
│ │ ├── stop.sh
│ │ ├── stop_tool.sh
│ │ ├── up.sh
│ │ └── up_tool.sh
│ ├── docker-compose
│ ├── seed_opt.sh
│ └── swarmer
│ ├── check_nodes.sh
│ ├── destroy.sh
│ ├── mark_nodes.sh
│ ├── seed_node.sh
│ ├── stop_role.sh
│ ├── stop.sh
│ ├── stop_tool.sh
│ ├── tool_build.sh
│ ├── up_role.sh
│ ├── up.sh
│ └── up_tool.sh
├── images.tar.gz
├── master
│ ├── compose.composer.yaml
│ ├── compose.swarmer.yaml
│ ├── compose.yaml
│ └── config
│ ├── excel_templates
│ │ ├── availability_export_template.xlsx
│ │ ├── devices_event_export_template.xlsx
│ │ └── resources_export_template.xlsx
│ ├── generators
│ │ └── generate_nats_config.sh
│ ├── keys
│ │ ├── iv
│ │ └── key
│ ├── kv
│ │ ├── composer_kv.conf
│ │ ├── kv_1.conf
│ │ ├── kv_2.conf
│ │ ├── kv_3.conf
│ │ ├── kv_4.conf
│ │ ├── kv_5.conf
│ │ └── kv.creds
│ ├── leaf.creds
│ ├── opensearch_proxy
│ │ └── opensearch_proxy.json
│ ├── otelcol
│ │ ├── data-prepper-config.yaml
│ │ └── pipelines.yaml
│ ├── patroni.yaml
│ ├── restic_password
│ └── step_password
├── tool
│ ├── compose.composer.yaml
│ ├── compose.runner.yaml
│ ├── compose.swarmer.yaml
│ ├── compose.yaml
│ ├── config
│ │ ├── keys
│ │ │ ├── iv
│ │ │ └── key
│ │ ├── leaf.creds
│ │ ├── restic_password
│ │ ├── sftp-proxy.json
│ │ └── step_password
│ └── runner
│ ├── Dockerfile
│ └── entry.sh
└── transport
├── compose.composer.yaml
├── compose.swarmer.yaml
├── compose.yaml
├── config
│ ├── acme_config
│ │ ├── ca.crt
│ │ └── ca.key
│ ├── leaf_config
│ │ ├── composer_leaf.conf
│ │ ├── leaf_1.conf
│ │ ├── leaf_2.conf
│ │ ├── leaf_3.conf
│ │ ├── leaf_4.conf
│ │ ├── leaf_5.conf
│ │ └── leaf.creds
│ ├── otel_collector
│ │ └── otel_collector_config.yaml
│ ├── restic_password
│ ├── reverse_proxy
│ │ ├── reverse_proxy.composer.json
│ │ └── reverse_proxy.swarmer.json
│ └── step_password
└── generators
└── generate_nats_config.sh
- Файл лицензии необходимо получать отдельно.
Внимание: Файл лицензии необходимо разместить в директории инсталляционного пакета:
~/ems-4.2.2/master/config/
.
Поддерживаемые ОС для функционирования серверной части Системы EMS:
- Oracle 8.9 Server Minimal;
- Ubuntu 22.04.1 LTS Server;
- Astra Linux Common Edition 1.7_x86-64;
- RedOS 7.3.
При этом, необходимо обеспечить:
- Строгое соответствие по версиям ОС.
Версии инфраструктурных компонентов входящих в инсталляционный пакет (строгое соответствие по версиям) (Таблица 3):
Таблица 3. Версии инфраструктурных компонентов
№ | Сервис | Версия |
---|---|---|
1 | Nats | 2.10.14-alpine3.19 |
2 | PostgreSQL | 14.6 |
3 | Opensearch | 2.8.0 |
4 | Opensearch Dashboards | 2.6.0 |
5 | Minio | RELEASE.2021-04-22T15-44-28Z.hotfix.8c654a725 |
6 | smallstep/step-ca | 0.25.2 |
7 | opentelemetry-collector-contrib | 0.88.0 |
8 | sftp | 5.1.5 |
9 | data-prepper | 2.5.0 |
Внимание: Обязательно использование инфраструктурных компонентов из состава инсталляционного пакета.
Перед началом установки на ВМ кластера должно быть развернуто прикладное ПО (строгое соответствие по версии):
- docker 26.1.3
Внимание: Функционирование гарантировано при использовании конфигурации docker по умолчанию. Если в компании приняты какие-либо стандарты конфигурирования ПО docker, в случае возникновения проблем с запуском EMS, исправьте настройки docker для обеспечения работоспособности EMS или верните настройки docker по умолчанию. В случае наличия корпоративных политик по обновлению используемых программных продуктов и их компонентов, необходимо поставить данное ПО как исключение для ограничения обновлений
Нестандартная конфигурация Docker должна удовлетворять следующим требованиям:
- Запуск и работа 52 контейнеров EMS:
Внимание: Настройки docker должны позволять выделить IP-адреса по количеству контейнеров внутри docker-сети.
Вспомогательное ПО представляет из себя утилиты в GNU/Linux (версии соответствуют доступным ОС):
tar
- архиватор для файлов формата .tar;vi
- текстовый редактор (можно использовать любой доступный в системе, напримерnano
илиvim
).
Под АРМ оператора в текущем документе подразумевается рабочее место администратора, выполняющего установку Системы EMS.
Общие требования к АРМ оператора:
- Для обеспечения функционирования клиентской части ПО EMS, рабочий компьютер пользователя должен удовлетворять следующим минимальным требованиям:
- Процессор производительностью не ниже i5 9400+;
- Минимум 8 Гб памяти;
- Минимум 20 Гб свободного места на HDD или SSD;
- Минимальное разрешение экрана пользователя не менее 1920x1080 пикселей;
- Пропускная способность сетевого канала связи между компьютером пользователя и сервером должно составлять не менее 20 Мбит/сек, время прохождения пакетов не более 100 мс.
-
Операционная система должна обладать GUI.
-
Для обеспечения корректного функционирования ПО EMS, программное обеспечение АРМ должно использовать следующие настройки по умолчанию:
- Масштаб в web-браузере 100%;
- Размер шрифтов в ОС без масштабирования (100%).
- ПО для взаимодействия с интерфейсом системы:
- SSH клиент;
- Яндекс Браузер Версия 24.1.5.803+ (64-bit);
- (Опционально) Браузер Google Chrome, Версия 124.0.6367.62+ (64 бит).
Для выполнения шагов, описанных в документе, пользователь должен обладать практическими знаниями в области администрирования ОС Linux.
В процессе установки Системы, о данной инсталляции будут собраны и отправлены в компанию GAGAR>N (на адрес 5.188.138.95) следующие данные:
Перечень информации:
- Название организации, на которое выдана лицензия;
- Версия устанавливаемой системы;
- Имя пользователя;
- Доменные имена кластеров Системы;
- IP адреса кластеров Системы;
- MAC адреса кластеров Системы.
Данные будут отправлены в виде файла json. Ниже представлен пример содержимого данного файла:
{"date":"2023-8-18","license_ids":["inst_lic"],"ems_version":"3.4.0","installer_version":"development","installer_usernames":["support"],"installer_domain_names":["installer.s3.domain.net","installer.domain.net"],"installer_ips":["192.168.1.2","192.168.1.1"],"installer_macs":["00:15:5d:44:59:51"]}
Этот сбор информации необходим для обеспечения соблюдения политик лицензирования и распространения продуктов компании GAGAR>N.
Перед началом установки необходимо подготовить инфраструктуру, соответствующую системным требованиям, перечисленным в разделах 2.2 и 2.3 текущей инструкции.
Внимание: Актуально только для Astra Linux - перед установкой EMS необходимо обновить ядро ОС до версии 5.10 (см. раздел приложение Обновления ядра ОС Astra linux)
Перед началом установки необходимо создать резервную копию ВМ, подготовленной в разделе 3.1. Это обеспечит возможность быстрого восстановления в случае возникновения проблем в процессе установки.
Внимание: Резервное копирование ВМ может выполняться средствами гипервизора или специализированного ПО, если такое используется.
Алгоритм использования резервных копий:
- В случае нарушения последовательности установки, необходимо:
- Восстановить ВМ из резервных копий;
- Повторить попытку установки, начиная с раздела 3.3.
- В случае возникновения проблем, необходимо:
- Выполнить проверку ВМ на соответствие перечисленным требованиям;
- Проанализировать системные журналы на предмет наличия ошибок, относящихся к процессу установки Системы EMS;
- Восстановить ВМ из резервной копии;
- Внести корректировки в настройки ОС, согласно выявленным проблемам;
- Создать резервную копию исправленного состояния ВМ;
- Повторить попытку установки, начиная с раздела 3.3.
Перед непосредственной установкой следует подготовить АРМ оператора:
- Разместить на АРМ оператора инсталляционный пакет в рабочий каталог;
- Разместить на АРМ оператора файл лицензий в рабочий каталог;
- Установить на АРМ оператора клиент ssh;
- Установить на АРМ оператора web-браузер согласно требованиям.
Предполагается, что файл полученного инсталляционного пакета называется ems-4.2.2.tar.gz
, если в используемом пакете используется другое имя файла - переименуйте его (или измените имя файла во всех последующих командах копирования):
- Пример выполнения переименования файла инсталляционного пакета с названием
ems.tar.gz
в названиеems-4.2.2.tar.gz
:
mv -f ems.tar.gz ems-4.2.2.tar.gz
Переименование так же может быть произведено с помощью проводника Windows
или любого другого привычного инструмента.
Необходимо разместить пакеты установки на соответствующих виртуальных машинах любым доступным способом.
В текущей инструкции приводится алгоритм размещения с помощью утилиты scp
из поставки Linux
.
Выполнение команд scp необходимо производить из рабочего каталога, в котором размещён инсталляционный пакет EMS (каталог содержащий
ems-4.2.2
).
Для размещения инсталляционного пакета на сервере single-node
с помощью утилиты scp
, выполните команду:
Замените {{ SINGLE_NODE_IP }} на IP адрес ВМ
single-node
.
scp -r ./ems-4.2.2.tar.gz root@{{ SINGLE_NODE_IP }}:~/ems-4.2.2.tar.gz
Пример рабочего вывода в процессе выполнения:
$ scp -r ./ems-4.2.2.tar.gz root@192.168.1.125:~/ems-4.2.2.tar.gz
192.168.1.125 Password: ***
После того как инсталляционный пакет на ВМ single-node
скопирован, выполните копирование файла лицензий:
Замените {{ SINGLE_NODE_IP }} на IP адрес ВМ
single-node
.
scp ./license.json root@{{ SINGLE_NODE_IP }}:~/license.json
Пример рабочего вывода в процессе выполнения:
$ scp ./license.json root@192.168.1.125:~/license.json
192.168.1.125 Password: ***
Выполнить проверку системы на соответствие требованиям можно с помощью пакета emsinstaller, из пакета поставки.
Подключитесь к single-node
с помощью SSH-клиента:
Замените {{ SINGLE_NODE_IP }} на IP адрес ВМ
single-node
:
ssh root@{{ SINGLE_NODE_IP }}
Внимание: Перед выполнением проверки пакет должен быть размещён на проверяемой ноде (выполнены действия раздела 4.2.1 настоящей инструкции).
Для того, чтобы выполнить проверку ВМ single-node
выполните команды:
gzip -d ~/ems-4.2.2.tar.gz
mkdir -p ~/ems-4.2.2
tar -xvf ~/ems-4.2.2.tar -C ~/ems-4.2.2
mv -f ~/license.json ~/ems-4.2.2/master/config/license.json
cd ~/ems-4.2.2
chmod +x -R bin/* executable/*
chmod 0700 ~/ems-4.2.2/emsinstaller
rm -f /opt/config/emssyscheck/* || true
rm -f /opt/ems/config/emssyscheck/* || true
~/ems-4.2.2/emsinstaller --mode check
Пример рабочего вывода в процессе выполнения:
~/ems-4.2.2/emsinstaller --mode check
Выполняется проверка системы.
/root/ems-4.2.2/bin/emssyscheck --config /root/ems-4.2.2/config/emssyscheck/requirements.json --cluster single
✅ Файл лицензий (Доступно: license.json) обнаружен
✅ Операционная система (Доступно: Oracle Linux Server 8.8) соответствует требованиям
✅ Количество доступных CPU (Доступно: 20; требуется: 20) соответствует требованиям
⚡ Количество RAM (Доступно: 19.24 Gb; требуется: 20.00 Gb) не соответствует требованиям, но находится в допустимых пределах
⚡ Доступное дисковое пространство (Доступно: bdev: /dev/mapper/ol-root; mp: /; 187.00 Gb; требуется: 200.00 Gb) не соответствует требованиям, но находится в допустимых пределах
✅ Версия Docker (Доступно: 26.1.3) соответствует требованиям
✅ Версия Docker-compose (Доступно: 2.27) соответствует требованиям
✅ Система соответствует требованиям /root/ems-4.2.2/config/emssyscheck/requirements.json, для установки EMS!
Внимание: Дальнейшие действия вариативны и возможен выбор только одного из путей по разделам 3.6.1 или 3.6.2.
EMS поставляется с собственным самоподписанным корневым сертификатом, служащим для защиты сетевого взаимодействия компонентов Системы. Cамоподписанный корневой сертификат устанавливается автоматически в процессе установки.
В случе необходимости, возможно использование собственного корневого сертификата.
Настройка инсталлятора для использования Клиентского корневого сертификата описана в разделе Справочная информация, подразделе Использование собственного корневого сертификата текущего документа.
Для правильной работы Системы, настройки сети должны быть удовлетворены следующие требования (Таблица 4):
Внимание: Для правильной работы EMS на ВМ должен быть отключен системный firewall. Для ОС Ubuntu
ufw disable
. Для ОС Oraclesystemctl disable --now firewalld
.
Внимание: Актуально только для Рэд ОС - Очистить все правила пользовательских цепочек и разрешить исходящие, входящие и пересылаемые пакеты в IP Tables. (см. раздел приложение Очистка всех правил пользовательских цепочек и разрешение исходящих, входящих и пересылаемых пакетов в IP Tables)
После выключения фаервола требуется перезапустить службу Docker командой systemctl restart docker
Таблица 4. Настройки сети
№ | Роль кластера | Открытые сетевые соединения для работы сервиса | Разрешение на доступ EMS к ИС заказчика | Требования к firewalld/ufw |
---|---|---|---|---|
1 | Single-node | 443/tcp, 52004/tcp, 21890/tcp, 389/tcp, 636/tcp, 514/udp, 601/tcp, 6514/udp, 6514/tcp, 80/tcp, 80/udp, 67/udp, 69/udp, 5101/tcp, 9000/tcp, 2222/tcp, 9333/tcp, 5333/tcp, 44222/tcp, 7071/tcp, 4317/tcp, 52003/tcp, 52002/tcp, 52005/tcp, 7091/tcp, 25/tcp, 22/tcp, 53/tcp, необходимо обеспечить доступ от BMC сервера до ВМ по портам | AD/LDAP, SMTP, DNS, DHCP, Docker Registry (в случае установки docker и docker compose из корпоративного реестра), SMPP, IPMI, Redfish, SSH | Отключены |
Перед началом установки необходимо заполнить конфигурацию инсталлятора EMS на основе окружения, созданного для развёртывания (см. раздел 2.2). Ниже представлено подробное описание параметров конфигурации.
Файл ems.config
расположен в каталоге config
в корне каталога инсталляционного пакета EMS и должен удовлетворять следующим требованиям:
- Если значение переменной содержит пробелы, оно должно быть обрамлено кавычками;
- В строке не должно быть символов после значения переменной;
- Допускаются комментарии начинающиеся со знака
#
(решетка) с новой строки.
Файл может быть отредактирован любым текстовым редактором, доступным в системе, например vi
. Файл должен иметь следующее содержимое (описание значений переменных приведено в таблице 5):
vi ~/ems-4.2.2/config/ems.config
EMS_HOSTNAME=
NODE_IP=
TRANSPORT_IP=
CLIENT_NAME=
ACME_FINGERPRINT=22ed5de355d118ea440338e94f4d3b05903d526f8090636fa52c39b8b57c40ad
CLUSTER=Core
COMPOSE_ENV_FILES=".env"
COMPOSE_FILE="compose.yaml, compose.composer.yaml"
Таблица 5. Описание значений
№ | Название переменной | Значение по умолчанию | Описание |
---|---|---|---|
1 | EMS_HOSTNAME | Необходимо указать DNS-имя сервера Master, по которому будет доступен интерфейс системы. В случае отсутствия DNS вписать ненастоящий hostname или IP адрес ноды. | |
2 | NODE_IP | Необходимо указать IP адрес ВМ, где производится инсталляции | |
3 | TRANSPORT_IP | Необходимо указать IP адрес ВМ, где производится инсталляция | |
4 | CLIENT_NAME | Имя, на которое выдана лицензия (поле 'client_name' в json-файле) | |
5 | CLUSTER | Core | Необходимо указать имя tool-кластера в системе EMS, при необходимости можно оставить стандартное значение. Допускаются символы [A-z] и [0-9] |
6 | ACME_FINGERPRINT | 22ed5de355d118ea440338e94f4d3b05903d526f8090636fa52c39b8b57c40ad | Отпечаток сертификата, при установке со стандартным сертификатом не меняется |
7 | COMPOSE_ENV_FILES | ".env" | Файл переменных для EMS |
8 | INSTDIR | "compose.yaml, compose.composer.yaml" | Файлы описания сервисов EMS |
Определение значения переменных CLIENT_NAME
, ACME_FINGERPRINT
описано в разделе Справочная информация данной инструкции.
Для обеспечения работоспособности функционала по выполнению операции по установке ОС необходимо выполнить подготовительные работы на ВМ single-node
.
Внимание: Данный шаг актуален только для ВМ под управлением ОС Oracle Linux и RedOS.
На ВМ single-node
необходимо выполнить следующие команды:
mknod /dev/loop0 b 7 0
Для того, чтобы изменения сохранялись после перезагрузки ВМ необходимо выполнить следующие команды:
- Создать и открыть следующий файл:
vi /etc/tmpfiles.d/loop.conf
- Добавить в файл такое содержимое:
b! /dev/loop0 0660 root disk - 7:0
- Для сохранения изменений и выхода из редактора нажмите
<ESC>
; редактор переведется в режим команд, после чего введите:wq
, и нажмите<Enter>
(для редакторовvi
иvim
).
Для настройки отправки уведомлений в мессенджер Telegram необходимо выполнить следующие шаги:
- Перейдите по ссылке
https://t.me/BotFather
. В мессенджере откроется специальный пользователь для создания бота; - Отправьте команду:
/newbot
, для создания нового бота; - Отправьте имя бота:
ems-bot-${MY_NAME}
, ${MY_NAME} необходимо заменить на название компании; - При необходимости установите аватар бота
/setuserpic
,ems-bot-${MY_NAME}
; - В ответ будет отправлен токен доступа бота. Необходимо его скопировать.
- Подключитесь к
single-node
с помощью ssh-клиента:
Замените {{ SINGLE_NODE_IP }} на IP адрес ВМ
single-node
.
ssh root@{{ SINGLE_NODE_IP }}
- Измените конфигурацию EMS в файле
master/.env
Файл .env
расположен в каталоге master
инсталляционного пакета EMS.
Файл может быть отредактирован любым текстовым редактором. Пример с использованием текстового редактора vi
:
cd ~/ems-4.2.2/
vi master/.env
-
В значение переменной
TELEGRAM_KEY
введите токен доступа бота полученный на шаге 5; -
Для сохранения изменений и выхода из редактора нажмите
<ESC>
; редактор переведется в режим команд, после чего введите:wq
, и нажмите<Enter>
(для редакторовvi
иvim
).
Настройка EMS для использования бота описана в Руководстве пользователя.
Для настройки отправки SMS уведомлений необходимо выполнить следующие шаги:
- Получить услугу у провайдера SMS-рассылки. Провайдер должен предоставить следующие данные (Таблица 6):
Таблица 6. Данные по SMS-рассылке
№ | Параметр конфигурации | Описание |
---|---|---|
1 | SMPP_HOST | URL для подключения к сервису sms рассылки |
2 | SMPP_PORT | Порт для подключения к сервису sms рассылки |
3 | SMPP_TIMEOUT | Таймаут получения ответа от сервиса sms рассылки |
4 | SMPP_SYSTEM_ID | ID аккаунта для подключения к сервису sms рассылки |
5 | SMPP_PASSWORD | Пароль аккаунта для подключения к сервису sms рассылки |
6 | SMPP_PHONE_NUMBER | Номер телефона, от которого будут приходить оповещения |
- Подключитесь к
single-node
с помощью ssh-клиента:
Замените {{ SINGLE_NODE_IP }} на IP адрес ВМ
single-node
.
ssh root@{{ SINGLE_NODE_IP }}
- Измените конфигурацию EMS в файле
master/.env
Файл .env
расположен в каталоге master
инсталляционного пакета EMS.
Файл может быть отредактирован любым текстовым редактором. Пример с использованием текстового редактора vi
:
cd ~/ems-4.2.2/
vi master/.env
- Найдите и укажите значения следующих переменных:
SMPP_HOST=<Задайте_значение_выданное_провайдером>
SMPP_PORT=<Задайте_значение_выданное_провайдером>
SMPP_TIMEOUT=<Задайте_значение_выданное_провайдером>
SMPP_SYSTEM_ID=<Задайте_значение_выданное_провайдером>
SMPP_PASSWORD=<Задайте_значение_выданное_провайдером>
SMPP_PHONE_NUMBER=<Задайте_значение_выданное_провайдером>
- Для сохранения изменений и выхода из редактора нажмите
<ESC>
; редактор переведется в режим команд, после чего введите:wq
, и нажмите<Enter>
(для редакторовvi
иvim
).
Внимание: Прежде чем приступать к инсталляции EMS, необходимо по контрольному списку успешно пройти проверку готовности инфраструктуры к началу инсталляции ЕМС
- Требования к пользователю
- Пользователь ознакомился с сопутствующей документацией:
- Руководство по инсталляции Системы EMS v4.2.2 в режиме одной ноды;
- Руководство администратора Системы EMS v4.2.2.
- Пользователь ознакомился с сопутствующей документацией:
- Требования к аппаратному обеспечению:
- Характеристики сервера соответствуют системным требованиям:
- Процессоры 64-разрядные с тактовой частотой не менее 2 Ггц;
- Память как минимум DDR4 или выше, тип ECC (код исправления ошибок) или аналогичная технология;
- Дисковая система построена на SSD и обеспечивает производительность не менее 15000 IOPS (количество операций ввода-вывода в секунду);
- Разметка разделов дисковой системы для однонодовой конфигурации EMS:
- Раздел "/opt" имеет объем не менее 15 Гб;
- Раздел "/var" имеет объем не менее 175 Гб;
- Раздел "/root" имеет объем не менее 10 Гб.
- Характеристики виртуальных машин сервера соответствуют системным требованиям:
- Для однонодовой конфигурации EMS:
- Для single-node:
- Выделено не менее 20 vCPU на ноду;
- Выделено не менее 20 Гб памяти на ноду;
- Выделено не менее 200 Гб (значение должно быть доступно
Системе
и приложениюdocker
; объем пространства необходимого ОС не учитывается в заданном значении).
- Для single-node:
- Для однонодовой конфигурации EMS:
- Характеристики сервера соответствуют системным требованиям:
- Требования к сетевой инфраструктуре:
- Между нодами кластера обеспечено сетевое соединение со скоростью не менее 1 гигабит в секунду;
- Сетевые порты, необходимые для работы ЕМС, свободны:
- Для однонодовой конфигурации EMS:
- Открыт порт 443/tcp;
- Открыт порт 52004/tcp;
- Открыт порт 21890/tcp;
- Открыт порт 389/tcp;
- Открыт порт 636/tcp;
- Открыт порт 514/udp;
- Открыт порт 601/tcp;
- Открыт порт 6514/udp;
- Открыт порт 6514/tcp;
- Открыт порт 80/tcp;
- Открыт порт 80/udp;
- Открыт порт 67/udp;
- Открыт порт 69/udp;
- Открыт порт 5101/tcp;
- Открыт порт 9000/tcp;
- Открыт порт 2222/tcp;
- Открыт порт 9333/tcp;
- Открыт порт 5333/tcp;
- Открыт порт 44222/tcp;
- Открыт порт 7071/tcp;
- Открыт порт 4317/tcp;
- Открыт порт 52003/tcp;
- Открыт порт 52002/tcp;
- Открыт порт 52005/tcp;
- Открыт порт 7091/tcp;
- Открыт порт 25/tcp;
- Открыт порт 22/tcp;
- Открыт порт 53/tcp.
- Для однонодовой конфигурации EMS:
- Требования к программному обеспечению:
- ПО сервера соответствуют системным требованиям:
- Версия ОС соответствует требованиям (для текущего пункта достаточно одного проставленного чекбокса);
- Для однонодовой конфигурации EMS:
- Oracle 8.9 Server Minimal;
- Ubuntu 22.04.1 LTS Server;
- Astra Linux Common Edition 1.7_x86-64;
- RedOS 7.3.
- Версия Docker соответствует требованиям;
- Для однонодовой конфигурации EMS:
- Версия Docker 26.1.3
- Для однонодовой конфигурации EMS:
- Отключен фаервол;
- Создано блочное устройство(для RedHat-based дистрибутивов);
- Версия ядра соответствует документации (Astra Linux).
- Лицензия соответствует требованиям по подготовке к инсталляции:
- Актуальная лицензия получена;
- CLIENT_NAME в ems.config соответствует лицензии;
- Срок истечения лицензии не вышел.
- ПО сервера соответствуют системным требованиям:
Подготовка к установке включает в себя следующие шаги:
- Подключитесь к
single-node
с помощью SSH-клиента:
Замените {{ SINGLE_NODE_IP }} на IP адрес ВМ
single-node
:
ssh root@{{ SINGLE_NODE_IP }}
- Заполните конфигурацию EMS на основе окружения, созданного для развёртывания (см. раздел 2.2). Ниже представлено подробное описание параметров конфигурации.
Файл ems.config
расположен в каталоге config
в корне каталога инсталляционного пакета EMS.
Подробное описание параметров конфигурации описано в разделе 3.8 Конфигурирование инсталлятора текущего документа.
Файл может быть отредактирован любым текстовым редактором, доступным в системе, например vi
. Внести в файл ems.config
информацию для настройки EMS. Пример с использованием текстового редактора vi
:
cd ~/ems-4.2.2/
vi config/ems.config
- Для сохранения изменений и выхода из редактора нажмите
<ESC>
; редактор переведется в режим команд, после чего введите:wq
, и нажмите<Enter>
(для редакторовvi
иvim
).
Файл ems.config
должен иметь следующее содержимое (описание значений переменных приведено в таблице 5):
EMS_HOSTNAME=<Задайте_значение_согласно_инфраструктуре>
NODE_IP=<Задайте_значение_согласно_инфраструктуре>
TRANSPORT_IP=<Задайте_значение_согласно_инфраструктуре>
CLIENT_NAME=<Задайте_значение_согласно_инфраструктуре>
ACME_FINGERPRINT=22ed5de355d118ea440338e94f4d3b05903d526f8090636fa52c39b8b57c40ad
CLUSTER=Core
COMPOSE_ENV_FILES=".env"
COMPOSE_FILE="compose.yaml, compose.composer.yaml"
Запустите инсталлятор EMS и дождитесь окончания установки:
cd ~/ems-4.2.2
chmod 0700 ./emsinstaller
chmod 0700 ./bin/*
./emsinstaller --mode install
Пример рабочего вывода в процессе выполнения установки:
cd ~/ems-4.2.2
./emsinstaller --mode install
Запуск установки EMS.
Выполняется проверка системы.
/root/ems-4.2.2/bin/emssyscheck --config /root/ems-4.2.2/config/emssyscheck/requirements.json --cluster single
✅ Файл лицензий (Доступно: license.json) обнаружен
✅ Операционная система (Доступно: Oracle Linux Server 8.8) соответствует требованиям
✅ Количество доступных CPU (Доступно: 20; требуется: 20) соответствует требованиям
⚡ Количество RAM (Доступно: 19.24 Gb; требуется: 20.00 Gb) не соответствует требованиям, но находится в допустимых пределах
⚡ Доступное дисковое пространство (Доступно: bdev: /dev/mapper/ol-root; mp: /; 187.00 Gb; требуется: 200.00 Gb) не соответствует требованиям, но находится в допустимых пределах
✅ Версия Docker (Доступно: 26.1.3) соответствует требованиям
✅ Версия Docker-compose (Доступно: 2.27) соответствует требованиям
✅ Система соответствует требованиям /root/ems-4.2.2/config/emssyscheck/requirements.json, для установки EMS!
Выполняется подготовка файлов.
Копирование архива Docker-образов...
Выполняется настройка кластера transport
Выполняется настройка кластера master
Выполняется настройка кластера tool
✅ Копирование архива Docker-образов...завершено.
Выполняется распаковка архива /opt/ems/images.tar.gz...
Выполняется загрузка Docker образов из архива /opt/ems/images.tar...
Running before scripts
Конфигурирование compose проекта.
Выполняется настройка кластера transport
time="2024-05-15T12:34:05-04:00" level=warning msg="The \"UPTRACE_DSN\" variable is not set. Defaulting to a blank string."
time="2024-05-15T12:34:05-04:00" level=warning msg="/opt/ems/transport/compose.yaml: `version` is obsolete"
time="2024-05-15T12:34:05-04:00" level=warning msg="/opt/ems/transport/compose.composer.yaml: `version` is obsolete"
Network ems Creating
Network ems Created
Container transport-backuper-transport-1 Creating
Container transport-reverse-proxy-1 Creating
Container transport-acme-1 Creating
Container transport-cluster-manager-1 Creating
Container transport-minio-1 Creating
Container transport-otel-collector-1 Creating
Container transport-socket-hub-1 Creating
Container transport-otel-collector-1 Created
Container transport-minio-1 Created
Container transport-reverse-proxy-1 Created
Container transport-cluster-manager-1 Created
Container transport-backuper-transport-1 Created
Container transport-acme-1 Created
Container transport-leaf-nats-1 Creating
Container transport-socket-hub-1 Created
Container transport-leaf-nats-1 Created
Container transport-socket-hub-1 Starting
Container transport-cluster-manager-1 Starting
Container transport-acme-1 Starting
Container transport-backuper-transport-1 Starting
Container transport-otel-collector-1 Starting
Container transport-minio-1 Starting
Container transport-reverse-proxy-1 Starting
Container transport-acme-1 Started
Container transport-leaf-nats-1 Starting
Container transport-reverse-proxy-1 Started
Container transport-otel-collector-1 Started
Container transport-backuper-transport-1 Started
Container transport-cluster-manager-1 Started
Container transport-minio-1 Started
Container transport-socket-hub-1 Started
Container transport-leaf-nats-1 Started
Ожидаем запуска transport ...
Running transport scripts
Выполняется настройка кластера master
time="2024-05-15T12:36:23-04:00" level=warning msg="The \"DNS\" variable is not set. Defaulting to a blank string."
time="2024-05-15T12:36:23-04:00" level=warning msg="The \"DNS\" variable is not set. Defaulting to a blank string."
Container master-kv-nats-1 Creating
Container master-license-server-1 Creating
Container master-opensearch-dashboards-1 Creating
Container master-sso-center-master-1 Creating
Container master-backuper-master-1 Creating
Container master-data-prepper-1 Creating
Container master-psql-1 Creating
Container master-opensearch-1 Creating
Container master-ui-1 Creating
Container master-cluster-manager-1 Creating
Container master-report-service-1 Creating
Container master-docs-1 Creating
Container master-license-server-1 Created
Container master-opensearch-dashboards-1 Created
Container master-report-service-1 Created
Container master-psql-1 Created
Container master-kv-nats-1 Created
Container master-ui-1 Created
Container master-sso-center-master-1 Created
Container master-docs-1 Created
Container master-opensearch-1 Created
Container master-data-prepper-1 Created
Container master-cluster-manager-1 Created
Container master-backuper-master-1 Created
Container master-device-store-1 Creating
Container master-device-metric-writer-2 Creating
Container master-repository-service-1 Creating
Container master-system-metric-writer-1 Creating
Container master-system-service-1 Creating
Container master-network-watcher-1 Creating
Container master-user-service-1 Creating
Container master-device-metric-writer-1 Creating
Container master-task-service-1 Creating
Container master-ui-navigator-1 Creating
Container master-ui-navigator-1 Created
Container master-device-metric-writer-2 Created
Container master-device-metric-writer-1 Created
Container master-repository-service-1 Created
Container master-device-metric-presenter-1 Creating
Container master-task-service-1 Created
Container master-system-metric-writer-1 Created
Container master-device-store-1 Created
Container master-system-service-1 Created
Container master-system-metric-presenter-1 Creating
Container master-user-service-1 Created
Container master-network-watcher-1 Created
Container master-device-metric-presenter-1 Created
Container master-system-metric-presenter-1 Created
Container master-api-gw-1 Creating
Container master-api-gw-1 Created
Container master-kv-nats-1 Starting
Container master-license-server-1 Starting
Container master-opensearch-1 Starting
Container master-report-service-1 Starting
Container master-opensearch-dashboards-1 Starting
Container master-data-prepper-1 Starting
Container master-docs-1 Starting
Container master-psql-1 Starting
Container master-ui-1 Starting
Container master-cluster-manager-1 Starting
Container master-backuper-master-1 Starting
Container master-sso-center-master-1 Starting
Container master-license-server-1 Started
Container master-psql-1 Started
Container master-sso-center-master-1 Started
Container master-opensearch-1 Started
Container master-ui-1 Started
Container master-kv-nats-1 Started
Container master-device-metric-writer-1 Starting
Container master-ui-navigator-1 Starting
Container master-network-watcher-1 Starting
Container master-user-service-1 Starting
Container master-task-service-1 Starting
Container master-device-store-1 Starting
Container master-repository-service-1 Starting
Container master-system-metric-writer-1 Starting
Container master-system-service-1 Starting
Container master-opensearch-dashboards-1 Started
Container master-report-service-1 Started
Container master-docs-1 Started
Container master-data-prepper-1 Started
Container master-backuper-master-1 Started
Container master-cluster-manager-1 Started
Container master-system-service-1 Started
Container master-system-metric-writer-1 Started
Container master-system-metric-presenter-1 Starting
Container master-task-service-1 Started
Container master-repository-service-1 Started
Container master-ui-navigator-1 Started
Container master-device-metric-writer-1 Started
Container master-device-metric-writer-2 Starting
Container master-network-watcher-1 Started
Container master-device-store-1 Started
Container master-user-service-1 Started
Container master-system-metric-presenter-1 Started
Container master-device-metric-writer-2 Started
Container master-device-metric-presenter-1 Starting
Container master-device-metric-presenter-1 Started
Container master-api-gw-1 Starting
Container master-api-gw-1 Started
Ожидаем запуска master ...
Running master scripts
Выполняется настройка кластера tool
Network ems-tool-Core Created
Container tool-windows-manager-1 Creating
Container tool-service-manager-1 Creating
Container tool-hypervisor-manager-1 Creating
Container tool-slave-minio-1 Creating
Container tool-os-installer-1 Creating
Container tool-sso-center-1 Creating
Container tool-template-manager-1 Creating
Container tool-network-manager-1 Creating
Container tool-backuper-1 Creating
Container tool-sftp-proxy-1 Creating
Container tool-socket-proxy-1 Creating
Container tool-linux-manager-1 Creating
Container tool-bmc-manager-1 Creating
Container tool-web-terminal-1 Creating
Container tool-cluster-manager-1 Creating
Container tool-session-nats-1 Creating
Container tool-agent-nats-1 Creating
Container tool-event-nats-1 Creating
Container tool-network-manager-1 Created
Container tool-hypervisor-manager-1 Created
Container tool-cluster-manager-1 Created
os-installer Published ports are discarded when using host network mode
Container tool-backuper-1 Created
Container tool-agent-nats-1 Created
Container tool-template-manager-1 Created
Container tool-socket-proxy-1 Created
Container tool-bmc-manager-1 Created
Container tool-event-nats-1 Created
Container tool-os-installer-1 Created
Container tool-service-manager-1 Created
Container tool-slave-minio-1 Created
Container tool-windows-manager-1 Created
Container tool-sso-center-1 Created
Container tool-web-terminal-1 Created
Container tool-linux-manager-1 Created
Container tool-session-nats-1 Created
Container tool-sftp-proxy-1 Created
Container tool-cluster-manager-1 Starting
Container tool-bmc-manager-1 Starting
Container tool-event-nats-1 Starting
Container tool-slave-minio-1 Starting
Container tool-backuper-1 Starting
Container tool-sso-center-1 Starting
Container tool-template-manager-1 Starting
Container tool-web-terminal-1 Starting
Container tool-service-manager-1 Starting
Container tool-sftp-proxy-1 Starting
Container tool-socket-proxy-1 Starting
Container tool-hypervisor-manager-1 Starting
Container tool-network-manager-1 Starting
Container tool-os-installer-1 Starting
Container tool-session-nats-1 Starting
Container tool-agent-nats-1 Starting
Container tool-linux-manager-1 Starting
Container tool-windows-manager-1 Starting
Container tool-network-manager-1 Started
Container tool-hypervisor-manager-1 Started
Container tool-os-installer-1 Started
Container tool-web-terminal-1 Started
Container tool-service-manager-1 Started
Container tool-backuper-1 Started
Container tool-windows-manager-1 Started
Container tool-linux-manager-1 Started
Container tool-sso-center-1 Started
Container tool-agent-nats-1 Started
Container tool-event-nats-1 Started
Container tool-template-manager-1 Started
Container tool-session-nats-1 Started
Container tool-slave-minio-1 Started
Container tool-bmc-manager-1 Started
Container tool-cluster-manager-1 Started
Container tool-socket-proxy-1 Started
Container tool-sftp-proxy-1 Started
Ожидаем запуска tool ...
Running tool scripts
✅ Запуск EMS выполнен успешно.
Running after scripts
Веб-консоль EMS доступна по адресу https://ems.company.ru/ Стандартные логин, пароль: `SuperAdmin` `aA123123@`.
Убедитесь в том, что приложение развёрнуто. Для этого выполните команду:
watch docker ps -a
В выводе контейнеры должны быть в состоянии Up
.
Внимание: Полной работоспособности приложение достигает в течение 5-ти минут после запуска. В течение этого периода контейнеры могут быть несколько раз перезапущены.
Выход из команды осуществляется нажатием сочетания клавиш <CTRL> + C
.
Пример рабочего вывода:
$ watch docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ba40d9d8afc8 registry.bergen.tech/ems/back/hypervisor-manager:4.2.2 "./hypervisor-manager" 8 minutes ago Up 7 minutes tool-hypervisor-manager-1
e0c545bf292d registry.bergen.tech/ems/middle/socket-hub:4.2.2 "./socket-hub" 8 minutes ago Up 7 minutes 5100/tcp, 8080/tcp, 0.0.0.0:5101->5101/tcp, :::5101->5101/tcp tool-socket-proxy-1
3daecba0addb registry.bergen.tech/ems/back/backuper:4.2.2 "sh -c /usr/bin/entr…" 8 minutes ago Up 7 minutes tool-backuper-1
553c9664e494 registry.bergen.tech/library/nats:2.10.14-alpine3.19 "docker-entrypoint.s…" 8 minutes ago Up 7 minutes 6222/tcp, 8222/tcp, 0.0.0.0:9333->4222/tcp, :::9333->4222/tcp tool-event-nats-1
358017a738ac registry.bergen.tech/ems/back/cluster-manager:4.2.2 "./cluster-manager.c…" 8 minutes ago Up 7 minutes (healthy) 8080-8081/tcp tool-cluster-manager-1
44805f78c335 registry.bergen.tech/ems/back/bmc-manager:4.2.2 "./bmc-manager" 8 minutes ago Up 7 minutes 8080/tcp tool-bmc-manager-1
0be7cfa82060 registry.bergen.tech/ems/back/os-installer:4.2.2 "./os-installer" 8 minutes ago Up 7 minutes tool-os-installer-1
5d26e14f1e5d registry.bergen.tech/ems/back/service-manager:4.2.2 "./service-manager" 8 minutes ago Up 7 minutes tool-service-manager-1
740977c8c427 registry.bergen.tech/ems/back/web-terminal:4.2.2 "./ssh-web-console" 8 minutes ago Up 7 minutes tool-web-terminal-1
1c233ffed658 registry.bergen.tech/library/nats:2.10.14-alpine3.19 "docker-entrypoint.s…" 8 minutes ago Up 7 minutes 6222/tcp, 8222/tcp, 0.0.0.0:5333->4222/tcp, :::5333->4222/tcp tool-agent-nats-1
95fcd87f22e6 registry.bergen.tech/library/nats:2.10.14-alpine3.19 "docker-entrypoint.s…" 8 minutes ago Up 7 minutes 6222/tcp, 8222/tcp, 0.0.0.0:44222->4222/tcp, :::44222->4222/tcp tool-session-nats-1
7f87da1b237c registry.bergen.tech/ems/back/template-manager:4.2.2 "./template-manager.…" 8 minutes ago Up 7 minutes 0.0.0.0:601->601/tcp, 0.0.0.0:514->514/udp, :::601->601/tcp, :::514->514/udp, 0.0.0.0:6514->6514/udp, :::6514->6514/udp, 0.0.0.0:6514->6514/tcp, :::6514->6514/tcp, 8080/tcp tool-template-manager-1
2cce51dcfdda registry.bergen.tech/library/minio:v0.3.3 "/usr/bin/docker-ent…" 8 minutes ago Up 7 minutes 0.0.0.0:9000->9000/tcp, :::9000->9000/tcp tool-slave-minio-1
2738d1503e62 registry.bergen.tech/ems/back/sso-center:4.2.2-tool "./main" 8 minutes ago Up 7 minutes 389/tcp, 636/tcp, 8080/tcp, 0.0.0.0:389->3893/tcp, :::389->3893/tcp, 0.0.0.0:636->3894/tcp, :::636->3894/tcp tool-sso-center-1
f143abf6acc3 registry.bergen.tech/ems/back/linux-manager:4.2.2 "./linux-manager" 8 minutes ago Up 7 minutes 443/tcp, 8080/tcp tool-linux-manager-1
fddcc9a0f443 registry.bergen.tech/ems/back/network-manager:4.2.2 "./network-manager" 8 minutes ago Up 7 minutes tool-network-manager-1
d4cb2cc75fa9 registry.bergen.tech/library/sftp:5.1.5 "tini -- dotnet ES.S…" 8 minutes ago Up 7 minutes 25080/tcp, 0.0.0.0:2222->22/tcp, :::2222->22/tcp tool-sftp-proxy-1
594d81558bbe registry.bergen.tech/ems/back/windows-manager:4.2.2 "./windows-manager" 8 minutes ago Up 7 minutes tool-windows-manager-1
9e838268b0b9 registry.bergen.tech/ems/middle/proto-gateway:4.2.2 "./proto-gateway" 10 minutes ago Up 9 minutes (healthy) 8081/tcp, 0.0.0.0:443->8080/tcp, :::443->8080/tcp master-api-gw-1
e60e54de4db3 registry.bergen.tech/ems/middle/system-metric-manager:4.2.2-presenter "./system-metric-pre…" 10 minutes ago Up 10 minutes (healthy) 8080/tcp master-system-metric-presenter-1
5abcd1336ea7 registry.bergen.tech/ems/middle/device-metric-manager:4.2.2-presenter "./device-metric-man…" 10 minutes ago Up 10 minutes (healthy) 8080-8081/tcp master-device-metric-presenter-1
5aa86956f09f registry.bergen.tech/ems/middle/user-service.config:4.2.2 "./UserService.Main" 10 minutes ago Up 9 minutes (healthy) 8080/tcp master-user-service-1
c6227259775c registry.bergen.tech/ems/middle/master-network-watcher:4.2.2 "./master-network-wa…" 10 minutes ago Up 10 minutes (healthy) 8080/tcp master-network-watcher-1
9b7d05af9ec9 registry.bergen.tech/ems/middle/task-service.config:4.2.2 "./TaskService" 10 minutes ago Up 9 minutes (healthy) 8080/tcp master-task-service-1
ebeb39838a87 registry.bergen.tech/ems/middle/system-service:4.2.2 "./system-service" 10 minutes ago Up 10 minutes (healthy) 8080/tcp master-system-service-1
920fe5b4415a registry.bergen.tech/ems/middle/device-metric-manager:4.2.2-writer "./device-metric-man…" 10 minutes ago Up 9 minutes (healthy) 8080-8081/tcp master-device-metric-writer-1
e86a07fa277a registry.bergen.tech/ems/middle/ui-navigator:4.2.2 "./ui-navigator" 10 minutes ago Up 10 minutes (healthy) 8080/tcp master-ui-navigator-1
897e9337f959 registry.bergen.tech/ems/middle/device-store:4.2.2 "./device-store.main" 10 minutes ago Up 10 minutes (healthy) 8080/tcp master-device-store-1
49254a08eb3b registry.bergen.tech/ems/middle/repository-service:4.2.2 "./repository-service" 10 minutes ago Up 10 minutes (healthy) 8080/tcp master-repository-service-1
7ef3a50e5d75 registry.bergen.tech/ems/middle/system-metric-manager:4.2.2-writer "./system-metric-wri…" 10 minutes ago Up 9 minutes (healthy) 8080/tcp master-system-metric-writer-1
f9b86eef18c7 registry.bergen.tech/ems/middle/device-metric-manager:4.2.2-writer "./device-metric-man…" 10 minutes ago Up 9 minutes (healthy) 8080-8081/tcp master-device-metric-writer-2
688e2063aecb registry.bergen.tech/ems/middle/docs:4.2.2 "docker-entrypoint.s…" 10 minutes ago Up 10 minutes (healthy) 3000/tcp master-docs-1
63850f4a1577 registry.bergen.tech/ems/back/backuper:4.2.2 "sh -c /usr/bin/entr…" 10 minutes ago Up 10 minutes master-backuper-master-1
c8d7a88349ff registry.bergen.tech/ems/deploy/opensearch:2.8.0-acme-1.0.2 "/bin/sh -c /tls/run…" 10 minutes ago Up 10 minutes 9300/tcp, 9600/tcp, 9650/tcp, 0.0.0.0:52003->9200/tcp, :::52003->9200/tcp master-opensearch-1
90854ace5970 registry.bergen.tech/ems/middle/report-scripts:4.2.2 "./report-service" 10 minutes ago Up 10 minutes 8080/tcp master-report-service-1
a63a529016d1 registry.bergen.tech/ems/deploy/data-prepper:2.5.0 "./run.sh" 10 minutes ago Up 10 minutes 0.0.0.0:21890->21890/tcp, :::21890->21890/tcp master-data-prepper-1
66c3b66d474d registry.bergen.tech/library/opensearch-dashboards:2.6.0-openssl "sh -c ./opensearch-…" 10 minutes ago Up 10 minutes 0.0.0.0:52004->5601/tcp, :::52004->5601/tcp master-opensearch-dashboards-1
b9f9c5f9b148 registry.bergen.tech/ems/back/sso-center:4.2.2-master "./main -c https://r…" 10 minutes ago Up 10 minutes 389/tcp, 636/tcp, 8080/tcp master-sso-center-master-1
2bb94c5b9772 registry.bergen.tech/ems/deploy/postgres:4.2.2-9b9844e7 "./run.sh -c ssl=on …" 10 minutes ago Up 10 minutes 0.0.0.0:52005->5432/tcp, :::52005->5432/tcp master-psql-1
ce7b4d17c5bb registry.bergen.tech/ems/front:4.2.2 "sh /entrypoint.sh n…" 10 minutes ago Up 10 minutes 80/tcp master-ui-1
39e19614b31e registry.bergen.tech/ems/deploy/nats:4.0.0-1444ae4d "./run.sh -c /nats_c…" 10 minutes ago Up 10 minutes 4222/tcp, 6222/tcp, 8222/tcp, 0.0.0.0:52002->2222/tcp, :::52002->2222/tcp master-kv-nats-1
7fe65d51356f registry.bergen.tech/ems/back/cluster-manager:4.2.2 "./cluster-manager.c…" 10 minutes ago Up 10 minutes (healthy) 8080-8081/tcp master-cluster-manager-1
5c0422edd704 registry.bergen.tech/ems/middle/license-server:4.2.2 "./license-server" 10 minutes ago Up 10 minutes 3031/tcp master-license-server-1
c535637e36d0 registry.bergen.tech/ems/deploy/nats:4.0.0-1444ae4d "./run.sh -c /nats_c…" 12 minutes ago Up 12 minutes 4222/tcp, 6222/tcp, 8222/tcp, 0.0.0.0:7091->7091/tcp, :::7091->7091/tcp transport-leaf-nats-1
908ae740b77b registry.bergen.tech/ems/back/backuper:4.2.2 "sh -c /usr/bin/entr…" 12 minutes ago Up 9 minutes transport-backuper-transport-1
4faf8ad4e347 registry.bergen.tech/library/minio:v0.3.3 "/usr/bin/docker-ent…" 12 minutes ago Up 12 minutes 9000/tcp transport-minio-1
1c9fc2a150fe registry.bergen.tech/ems/deploy/step-ca:4.0.0-803f5368 "/bin/bash run.sh /b…" 12 minutes ago Up 12 minutes (healthy) transport-acme-1
ea77431a23fc registry.bergen.tech/ems/back/cluster-manager:4.2.2 "./cluster-manager.c…" 12 minutes ago Up 12 minutes (healthy) 8080-8081/tcp transport-cluster-manager-1
313b032494b2 registry.bergen.tech/ems/middle/socket-hub:4.2.2 "./socket-hub" 12 minutes ago Up 12 minutes 5100-5101/tcp, 8080/tcp transport-socket-hub-1
3c5e1dc01f34 registry.bergen.tech/library/monitoring/opentelemetry/opentelemetry-collector-contrib:0.88.0 "/otelcol-contrib --…" 12 minutes ago Restarting (1) 28 seconds ago transport-otel-collector-1
300e0b41dd9d registry.bergen.tech/ems/deploy/reverse-proxy:4.2.2-dev-c5dca8b7 "./reverse-proxy" 12 minutes ago Up 12 minutes 5100/tcp, 8080/tcp, 0.0.0.0:7071->7071/tcp, :::7071->7071/tcp transport-reverse-proxy-1
В случае успешного запуска система готова к эксплуатации. Для получения доступа используйте последнюю строку вывода emsinstaller
, где содержатся стандартные логин, пароль и адрес доступа, например:
Веб-консоль EMS доступна по адресу https://ems.company.ru/ Стандартные логин, пароль: `SuperAdmin` `aA123123@`.
Где вместо адресу https://ems.company.ru/
, будет указано ваше доменное имя. В случае отсутствия доменного имени используйте IP-адрес, например https://<node-ip>/
.
После инсталляции системы, по умолчанию, пользователю не предоставляются доступы к кластерам системы. Для настройки доступа, после прохождения авторизации в системе, необходимо перейти в раздел "Права доступа" и выбрать подраздел "Доступы к оборудованию". В данном подразделе будут отображены все доступные кластера. Выберите кластер и нажмите на кнопку "Добавить". Выберите в выпадающем списке учетную запись, под которой был осуществлен вход и нажмите добавить. Для применения настроек доступа, необходимо выйти из системы и повторно авторизоваться. Выбранные кластера будут отображены в проводнике системы.
При возникновении вопросов по установке Системы обратитесь в техническую поддержку.
Техническая поддержка осуществляется в стандартные рабочие дни с 09:00 до 18:00 по московскому времени:
- Обращения через электронную почту
sd@bergen.tech
- Телефоны: +7 (925) 007-38-52; +7 (495) 664-37-83.
- Руководство пользователя EMS v4.2.2;
- Руководство администратора Системы EMS v4.2.2;
- Руководство по инсталляции Системы EMS v4.2.2 в режиме одной ноды;
- Руководство по обновлению Системы EMS с версии 3.5.3 до версии 4.2.2 в режиме одной ноды;
- Программа и методика испытаний системы EMS v4.2.2.
Чтобы определить значение переменной CLIENT_NAME
требуемой для установки EMS
, следует открыть полученный файл лицензий любым удобным способом (в инсталляционном пакете файл master/config/license.json
), и найти значение ключа "client_name"
.
Например, с использованием cat
:
cat master/config/license.json
В выводе будет примерно следующее:
{"license_id":"EMS:0000000-000-0000-0008-0000000000","client_name":"EMS","soft_name":"EMS"...
В разделе "client_name":"EMS"
значение CLIENT_NAME
находится в кавычках после знака двоеточия (":"
).
Для определения значения ACME_FINGERPRINT
необходимо выполнить:
docker exec -it transport-acme-1 cat /home/step/config/defaults.json | grep "fingerprint"
В выводе должно отобразиться следующее:
"fingerprint": "ab81afd5a7acc6d65ffd3cb7bcc46764665505d82545facb98267ae3b3cdf1e6",
Значение в кавычках после знака :
и есть ACME_FINGERPRINT
.
Сгенерируйте сертификат, который будет будет корневым для EMS, необходимы файлы ca.crt
и ca.key
.
Замените им стандартные сертификаты /opt/ems/transport/config/acme_config/ca.crt
, /opt/ems/transport/config/acme_config/ca.key
.
Для получения fingerprint вашего сертификата выполните команду:
docker run \
-v /opt/ems/transport/config/acme_config/ca.crt:/home/certs/ca.crt \
-v /opt/ems/transport/config/acme_config/ca.key:/home/certs/ca.key \
-v /opt/ems/transport/config/step_password:/home/step/secrets/password \
registry.bergen.tech/ems/deploy/step-ca:4.0.0-803f5368 \
step certificate fingerprint /home/certs/ca.crt
Последняя строка вывода - ваш fingerprint.
Полученное значение нужно установить переменной ACME_FINGERPRINT
в файлах .env
во всех директориях master
, tool
, transport
.
Также вы можете изменить перед созданием новой конфигурации пароль для подключения к центру сертификации, используя файл - /opt/ems/transport/config/password
.
При его изменении не забудьте изменить пароль в файлах:
opt/ems/master/config/step_password
opt/ems/tool/config/step_password
А также переменную ACME_PROVISIONER_PASSWORD
в файлах .env
во всех директориях master
, tool
, transport
.
Очистка всех правил пользовательских цепочек и разрешение исходящих, входящих и пересылаемых пакетов в IP Tables
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
После очистки правил и разрешения исходящих, входящих и пересылаемых пакетов требуется перезапустить службу Docker командой systemctl restart docker
Для обновления ядра необходимо добавить интернет репозитории Astra linux для загрузки пакетов.
Через текстовый редактор открываем файл /etc/apt/sources.list
Добавляем ссылки на репозитории:
deb https://dl.astralinux.ru/astra/frozen/1.7_x86-64/1.7.1/repository-main 1.7_x86-64 main contrib non-free
deb https://dl.astralinux.ru/astra/frozen/1.7_x86-64/1.7.1/repository-base 1.7_x86-64 main contrib non-free
После производим обновление пакетов и устанавливаем ядро.
apt update
apt install linux-5.10-generic
После установки нового ядра необходимо перезапустить ОС и выбрать устанвленную версию ядра при запуске системы. (по-умолчанию загрузка системы произведется с новой версией ядра.)
reboot
Проверить версию ядра можно следующей командой:
uname -r