Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

A Shared Block
hiddentrue


Metadata list
hiddentrue
|| DeviceType | Облачный сервис мониторинга и управления конфигурациями «ELTEX» |
|| DeviceName | ECCM |
|| DocTitleAdditional | Инструкция по установке |
|| fwversion | 1.6 |
|| username | eccm |
|| password | eccm |


Оглавление
printablefalse

Требования к серверу

Для стабильной работы сервер должен отвечать следующим требованиям:

  • операционная система семейства Linux, поддерживающая docker (рекомендуется Ubuntu server 20 и новее);

  • объем оперативной памяти от 8 ГБ;

  • процессор, поддерживающий виртуализацию и имеющий от 4-х ядер;

  • от 40 ГБ свободного места на жестком диске;

  • наличие сетевого интерфейса 1 Гбит/с.

Получение привилегий sudo без дополнительного ввода пароля (опционально)

От имени непривилегированного пользователя необходимо выполнить команду:

...

Далее необходимо ввести пароль. После этого для выполнения команд с sudo или перехода в режим суперпользователя дополнительный ввод пароля не потребуется.

Установочный архив

Файлы, необходимые для запуска проекта, распространяются в виде tar-архива. Их можно получить с общедоступного ftp-сервера. Загрузите архив на сервер и распакуйте его. Рекомендуется распаковывать архив в заранее созданную отдельную директорию.

...

Блок кода
wget ftp://wifiguest:GuestWiFi@ftp.eltex.org/eccm/eccm-1.6.tar.gz
mkdir eccm
sudo tar -zxvf eccm-1.6.tar.gz -C eccm/

Установка docker и docker-compose

Наиболее простой и быстрый способ установки — перейти в директорию, в которую был распакован установочный архив, и воспользоваться скриптом compose-tools.sh, используя флаг --install. Этот способ подойдет, если сервер на котором разворачивается система имеет доступ в интернет для скачивания всех необходимых приложений и файлов.

...

Блок кода
docker-compose version 1.29.2, build 5becea4

Запуск ECCM

Проект ECCM в данное время распространяется в виде набора файлов, позволяющих запустить все необходимые сервисы с помощью docker-compose. Проект разделен на три docker-стека:

...

Такое разделение обусловлено необходимостью обеспечения горизонтального масштабирования проекта и созданием возможности интеграции с другими проектами компании, например Eltex.EDM.

Скрипт запуска

Ввиду обилия параметров запуска системы, был подготовлен скрипт compose-tools.sh, выполняющий запуск проекта на одном хосте с параметрами производительности, позволяющими обслуживать около 100 устройств (фактическая производительность зависит от многих факторов, включающих производительность аппаратной части и сложность обслуживаемых сетевых устройств). 

...

Блок кода
sudo ./compose-tools.sh --start 100.110.2.2 --dhcp


Переменные окружения

Файлы, необходимые для запуска ECCM и содержащие переменные окружения и конфигурации, находятся в директории, в которую вы распаковали установочный архив:

Блок кода
postgres/.env
postgres/data/postgresql.conf​
identity-provider/.env
​eccm/.env

postgres/.env

В postgres/.env находятся переменные, определяющие поведение БД Postgres при запуске её в контейнере. В таблице представлен перечень данных переменных:

ПеременнаяЗначение по умолчаниюОписание
COMPOSE_PROJECT_NAMEpostgresНазвание проекта в docker-compose (используется для идентификации, в случае если на сервере запущено несколько проектов)
POSTGRES_USER
Параметр, позволяющий переопределить логин по умолчанию для доступа к базе данных
POSTGRES_PASSWORD
Параметр, позволяющий переопределить пароль по умолчанию для доступа к базе данных
POSTGRES_TIMEZONEAsia/NovosibirskВременной пояс, в котором работает система (указывается в соответствии с tz database, например Asia/Novosibirsk)
POSTGRES_SHM_SIZE2gbОграничение выделенной оперативной памяти для работы с БД Postgres

postgres/data/postgresql.conf

Файл содержит параметры, влияющие на производительность базы данных. Настройки по умолчанию достаточны для тестового запуска и поддержки около 100 устройств. Инструкции по изменению конфигурации можно найти на странице ECCM на сайте https://eltex-co.ru/ или обратиться в службу технической поддержки ELTEX.

identity-provider/.env

В файле identity-provider/.env находятся переменные, определяющие поведение группы контейнеров, отвечающих за авторизацию пользователя в системе ECCM.

...

ПеременнаяЗначение по умолчаниюОписание
COMPOSE_PROJECT_NAMEeccmНазвание проекта в docker-compose (используется для идентификации, в случае если на сервере запущено несколько проектов)
ECCM_PROFILEproduction
IDENTITY_PROVIDER_TAG1.6
IDENTITY_PROVIDER_REGISTRYhub.eltex-co.ruАдрес docker-registry, с которого будет выполняться получение образов системы. Если используется локальное зеркало, то можно указать его адрес
IDENTITY_PROVIDER_WEB_ADDRESS192.168.0.1Адрес, на котором будет работать сервис identity-provider
IDENTITY_PROVIDER_WEB_PORT9090Порт для доступа к сервису identity-provider
POSTGRES_HOST192.168.0.1Адрес, на котором работает БД Postgres
POSTGRES_PORT5432Порт для доступа к БД Postgres
POSTGRES_USER
Параметр, позволяющий переопределить логин по умолчанию для доступа к базе данных
POSTGRES_PASSWORD
Параметр, позволяющий переопределить пароль по умолчанию для доступа к базе данных

eccm/.env

В файле eccm/.env находятся переменные, определяющие поведение проекта.

...

ПеременнаяЗначение по умолчаниюОписание
COMPOSE_PROJECT_NAMEeccmНазвание проекта в docker-compose (используется для идентификации, в случае если на сервере запущено несколько проектов)
ECCM_PROFILEproduction
ECCM_TAG1.6
ECCM_REGISTRYhub.eltex-co.ruАдрес docker-registry, с которого будет выполняться получение образов системы. Если используется локальное зеркало, то можно указать его адрес
ECCM_BACKBONE_ADDRESS192.168.0.1Внутренний адрес, на котором будет работать система ECCM с устройствами в сети
ECCM_WEB_ADDRESS192.168.0.1Адрес, на котором будет работать web-интерфейс системы ECCM
IDENTITY_PROVIDER_HOST192.168.0.1Внешний адрес сервиса identity-provider
IDENTITY_PROVIDER_PORT9090Порт для доступа к сервису identity-provider
ECCM_WEB_PORT80Порт для доступа к web-интерфейсу
ECCM_TIMEZONEAsia/NovosibirskВременной пояс, в котором работает система (указывается в соответствии с tz database, например Asia/Novosibirsk)
ECCM_LOGLEVEL'INFO'Уровень логирования в проекте
MAX_PARALLEL_TASKS4Количество одновременно выполняемых операций с устройствами
ECCM_MONITORING_SERVER_MEM_HARD_LIMIT512MОграничение физической памяти для docker-контейнера
ECCM_MONITORING_WEB_MEM_HARD_LIMIT256MОграничение физической памяти для docker-контейнера
POSTGRES_HOST192.168.0.1Адрес, на котором работает БД Postgres
POSTGRES_PORT5432Порт для доступа к БД Postgres
POSTGRES_USER
Параметр, позволяющий переопределить логин по умолчанию для доступа к базе данных
POSTGRES_PASSWORD
Параметр, позволяющий переопределить пароль по умолчанию для доступа к базе данных
TFTP_POOL_SIZE100Параметр, определяющий количество потоков/подключений к TFTP-серверу

Оффлайн установка

Для оффлайн-установки и последующего использования ECCM требуется:

  • Установить docker на хост.
  • Загрузить сохраненные docker-образы в хранилище docker-хоста.
  • Запустить ECCM.

Установка docker

Docker можно установить в систему множеством способов, выбор которых зависит от используемой операционной системы. Различные варианты установки приведены на официальном сайте https://docs.docker.com/engine/install/ubuntu/#install-from-a-package , далее рассмотрим установку для Ubuntu 20.04 amd64.

...

2. скопируйте на целевой хост и установите командой dpkg -i <packege_name>

Установка docker-compose

Скопируйте на хост файл для запуска docker-compose https://github.com/docker/compose/releases/download/1.29.1/docker-compose-Linux-x86_64, поместите его в /usr/local/bin/, с именем docker-compose. Установите для него разрешение на выполнение командой:

...

Для более подробного описания процесса установки обратитесь к официальной документации docker-compose https://docs.docker.com/compose/install/.

Установка сохраненных docker-образов ECCM

Скопируйте на хост установочную директорию с сохраненными архивами docker-образов. Распакуйте их в директорию с установочными файлами ECCM. И запустите их выгрузку в docker.

Блок кода
wget ftp://wifiguest:GuestWiFi@ftp.eltex.org/eccm/images/eccm_images_1.6.tar
sudo tar -xvf eccm_images_1.6.tar -C eccm/1.6
sudo eccm/1.6/compose-tools.sh --load

Запуск ECCM из загруженных образов

После загрузки нужных образов, процедура запуска не отличается от описанной в разделе "Запуск ECCM".

Доступ к web-интерфейсу

Для подключения к web-интерфейсу ECCM нужно ввести в браузере следующий адрес:

...

Учетные данные, используемые по умолчанию: логин 'eccm', пароль 'eccm'.


Известные проблемы и методы решения

Ошибки, возникающие при запуске проекта

Ошибка:

ERROR: Couldn't connect to Docker daemon at http+[docker://localhost](docker://localhost) - is it running?

...

Блок кода
sudo docker network inspect $(docker network ls --filter "DRIVER=bridge" --format '{{ .Name }}')  -f '{{ .Name  }} {{ (index .IPAM.Config 0).Subnet }}'

Ошибки, возникающие при остановке проекта

Ошибка:

ERROR: error while removing network: network eccm_eltex-internal id 324bd72dd9c107cf2ea48effb75d9e7ad2dfbc8f5f7317b89cd7f318d61d5c4b has active endpoints

...

Блок кода
sudo systemctl restart docker 

Рекомендации к оформлению заявок в техническую поддержку ECCM

Для более быстрого и удобного взаимодействия с сотрудниками технической поддержки ECCM предлагаются некоторые рекомендации к оформлению заявок по ошибкам.

Общие рекомендации

При обращении стоит сразу указать информацию:

...

Также настоятельно рекомендуется воспользоваться скриптом для сбора информации.

Скрипт сбора информации

Скрипт автоматизирует сбор метрик c системы, а затем упаковывает их в сжатый архив для более удобной транспортировки.

...