Установка из NPM.
sudo npm install -g genieacs@1.2.5
Создайте системного пользователя для запуска демонов GenieACS.
sudo useradd --system --no-create-home --user-group genieacs
Создайте каталог для сохранения расширений и файла среды, установите владельца для него. Каталог /opt/genieacs/ext/
будет использован для хранения скриптов расширений (если они есть).
mkdir /opt/genieacs
mkdir /opt/genieacs/ext
chown genieacs:genieacs /opt/genieacs/ext
Создайте файл /opt/genieacs/genieacs.env
для хранения параметров конфигурации, которые передаются GenieACS в качестве переменных сред и через редактор вставьте в него нижеуказанный текст. Вы можете изменить значения переменных сред под ваши нужды, они описаны на сайте разработчика.
GENIEACS_CWMP_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-cwmp-access.log
GENIEACS_NBI_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-nbi-access.log
GENIEACS_FS_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-fs-access.log
GENIEACS_UI_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-ui-access.log
GENIEACS_DEBUG_FILE=/var/log/genieacs/genieacs-debug.yaml
NODE_OPTIONS=--enable-source-maps
GENIEACS_EXT_DIR=/opt/genieacs/ext
GENIEACS_UI_JWT_SECRET=secret
Установите владельца файла и права доступа к файлу.
sudo chown genieacs:genieacs /opt/genieacs/genieacs.env
sudo chmod 600 /opt/genieacs/genieacs.env
Создать каталог журналов и установите владельца.
mkdir /var/log/genieacs
chown genieacs:genieacs /var/log/genieacs
Создайте файл модуль systemd для каждой из четырех служб GenieACS. Обратите внимание, что мы используем EnvironmentFile для чтения переменных среды из файла, который мы создали ранее. Подробно прочитать за что отвечает каждая служба можно по ссылке.
Выполните следующую команду, чтобы создать genieacs-cwmp
службу.
sudo systemctl edit --force --full genieacs-cwmp
В редакторе вставьте нижеуказанный код.
[Unit]
Description=GenieACS CWMP
After=network.target
[Service]
User=genieacs
EnvironmentFile=/opt/genieacs/genieacs.env
ExecStart=/usr/bin/genieacs-cwmp
[Install]
WantedBy=default.targe
Выполните следующую команду, чтобы создать genieacs-nbi
службу.
sudo systemctl edit --force --full genieacs-nbi
В редакторе вставьте нижеуказанный код.
[Unit]
Description=GenieACS NBI
After=network.target
[Service]
User=genieacs
EnvironmentFile=/opt/genieacs/genieacs.env
ExecStart=/usr/bin/genieacs-nbi
[Install]
WantedBy=default.target
Выполните следующую команду, чтобы создать genieacs-fs
службу.
sudo systemctl edit --force --full genieacs-fs
В редакторе вставьте нижеуказанный код.
[Unit]
Description=GenieACS FS
After=network.target
[Service]
User=genieacs
EnvironmentFile=/opt/genieacs/genieacs.env
ExecStart=/usr/bin/genieacs-fs
[Install]
WantedBy=default.target
Выполните следующую команду, чтобы создать genieacs-ui
службу.
sudo systemctl edit --force --full genieacs-ui
В редакторе вставьте нижеуказанный код.
[Unit]
Description=GenieACS UI
After=network.target
[Service]
User=genieacs
EnvironmentFile=/opt/genieacs/genieacs.env
ExecStart=/usr/bin/genieacs-ui
[Install]
WantedBy=default.target
Задайте ротацию файлов журнала с помощью утилиты logrotate.
Создайте файл /etc/logrotate.d/genieacs и вставьте в него нижеуказанный код. Вы можете изменить политику ротации под ваши нужды.
/var/log/genieacs/*.log /var/log/genieacs/*.yaml {
daily
rotate 30
compress
delaycompress
dateext
}
Добавьте службы в автозапуск системы, включите их и проверьте статус работы.
sudo systemctl enable genieacs-cwmp
sudo systemctl start genieacs-cwmp
sudo systemctl status genieacs-cwmp
sudo systemctl enable genieacs-nbi
sudo systemctl start genieacs-nbi
sudo systemctl status genieacs-nbi
sudo systemctl enable genieacs-fs
sudo systemctl start genieacs-fs
sudo systemctl status genieacs-fs
sudo systemctl enable genieacs-ui
sudo systemctl start genieacs-ui
sudo systemctl status genieacs-ui
На этом установка и настройка завершены.