Retifff's Blog

Мой ИТ блог

Установка сервера мониторинга NetXMS на Windows Server и MS SQL

Posted by Retifff на 22.07.2019

В этой статье я рассмотрю установку серверной части системы мониторинга NetXMS на Windows Server 2019 c Microsoft SQL Server Express 2017. Вообще, мне больше нравится конфигурация Ubuntu Server + MySQL, несмотря на то, что я виндузятник. Преимущества и недостатки есть как у одного варианта, так и и другого, каждый выбирает себе подходящий.

Картинка для привлечения внимания:

На Windows недостаток — это стоимость самой операционной системы Windows Server в первую очередь. Из преимуществ — простота работы с базой MS SQL, бекапов и т.п., так как большинство виндузятников уже имеют какой-то опыт работы с MS SQL. Но не буду углубляться в сравнения, статья не об этом.

Казалось бы, чего проще, всего лишь установка, которая в принципе и в мануале описана и в Интернете статьи присутствуют (хотя подробной пошаговой статьи я не нашел). Но, с некоторыми вещами, особенно с подключением к базе во время установки, довольно часто возникают проблемы (такая ошибка, как «Unable to connect to database: [Microsoft][SQL Server native client 11.0]», к примеру), здесь же я описываю стопроцентно рабочий вариант.

Установка Microsoft SQL Server Express 2017

Из предварительных требований, имеем установленный Windows Server 2019 в домене corp.testcompany.ru с именем netxms.corp.testcompany.ru. Установка MS SQL особенно ничем не примечательна, однако на всякий случай пройду по основным пунктам установки. Использоваться будет Express-редакция MS SQL и, в принципе, её вполне достаточно даже для довольно больших сетей (исключая разве что крупные энтерпрайзы с тысячами серверов и большим объемом параметров мониторинга). К тому же, Express-редакция бесплатна.

Скачать дистрибутив SQL Server 2017 Express можно отсюда: https://www.microsoft.com/en-US/download/details.aspx?id=55994. Запускаем установку, в окне SQL Server Installation Center нажимаем ссылку «New SQL Server stand-alone installation or add features to existing installation». В появившемся окне установки соглашаемся с лицензией и нажимаем Next. Далее происходит установка необходимых файлов для инсталляции, проверка необходимых требований и т.п.. На странице Install Rules должно быть всё Passed и предупреждение Windows Firewall. Есть смысл прочитать его, если собираетесь подключаться к MS SQL по сети, чтобы открыть необходимые порты. Жмем Next:

На следующей станице нужно выбрать компоненты и каталоги для установки MS SQL. Компоненты оставляем все, они все нам пригодятся. В каталогах я обычно предпочитаю установить инстанс (экземпляр) MS SQL на отдельный диск, именно поэтому указал в поле Instance root directory расположение на диске D:

Но тут, каждый сам решает, как ему удобней.

На следующей странице Instance Configuration, оставляем всё как есть (Named instance «SQLExpress») ) и жмем Next. На странице Server Configuration на вкладке Service Accounts в принципе менять ничего не требуется, но я предпочитаю включать тип автозапуска в Automatic для SQL Server Browser, хотя это необязательно, можно сделать и после установки тем, кому понадобится. Совсем правильно будет использовать отдельную учетную запись в AD для запуска сервиса MSSQL:

А вот на вкладке Collation нужно убедиться в том, что кодировка выставлена в Сyrillic_General_CI_AS, иначе в настройках NetXMS могут быть проблемы с русским языком в элементах NetXMS:

В следующем окне Database Engine Configuration выбираем Mixed Mode (нам это понадобится для создания встроенной учетной записи netxms, используемой для доступа к базе netxms_db) и задаем пароль для встроенной учетной записи sa. После всех настроек и установки можно будет отключить её для пущей безопасности. Я еще обычно добавляю группу Domain Admins в качестве SQL Server Administrators, но тут тоже каждый сам решает, какие учетные записи и группы для этого использовать:

Остальное оставляем по дефолту и нажимаем Next и после завершения процесса установки Close.

Также нам понадобиться установить SQL Management Studio. На момент написания статьи я использовал версию 17.9.1, есть смысл ставить последнюю, проверяя совместимость с вашей версией MS SQL. В её установке ничего особенно нет, так что останавливается на ней не буду.

После установки SQL Management Studio для проверки запустим её и подключимся с MS SQL:

Запомните или скопируйте куда-то содержимое поля «Server Name», оно пригодится при запуске мастера NetXMS. В моем случае это «NETXMS\SQLEXPRESS». Всё, проверили, что подключается, пока больше SQL Management Studio нам не нужна.

Установка NetXMS

Дальше установка собственно NetXMS. Скачать дистрибутив можно с официального сайта по ссылке: https://www.netxms.org/download/. Дистрибутивы выбираем в Server Binaries > Windows (x64). На момент написания статьи я использовал версию 2.2.16. Запускаем файл установки (netxms-2.2.16-x64.exe в моем случае), соглашаемся с лицензионным соглашением, на следующей странице выбираем каталог установки (C:\NetXMS по умолчанию), а в окне Select Components выбираем только нужное:

Снимаем галки с: MariaDB Client Library, MySQL Client Library, PostgreSQL Client Library, Oracle Instant Client и даже с Microsoft SQL Server 2008 Native Client, потому что у нас уже установлен Microsoft SQL Server 2012 Native Client. А вот галку Java Runtime Environment наоборот нужно поставить, она будет нужна для консоли управления NetXMS. Нажимаем Next.

В окне Start Menu Folder оставляем все по умолчанию, в окне Select Additional Tasks тоже, нажимаем Next и в итоговом окне Install.

После установки запустится NetXMS Server Configuration Wizard. Нажимаем Next и попадаем в окно Select Database:

В поле Database server пишем имя сервера «NETXMS\SQLEXPRESS», которое запомнили ранее, выбираем Use existing database (сколько я не бился, заставить NetXMS самостоятельно создать себе базу у меня не вышло). В полях Database name и DB login name оставляем те значения, которые туда подставляет визард, netxms_db и netxms соответственно. Придумываем какой-нибудь пароль и вводи его в поле DB password и… на это останавливаемся, кнопку Next не нажимаем, а запускаем SQL Management Studio, если она еще не запущена.

Первым делом создаем там новую базу с именем netxms_db:

В свойствах базы обязательно меняем Compatibility level на «SQL Server 2012 (110)»:

Далее, идем в Security > Logins и создаем новый логин netxms:

Выбираем SQL Server authentication и задаем пароль, тот, который вводили в поле DB Password визарда NetXMS. Не забудьте снять галки с «Enforce password expiration» и «User must change password at next login». Далее идем в User Mappings отмечаем базу netxms_db и для нее отмечаем роли db_owner и public:

Всё, этого должно быть достаточно для подключения NetXMS к нашей созданной базе. Нажимаем OK и закрываем SQL Management Studio, она нам больше не понадобится. Возвращаемся к визарду NetXMS, еще раз проверяем все данные и теперь уже нажимаем Next.

На странице Polling Configuration можно оставить всё без изменений, всё это можно настроить позднее:

В следующем окне можно указать SMTP Server и e-mail адрес сервера NetXMS, но необязательно, это тоже можно сделать позднее:

На странице Configure Logging оставляем всё как есть, на мой взгляд, забивать системные логи событиями NetXMS не очень удобно:

На странице Windows Service Configuration оставляем всё как есть, хотя правильней, конечно, создать отдельную учетную запись в AD для запуска сервиса:

На следующей странице визард рекомендует выбрать сервисы, только после запуска которых будет стартовать сам сервис NetXMS. Нам рекомендуют выбрать database engine и в этом конечно есть смысл, чтобы сервис NetXMS при запуске подключался к уже запущеной базе. Поэтому ставим галку на SQL Server (SQLExpress) и жмем Next:

В итоговом окне жмем Next:

Если все шаги выполнены верно, то мы получим успешное завершение настройки сервера:

В следующих окнах нажимаем Next и Finish. Если мастер предложит перезагрузиться, то делаем это.

После перезагрузки запускам java-консоль NetXMS, пишем там имя сервера и логин в паролем. Дефолтовые имя и пароль admin и netxms соответственно:

При первом запуске будет предложено сменить дефолтовый пароль на свой:

Меняем и наконец-то заходим в консоль управления NetXMS:

В принципе всё, установка на этом завершена. Но, я бы еще установил доступ к управлению NetXMS через web-браузер, java-консоль хотя удобней и быстрее, но веб доступ универсальней и бывает нужен, когда установленной java-консоли нет под рукой.

Установка web-консоли NetXMS

Её установка простая, в основном Next >Next > Next. Единственное, что у меня она заработала только при выборе компонентов Full Installation, несмотря на то, что Java Runtime Environment уже была установлена ранее:

Порт по умолчанию предлагается выбрать 8080:

Я его так и оставлю, однако, можно сделать его просто 80, чтобы не писать цифры в адресе. После установки проверьте, запущен ли сервис NetXMS WebUI. Если да, значит всё успешно, можно проверять доступ через веб-интерфейс по адресу http://netxms.corp.testcompany.ru:8080/nxmc:

Всё, установка завершена, надо настраивать сервер NetXMS, устанавливать агенты на серверы локальной сети т.п., но, об этом когда-нибудь в другой раз.

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход /  Изменить )

Google photo

Для комментария используется ваша учётная запись Google. Выход /  Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход /  Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход /  Изменить )

Connecting to %s

 
%d такие блоггеры, как: