Skip to content

Latest commit

 

History

History
1323 lines (1026 loc) · 104 KB

File metadata and controls

1323 lines (1026 loc) · 104 KB

Руководство по инсталляции Системы EMS v4.2.2 в режиме одной ноды

Аннотация

"Element Management System" ("Система управления объектами инфраструктуры") (далее – Система, EMS) – геораспределенная система мониторинга и управления объектами инфраструктуры.

Документ содержит информацию, необходимую для инсталляции ПО EMS версии 4.2.2 в режиме одной ноды.

Настоящий документ является составной частью комплекта технической документации на систему EMS и разработан в соответствии с требованиями ГОСТ 2.105-95 «Единая система конструкторской документации. Общие требования к текстовым документам».

1 Введение

1.1 Область применения

Система EMS предназначена для решения следующих бизнес-задач в IT-инфраструктуре компании:

  • Снижение расходов на использование нескольких систем, за счет централизованного мониторинга аппаратных и программных (виртуальные машины, гипервизоры, сервисы) ОМиУ(объектов мониторинга и управления) в системе;
  • Снижение времени на выполнение задач по обновлению и установке операционных систем и прошивок, за счет централизованной панели управления и возможности массового запуска операций на ОМиУ;
  • Снижение времени реагирования на инциденты, за счет формирования необходимого представления инфраструктуры, выделения ОМиУ требующих более пристального внимания и возможности настройки разных способов оповещения о событиях.

1.2 Назначение системы

Система EMS предназначена для:

  • Автоматизации задач управления серверным оборудованием;
  • Автоматизации задач управления сетевым оборудованием;
  • Мониторинга в режиме реального времени доступности серверов, устройств хранения и сетевых коммутаторов;
  • Мониторинга виртуальных машин, гипервизоров, систем и сервисов;
  • SMART мониторинга дисков;
  • Автоматизации развертывания операционных систем и программного обеспечения;
  • Предоставления информации для планирования модернизации оборудования ИТ-инфраструктуры.

Система представляет собой композицию docker-контейнеров. В качестве оркестратора контейнеров используется docker-compose.

1.3 Термины и определения

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, его необходимо поместить в бакет, сущность для организации хранения в хранилище.
ВМ Виртуальная машина - абстрактный вычислительный экземпляр, созданные программой, работающей на другой машине (физической), и который физически не существует, но работает, как настоящий компьютер.
Гипервизор Программа или аппаратная схема, обеспечивающая или позволяющая одновременное, параллельное выполнение нескольких операционных систем на одном и том же хост-компьютере. Гипервизор также обеспечивает изоляцию операционных систем друг от друга, защиту и безопасность, разделение ресурсов между различными запущенными ОС и управление ресурсами
ИС Информационная система
ОМиУ Оборудование мониторинга и управления.
ОС Операционная система
ЦОД Центр обработки данных

2 Назначение и условия применения

2.1 Виды деятельности и функции администратора

Действия по инсталляции Системы выполняет эксплуатационный персонал заказчика в соответствии с ролью:

  • Системный администратор - отвечает за следующие процессы:
    • Подготовка инфраструктуры для установки Системы;
    • Установка Системы;
    • Первичное конфигурирование Системы;
    • Установка первой лицензии на Систему;
    • Эксплуатационное сопровождение и конфигурирование Системы;
    • Эксплуатационная установка лицензий на Систему;
    • Подготовка инфраструктуры для обновления Системы;
    • Обновление Системы.

2.2 Требования к техническому обеспечению

2.2.1 Общие требования

Для функционирования Системы, необходимо выполнение следующих общих требований:

  1. Протокол канала связи - IPv4;
  2. Пропускная способность каналов связи между серверами в пределах ЦОД - 1 Гбит/сек;
  3. Целевые ОМиУ должны находиться в одной сети с ВМ single-node;
  4. Должна быть обеспечена сетевая доступность между АРМ оператора и ВМ single-node;
  5. Для выполнения процесса установки необходимо подключиться к ВМ, на которой производится установка по протоколу SSH;
  6. Все команды выполняются в консоли от имени пользователя root;
  7. Установка Системы может быть выполнена как в открытом, так и закрытом контуре; процесс установки Системы универсален для обоих случаев.

2.2.2 Системные требования

Внимание: Перед началом установки необходимо удостовериться, что ВМ соответствуют системным требованиям EMS. Несоответствие требованиям приведёт к невозможности установить систему или неработоспособности системы после завершения процесса установки!

Рекомендованные системные требования к аппаратному обеспечению приведены ниже.

Требования к дисковой подсистеме

В виду того, что EMS использует высокопроизводительные системы хранения данных, к дисковой подсистеме предъявляются строгие требования:

  • Дисковая подсистема должна обеспечивать производительность не менее 15000 IOPS (количество операций ввода-вывода в секунду);
  • Для обеспечения оптимальной производительности и стабильности Системы, настоятельно рекомендуется избегать использования сетевых файловых систем в качестве основного хранилища узлов. Применение сетевых файловых систем может привести к снижению производительности кластера, вплоть до потери функциональности;
  • Для хранения узлов рекомендуется использовать локальные твердотельные накопители (SSD), установленные непосредственно на физический хост. Это гарантирует повышение эффективности работы Системы и уменьшение вероятности возникновения технических проблем, связанных с хранением данных;
  • Рекомендованный необходимый объем дискового пространства для Системы, без учета пространства занимаемого ОС и прикладным ПО составляет не менее 200 GB;
  • Для корректной работы Системы рекомендуется использовать разметку, при которой все пространство выделено под корневой раздел /;
  • При наличии особой разметки дисков следует удостовериться что:
    1. В каталоге установки Системы /opt доступно не менее 15 GB.
    2. Docker для хранения данных, по умолчанию /var/lib/docker доступно не менее 175 GB.
    3. В каталоге первоначального размещения инсталляционного пакета /root доступно не менее 10 GB.
Требования к CPU

К CPU предъявляются строгие требования:

  • На каждой ноде должно быть не менее 20 vCPU;
  • 64-разрядный процессор с тактовой частотой не менее 2000 Hz.
Требования к RAM

К RAM предъявляются строгие требования:

  • На каждой ноде должно быть доступно не менее 20 Gb;
  • Версия - не ниже DDR4;
  • Тип ECC (код исправления ошибок) или аналогичная технология.
Требования к сети

Между нодами кластера должно быть обеспечено сетевое соединение со скоростью не менее 1 гигабит в секунду.

2.3 Требования к операционной среде и программному обеспечению

2.3.1 Состав инсталляционного пакета

  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

  1. Файл лицензии необходимо получать отдельно.

Внимание: Файл лицензии необходимо разместить в директории инсталляционного пакета: ~/ems-4.2.2/master/config/.

2.3.2 Требования к операционной среде

Поддерживаемые ОС для функционирования серверной части Системы EMS:

  • Oracle 8.9 Server Minimal;
  • Ubuntu 22.04.1 LTS Server;
  • Astra Linux Common Edition 1.7_x86-64;
  • RedOS 7.3.

При этом, необходимо обеспечить:

  • Строгое соответствие по версиям ОС.

2.3.3 Требования к программному обеспечению

2.3.3.1 Инфраструктурные компоненты, входящие в инсталляционный пакет

Версии инфраструктурных компонентов входящих в инсталляционный пакет (строгое соответствие по версиям) (Таблица 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

Внимание: Обязательно использование инфраструктурных компонентов из состава инсталляционного пакета.

2.3.3.2 Прикладное ПО, не входящее в инсталляционный пакет

Перед началом установки на ВМ кластера должно быть развернуто прикладное ПО (строгое соответствие по версии):

  • docker 26.1.3

Внимание: Функционирование гарантировано при использовании конфигурации docker по умолчанию. Если в компании приняты какие-либо стандарты конфигурирования ПО docker, в случае возникновения проблем с запуском EMS, исправьте настройки docker для обеспечения работоспособности EMS или верните настройки docker по умолчанию. В случае наличия корпоративных политик по обновлению используемых программных продуктов и их компонентов, необходимо поставить данное ПО как исключение для ограничения обновлений

Нестандартная конфигурация Docker должна удовлетворять следующим требованиям:

  1. Запуск и работа 52 контейнеров EMS:

Внимание: Настройки docker должны позволять выделить IP-адреса по количеству контейнеров внутри docker-сети.

2.3.3.3 Вспомогательное ПО, не входящее в инсталляционный пакет

Вспомогательное ПО представляет из себя утилиты в GNU/Linux (версии соответствуют доступным ОС):

  • tar - архиватор для файлов формата .tar;
  • vi - текстовый редактор (можно использовать любой доступный в системе, например nano или vim).

2.4 Требования к АРМ оператора

Под АРМ оператора в текущем документе подразумевается рабочее место администратора, выполняющего установку Системы EMS.

Общие требования к АРМ оператора:

  1. Для обеспечения функционирования клиентской части ПО EMS, рабочий компьютер пользователя должен удовлетворять следующим минимальным требованиям:
  • Процессор производительностью не ниже i5 9400+;
  • Минимум 8 Гб памяти;
  • Минимум 20 Гб свободного места на HDD или SSD;
  • Минимальное разрешение экрана пользователя не менее 1920x1080 пикселей;
  • Пропускная способность сетевого канала связи между компьютером пользователя и сервером должно составлять не менее 20 Мбит/сек, время прохождения пакетов не более 100 мс.
  1. Операционная система должна обладать GUI.

  2. Для обеспечения корректного функционирования ПО EMS, программное обеспечение АРМ должно использовать следующие настройки по умолчанию:

  • Масштаб в web-браузере 100%;
  • Размер шрифтов в ОС без масштабирования (100%).
  1. ПО для взаимодействия с интерфейсом системы:
  • SSH клиент;
  • Яндекс Браузер Версия 24.1.5.803+ (64-bit);
  • (Опционально) Браузер Google Chrome, Версия 124.0.6367.62+ (64 бит).

2.5 Уровень подготовки администраторов

Для выполнения шагов, описанных в документе, пользователь должен обладать практическими знаниями в области администрирования ОС Linux.

2.6 Уведомление о сборе информации при установке программного обеспечения.

В процессе установки Системы, о данной инсталляции будут собраны и отправлены в компанию 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.

3 Подготовка к работе

3.1 Подготовка инфраструктуры согласно системных требований

Перед началом установки необходимо подготовить инфраструктуру, соответствующую системным требованиям, перечисленным в разделах 2.2 и 2.3 текущей инструкции.

Внимание: Актуально только для Astra Linux - перед установкой EMS необходимо обновить ядро ОС до версии 5.10 (см. раздел приложение Обновления ядра ОС Astra linux)

3.2 Резервное копирование и восстановление ВМ

Перед началом установки необходимо создать резервную копию ВМ, подготовленной в разделе 3.1. Это обеспечит возможность быстрого восстановления в случае возникновения проблем в процессе установки.

Внимание: Резервное копирование ВМ может выполняться средствами гипервизора или специализированного ПО, если такое используется.

Алгоритм использования резервных копий:

  1. В случае нарушения последовательности установки, необходимо:
  • Восстановить ВМ из резервных копий;
  • Повторить попытку установки, начиная с раздела 3.3.
  1. В случае возникновения проблем, необходимо:
  • Выполнить проверку ВМ на соответствие перечисленным требованиям;
  • Проанализировать системные журналы на предмет наличия ошибок, относящихся к процессу установки Системы EMS;
  • Восстановить ВМ из резервной копии;
  • Внести корректировки в настройки ОС, согласно выявленным проблемам;
  • Создать резервную копию исправленного состояния ВМ;
  • Повторить попытку установки, начиная с раздела 3.3.

3.3 Подготовка АРМ оператора

Перед непосредственной установкой следует подготовить АРМ оператора:

  • Разместить на АРМ оператора инсталляционный пакет в рабочий каталог;
  • Разместить на АРМ оператора файл лицензий в рабочий каталог;
  • Установить на АРМ оператора клиент ssh;
  • Установить на АРМ оператора web-браузер согласно требованиям.

3.4 Размещение установочных файлов на серверах

3.4.1 Переименование каталога инсталляционного пакета

Предполагается, что файл полученного инсталляционного пакета называется 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 или любого другого привычного инструмента.

3.4.4 Размещение пакетов установки на ВМ

Необходимо разместить пакеты установки на соответствующих виртуальных машинах любым доступным способом.

В текущей инструкции приводится алгоритм размещения с помощью утилиты scp из поставки Linux.

Выполнение команд scp необходимо производить из рабочего каталога, в котором размещён инсталляционный пакет EMS (каталог содержащий ems-4.2.2).

3.4.4.1 Размещение на single-node

Для размещения инсталляционного пакета на сервере 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: ***
3.4.4.2 Размещение файла лицензий на single-node

После того как инсталляционный пакет на ВМ 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: ***

3.5 Проверка на соответствие системным требованиям перед выполнением установки EMS

Выполнить проверку системы на соответствие требованиям можно с помощью пакета emsinstaller, из пакета поставки.

Подключитесь к single-node с помощью SSH-клиента:

Замените {{ SINGLE_NODE_IP }} на IP адрес ВМ single-node:

ssh root@{{ SINGLE_NODE_IP }}

Внимание: Перед выполнением проверки пакет должен быть размещён на проверяемой ноде (выполнены действия раздела 4.2.1 настоящей инструкции).

3.5.3 Проверка single-node

Для того, чтобы выполнить проверку ВМ 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 Установка сертификата

Внимание: Дальнейшие действия вариативны и возможен выбор только одного из путей по разделам 3.6.1 или 3.6.2.

3.6.1 Самоподписанный сертификат из инсталлятора

EMS поставляется с собственным самоподписанным корневым сертификатом, служащим для защиты сетевого взаимодействия компонентов Системы. Cамоподписанный корневой сертификат устанавливается автоматически в процессе установки.

3.6.2 Клиентский сертификат

В случе необходимости, возможно использование собственного корневого сертификата.

Настройка инсталлятора для использования Клиентского корневого сертификата описана в разделе Справочная информация, подразделе Использование собственного корневого сертификата текущего документа.

3.7 Настройка сети

Для правильной работы Системы, настройки сети должны быть удовлетворены следующие требования (Таблица 4):

Внимание: Для правильной работы EMS на ВМ должен быть отключен системный firewall. Для ОС Ubuntu ufw disable. Для ОС Oracle systemctl 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 Отключены

3.8 Конфигурирование инсталлятора

Перед началом установки необходимо заполнить конфигурацию инсталлятора 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 описано в разделе Справочная информация данной инструкции.

3.9 Настройка ВМ по обеспечению работоспособности функции EMS по установке ОС

Для обеспечения работоспособности функционала по выполнению операции по установке ОС необходимо выполнить подготовительные работы на ВМ single-node.

Внимание: Данный шаг актуален только для ВМ под управлением ОС Oracle Linux и RedOS.

На ВМ single-node необходимо выполнить следующие команды:

mknod /dev/loop0 b 7 0

Для того, чтобы изменения сохранялись после перезагрузки ВМ необходимо выполнить следующие команды:

  1. Создать и открыть следующий файл:
vi /etc/tmpfiles.d/loop.conf
  1. Добавить в файл такое содержимое:
b! /dev/loop0  0660  root  disk  -  7:0
  1. Для сохранения изменений и выхода из редактора нажмите <ESC>; редактор переведется в режим команд, после чего введите :wq, и нажмите <Enter> (для редакторов vi и vim).

3.10 Настройка интеграции с внешними системами

3.10.1 Интеграция с Telegram

Для настройки отправки уведомлений в мессенджер Telegram необходимо выполнить следующие шаги:

  1. Перейдите по ссылке https://t.me/BotFather. В мессенджере откроется специальный пользователь для создания бота;
  2. Отправьте команду: /newbot, для создания нового бота;
  3. Отправьте имя бота: ems-bot-${MY_NAME}, ${MY_NAME} необходимо заменить на название компании;
  4. При необходимости установите аватар бота /setuserpic, ems-bot-${MY_NAME};
  5. В ответ будет отправлен токен доступа бота. Необходимо его скопировать.
  6. Подключитесь к single-node с помощью ssh-клиента:

Замените {{ SINGLE_NODE_IP }} на IP адрес ВМ single-node.

ssh root@{{ SINGLE_NODE_IP }}
  1. Измените конфигурацию EMS в файле master/.env

Файл .env расположен в каталоге master инсталляционного пакета EMS.

Файл может быть отредактирован любым текстовым редактором. Пример с использованием текстового редактора vi:

cd ~/ems-4.2.2/
vi master/.env
  1. В значение переменной TELEGRAM_KEY введите токен доступа бота полученный на шаге 5;

  2. Для сохранения изменений и выхода из редактора нажмите <ESC>; редактор переведется в режим команд, после чего введите :wq, и нажмите <Enter> (для редакторов vi и vim).

Настройка EMS для использования бота описана в Руководстве пользователя.

3.10.2 Интеграция с SMPP

Для настройки отправки SMS уведомлений необходимо выполнить следующие шаги:

  1. Получить услугу у провайдера 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 Номер телефона, от которого будут приходить оповещения
  1. Подключитесь к single-node с помощью ssh-клиента:

Замените {{ SINGLE_NODE_IP }} на IP адрес ВМ single-node.

ssh root@{{ SINGLE_NODE_IP }}
  1. Измените конфигурацию EMS в файле master/.env

Файл .env расположен в каталоге master инсталляционного пакета EMS.

Файл может быть отредактирован любым текстовым редактором. Пример с использованием текстового редактора vi:

cd ~/ems-4.2.2/
vi master/.env
  1. Найдите и укажите значения следующих переменных:
SMPP_HOST=<Задайте_значение_выданное_провайдером>
SMPP_PORT=<Задайте_значение_выданное_провайдером>
SMPP_TIMEOUT=<Задайте_значение_выданное_провайдером>
SMPP_SYSTEM_ID=<Задайте_значение_выданное_провайдером>
SMPP_PASSWORD=<Задайте_значение_выданное_провайдером>
SMPP_PHONE_NUMBER=<Задайте_значение_выданное_провайдером>
  1. Для сохранения изменений и выхода из редактора нажмите <ESC>; редактор переведется в режим команд, после чего введите :wq, и нажмите <Enter> (для редакторов vi и vim).

4 Процесс установки

4.1 Контрольный список готовности к инсталляции

Внимание: Прежде чем приступать к инсталляции 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; объем пространства необходимого ОС не учитывается в заданном значении).
  • Требования к сетевой инфраструктуре:
    • Между нодами кластера обеспечено сетевое соединение со скоростью не менее 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:
        • 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
      • Отключен фаервол;
      • Создано блочное устройство(для RedHat-based дистрибутивов);
      • Версия ядра соответствует документации (Astra Linux).
    • Лицензия соответствует требованиям по подготовке к инсталляции:
      • Актуальная лицензия получена;
      • CLIENT_NAME в ems.config соответствует лицензии;
      • Срок истечения лицензии не вышел.

4.2 Подготовка к установке EMS

Подготовка к установке включает в себя следующие шаги:

  1. Подключитесь к single-node с помощью SSH-клиента:

Замените {{ SINGLE_NODE_IP }} на IP адрес ВМ single-node:

ssh root@{{ SINGLE_NODE_IP }}
  1. Заполните конфигурацию EMS на основе окружения, созданного для развёртывания (см. раздел 2.2). Ниже представлено подробное описание параметров конфигурации.

Файл ems.config расположен в каталоге config в корне каталога инсталляционного пакета EMS.

Подробное описание параметров конфигурации описано в разделе 3.8 Конфигурирование инсталлятора текущего документа.

Файл может быть отредактирован любым текстовым редактором, доступным в системе, например vi. Внести в файл ems.config информацию для настройки EMS. Пример с использованием текстового редактора vi:

cd ~/ems-4.2.2/
vi config/ems.config
  1. Для сохранения изменений и выхода из редактора нажмите <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"

4.3 Установка EMS

4.3.1 Процедура установки

Запустите инсталлятор 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@`.

4.3.2 Подтверждение корректности установки

Убедитесь в том, что приложение развёрнуто. Для этого выполните команду:

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>/.

После инсталляции системы, по умолчанию, пользователю не предоставляются доступы к кластерам системы. Для настройки доступа, после прохождения авторизации в системе, необходимо перейти в раздел "Права доступа" и выбрать подраздел "Доступы к оборудованию". В данном подразделе будут отображены все доступные кластера. Выберите кластер и нажмите на кнопку "Добавить". Выберите в выпадающем списке учетную запись, под которой был осуществлен вход и нажмите добавить. Для применения настроек доступа, необходимо выйти из системы и повторно авторизоваться. Выбранные кластера будут отображены в проводнике системы.

5 Техническая поддержка

При возникновении вопросов по установке Системы обратитесь в техническую поддержку.
Техническая поддержка осуществляется в стандартные рабочие дни с 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

Чтобы определить значение переменной 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

Для определения значения 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

Для обновления ядра необходимо добавить интернет репозитории 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