Мониторинг сети · 6 min read · Dec 07, 2025
Как установить систему мониторинга сети OpenNMS Horizon на Debian 11

OpenNMS — это бесплатная, с открытым исходным кодом и одна из самых мощных платформ для мониторинга и управления сетью, используемая для мониторинга удаленных устройств из центрального места. Она поддерживает множество функций, включая Provisioning, мониторинг услуг, управление событиями, поддержку графиков и многое другое. OpenNMS использует SNMP и JMX и собирает информацию из удаленных систем. Она работает на операционных системах Linux и Windows и предоставляет веб-интерфейс для легкого мониторинга.
В этом руководстве я покажу вам, как установить OpenNMS на Debian 11.
Предварительные требования
- Сервер с установленным Debian 11.
- Действительное доменное имя, указывающее на IP-адрес вашего сервера.
- Настроенный пароль root на сервере.
Установка Java на Debian 11
OpenNMS — это приложение на основе Java. Поэтому Java должна быть установлена на вашем сервере. Если она не установлена, вы можете установить ее, выполнив следующую команду:
apt-get install default-jdk -yПосле установки Java проверьте версию Java, используя команду ниже:
java --versionВы получите версию Java в следующем выводе:
openjdk 11.0.13 2021-10-19
OpenJDK Runtime Environment (build 11.0.13+8-post-Debian-1deb11u1)
OpenJDK 64-Bit Server VM (build 11.0.13+8-post-Debian-1deb11u1, mixed mode, sharing)
Установка OpenNMS на Debian 11
По умолчанию OpenNMS не включен в основной репозиторий Debian 11. Поэтому вам нужно будет добавить официальный репозиторий OpenNMS в APT.
Сначала установите все необходимые зависимости, выполнив следующую команду:
apt-get install curl gnupg2 wget -yПосле установки всех пакетов создайте файл репозитория OpenNMS, используя команду ниже:
nano /etc/apt/sources.list.d/opennms.listДобавьте следующие строки:
deb https://debian.opennms.org stable main
deb-src https://debian.opennms.org stable main
Сохраните и закройте файл, затем импортируйте GPG-ключ с помощью следующей команды:
wget -O - https://debian.opennms.org/OPENNMS-GPG-KEY | apt-key add -Вы получите следующий вывод:
Connecting to debian.opennms.org (debian.opennms.org)|3.214.84.83|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1335 (1.3K)
Saving to: ‘STDOUT’
- 100%[=================================================================>] 1.30K --.-KB/s in 0s
2021-11-28 07:58:07 (16.0 MB/s) - written to stdout [1335/1335]
OK
Далее обновите кэш репозитория и установите OpenNMS с помощью следующей команды:
apt-get update -y
apt-get install opennms -yВы получите следующую ошибку во время установки:
Failed to install iplike into the template1 or opennms databases. See /tmp/install_iplike.log for details. To skip this step and install manually, set the
environment variable SKIP_IPLIKE_INSTALL before installing this package. To install iplike into your database, use the /usr/sbin/install_iplike.sh script. See
`install_iplike.sh -h` for more details.
Чтобы решить эту ошибку, вам нужно будет создать базу данных и пользователя для OpenNMS в PostgreSQL.
Создание базы данных в PostgreSQL
Сервер PostgreSQL устанавливается автоматически во время процесса установки OpenNMS.
Сначала запустите службу PostgreSQL, используя следующую команду:
systemctl start postgresqlЗатем подключитесь к экземпляру PostgreSQL, используя следующую команду:
su - postgresПосле подключения создайте пользователя для OpenNMS и установите пароль, используя следующую команду:
createuser opennms
psql -c "ALTER USER opennms WITH PASSWORD 'opennms';"Затем создайте базу данных для OpenNMS и установите пароль для пользователя postgres:
createdb -O opennms opennms
psql -c "ALTER USER postgres WITH PASSWORD 'securepassword';"Затем выйдите из оболочки PostgreSQL с помощью следующей команды:
exitПосле завершения вы можете перейти к следующему шагу.
Настройка OpenNMS
Далее вам нужно будет отредактировать файл источника данных OpenNMS и определить учетные данные вашей базы данных:
nano /usr/share/opennms/etc/opennms-datasources.xmlОпределите свои учетные данные базы данных, как показано ниже:
Сохраните и закройте файл, когда закончите, затем выполните следующую команду для определения среды Java:
sudo -u opennms /usr/share/opennms/bin/runjava -sВы получите следующий вывод:
runjava: Looking for an appropriate JVM...
runjava: Checking for an appropriate JVM in JAVA_HOME...
runjava: Skipping... JAVA_HOME not set.
runjava: Checking JVM in the PATH: "/etc/alternatives/java"...
runjava: Did not find an appropriate JVM in the PATH: "/etc/alternatives/java"
runjava: Searching for a good JVM...
runjava: Found a good JVM in "/usr/lib/jvm/java-11-openjdk-amd64/bin/java".
runjava: Value of "/usr/lib/jvm/java-11-openjdk-amd64/bin/java" stored in configuration file.
Далее выполните следующую команду, чтобы завершить настройку OpenNMS:
sudo -u opennms /usr/share/opennms/bin/install -disВы получите следующий вывод:
Finished in 0 seconds
Processing RemotePollerServiceConfigMigratorOffline: Remove deprecated RemotePoller service entry from service-configuration.xml, see NMS-12684
- Running pre-execution phase
Creating backup of /usr/share/opennms/etc/service-configuration.xml
Zipping /usr/share/opennms/etc/service-configuration.xml
- Running execution phase
Current configuration: 32 services.
A service entry named 'OpenNMS:Name=PerspectivePoller' already exists.
Final configuration: 32 services.
- Saving the execution state
- Running post-execution phase
Removing backup /usr/share/opennms/etc/service-configuration.xml.zip
Finished in 0 seconds
Upgrade completed successfully!
Запуск службы OpenNMS
После настройки OpenNMS запустите службу OpenNMS и включите ее для автоматического запуска при перезагрузке системы, используя следующую команду:
systemctl start opennms
systemctl enable opennmsВы можете проверить статус OpenNMS, используя следующую команду:
systemctl status opennmsВы получите следующий вывод:
? opennms.service - OpenNMS server
Loaded: loaded (/lib/systemd/system/opennms.service; disabled; vendor preset: enabled)
Active: active (running) since Sun 2021-11-28 08:10:51 UTC; 16s ago
Process: 22990 ExecStart=/usr/share/opennms/bin/opennms -s start (code=exited, status=0/SUCCESS)
Main PID: 24106 (java)
Tasks: 68 (limit: 4679)
Memory: 559.2M
CPU: 48.083s
CGroup: /system.slice/opennms.service
??24105 bash /usr/share/opennms/bin/opennms -s start
??24106 /usr/lib/jvm/java-11-openjdk-amd64/bin/java --add-modules=java.base,java.compiler,java.datatransfer,java.desktop,java.in>
Nov 28 08:11:02 debian11 opennms[24106]: [DEBUG] System property 'opennms.library.jicmp' set to '/usr/lib/jni/libjicmp.so. Attempting to loa>
Nov 28 08:11:02 debian11 opennms[24106]: [INFO] Successfully loaded jicmp library.
Nov 28 08:11:02 debian11 opennms[24106]: [DEBUG] System property 'opennms.library.jicmp6' set to '/usr/lib/jni/libjicmp6.so. Attempting to l>
Nov 28 08:11:02 debian11 opennms[24106]: [INFO] Successfully loaded jicmp6 library.
Nov 28 08:11:02 debian11 opennms[24106]: [DEBUG] System property 'opennms.library.jicmp' set to '/usr/lib/jni/libjicmp.so. Attempting to loa>
Nov 28 08:11:02 debian11 opennms[24106]: [INFO] Successfully loaded jicmp library.
Nov 28 08:11:02 debian11 opennms[24106]: [DEBUG] System property 'opennms.library.jicmp6' set to '/usr/lib/jni/libjicmp6.so. Attempting to l>
Nov 28 08:11:02 debian11 opennms[24106]: [INFO] Successfully loaded jicmp6 library.
Nov 28 08:11:07 debian11 opennms[24106]: Nov 28, 2021 8:11:07 AM org.hibernate.validator.internal.util.Version
Nov 28 08:11:07 debian11 opennms[24106]: INFO: HV000001: Hibernate Validator 4.3.2.Final
На этом этапе OpenNMS запущен и слушает на порту 8980. Вы можете проверить это с помощью следующей команды:
ss -antpl | grep 8980Вы получите следующий вывод:
LISTEN 0 50 *:8980 *:* users:(("java",pid=24106,fd=1046))
Настройка Nginx как обратного прокси для OpenNMS
Далее рекомендуется установить и настроить Nginx как обратный прокси для OpenNMS. Сначала установите сервер Nginx с помощью следующей команды:
apt-get install nginx -yПосле установки Nginx создайте файл конфигурации виртуального хоста Nginx:
nano /etc/nginx/conf.d/opennms.confДобавьте следующую конфигурацию:
server {
listen 80;
server_name opennms.example.com;
access_log /var/log/nginx/opennms.access.log;
error_log /var/log/nginx/opennms.error.log;
location /
{
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-OpenNMS-Server-URL https://nms.hacc.edu/;
proxy_pass http://server-ip:8980;
}
}
Сохраните и закройте файл, затем проверьте Nginx на наличие ошибок в синтаксисе конфигурации:
ginx -tВы получите следующий вывод:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Далее перезапустите службу Nginx, чтобы применить изменения:
systemctl restart nginxЧтобы проверить статус работы Nginx, выполните следующую команду:
systemctl status nginxВы должны увидеть следующий вывод:
? nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2021-11-28 08:17:14 UTC; 6s ago
Docs: man:nginx(8)
Process: 25964 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
Process: 25965 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
Main PID: 25967 (nginx)
Tasks: 3 (limit: 4679)
Memory: 3.2M
CPU: 53ms
CGroup: /system.slice/nginx.service
??25967 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
??25968 nginx: worker process
??25969 nginx: worker process
Nov 28 08:17:14 debian11 systemd[1]: Starting A high performance web server and a reverse proxy server...
Nov 28 08:17:14 debian11 systemd[1]: Started A high performance web server and a reverse proxy server.
Доступ к панели управления OpenNMS
Теперь откройте веб-браузер и получите доступ к веб-интерфейсу OpenNMS, используя URL http://opennms.example.com. Вы должны увидеть страницу входа в OpenNMS:

Введите имя пользователя и пароль по умолчанию как admin и нажмите кнопку Войти. Вы должны увидеть панель управления OpenNMS на следующем экране:

Теперь нажмите admin > Изменить пароль, чтобы изменить пароль администратора по умолчанию, как показано ниже:

Измените свой пароль по умолчанию и нажмите кнопку Отправить. Вы должны увидеть следующий экран:

Заключение
Поздравляю! Вы успешно установили OpenNMS с Nginx в качестве обратного прокси на сервере Debian 11. Теперь вы можете добавлять удаленные устройства в OpenNMS и начинать их мониторинг через веб-браузер. Не стесняйтесь задавать мне вопросы, если у вас есть какие-либо вопросы.
Get new posts in your inbox
No spam. Unsubscribe anytime.