7.3 Встановлення та конфігурація Серверe моніторингу за працездатністю
СерверОсновною аналізучастиною транзакційсервера складаєтьсямоніторингу зза наступнихпрацездатністю програмнихє компонентів:
- забезпечення
Elasticsearch,Zabbix,щоякезбираєможе накопичувати танакопичуєвізуалізовувативідомостейінформацію проздійсненівикористаннятранзакції,апаратних ресурсів серверів, у тому числі середнє навантаження на процесор, об’єм використаної оперативної пам’яті, об’єм вільного дискового простору тощо.Kibana, що виконує функції інтерфейсу користувача та відображає накопичені відомості за критеріями пошуку користувача.
Схема мережевої взаємодії сервера аналізумоніторингу транзакційза працездатністю наведена на рисунку 7.1.2.
З метою організації мережевої взаємодії Оператор має забезпечити можливість мережевого з’єднання ШБОіз зшлюзу серверомбезпечного аналізуобміну транзакційдо сервера моніторингу за працездатністю на порт TCP 9200.10051 та TCP 80. Також, Адміністратор локальних компонентів повинен мати можливість підключатися до серверуСервера аналізумоніторингу транзакційза працездатністю на порт TCP 5601,80, на якому розміщена служба вебінтерфейсу аналізу транзакцій.
Рисунок 7.1 – Схема мережевої взаємодії сервера аналізу транзакційсервера.
Під час встановленняпроведення сервервстановлення, аналізуАдміністратор транзакційлокальних повиненкомпонентів матимає підключеннязабезпечити Сервер моніторингу за працездатністю виходом до мережі Інтернет з метою встановлення програмних пакетів з програмного репозиторію системи «Трембіта».
ВстановленняРисунок та7.2 всі– відповідніСхема налаштуваннямережевої виконуютьсявзаємодії Адміністраторомсервера локальних компонентів. Кінцевим користувачем, що працюватиме з сервером аналізу транзакцій через вебінтерфейс є користувач з роллю «Відповідальниймоныторингу за аналізпрацездатністю
7.2.3.1. Встановлення необхідних пакетів для серверусервера аналізумоніторингу транзакцій
за працездатністю
ВстановленняВсі дії з інсталяції та налаштування програмного забезпечення сервера аналізумоніторингу транзакційза проводитьпрацездатністю Адміністраторвиконуються Адміністратором локальних компонентів.
Інсталяційні пакети Elasticsearch і Kibana входять в комплект компонента uxp‑monitor‑analytics. Щоб встановити uxp‑monitor‑analytics, потрібно виконати наступні дії на сервері баз даних та архівування:
Закрити доступ до сторонніх репозиторіїв за допомогою наступної команди (якщо цього ще не було зроблено):
sudo sed -i 's/^[A-Za-z0-9]/#&/' /etc/apt/sources.list
2. Додати у операційну систему репозиторій з пакетами системи «Трембіта» (якщо цього ще не було зроблено):
echo 'deb http://dir-repo-p-01.trembita.gov.ua:82 certifiedmember trembita-member'monitoring' | sudo tee -a /etc/apt/sources.list
Перевірити результат виконання команд можна за допомогою текстового редактора nano, відкривши файл на редагування за допомогою наступної команди:
sudo nano /etc/apt/sources.list
3. Додати GPG ключ репозиторію за допомогою наступної команди:
sudo wget -O - http://dir-repo-p-01.trembita.gov.ua:82/repo.key.txt | apt-key add -
Якщо команду виконано успішно, то буде виведено повідомлення «ОК».
4. В операційній системі має бути встановлена локаль UTF-8.
Встановлення локалі описано в розділі 6.1.3.
5. Провести системне очищення та оновити списки доступних пакетів за допомогою послідовного виконання наступних команд::
sudo apt autoremove && sudo apt clean && sudo apt autoclean
sudo apt update
5.6. Встановити пакетпопередньо uxp‑monitor‑analyticsнеобхідні на сервеі аналізу транзакційзасоби за допомогою наступної команди:
sudo apt install uxp-monitor-analyticszabbix-server-pgsql zabbix-agent postgresql -y
6.7. ДодатиСтворити Elasticsearchкористувача ібази Kibanaданих та базу даних за допомогою послідовного виконання наступних команд:
sudo -u postgres createuser --pwprompt zabbix
sudo -u postgres createdb -O zabbix zabbix
8. Імпортувати схему бази даних за допомогою наступної команди:
zcat /usr/share/doc/zabbix-server-pgsql/create.sql.gz | sudo -u zabbix psql zabbix
9. Відкрити на редагування файл конфігурації zabbix_server.conf за допомогою наступної команди:
sudo nano /etc/zabbix/zabbix_server.conf
10. Ввести пароль до автозапускуфайлу вісляконфігурації встановленняяк значення параметру "DBPassword", а значення параметру "DBHost" - залишити порожнім:
DBHost=
DBPassword=
11. Увімкнути zabbix сервер за допомогою послідовного виконання наступних команд:
sudo systemctl enable kibanazabbix-server
sudo systemctl enablestart elasticsearchzabbix-server
7.12. ВпершеВстановити службиweb потрібночастину запуститисерверу вручнуzabbix за допомогою наступної команди:
sudo apt install zabbix-frontend-php php-pgsql -y
13. Вимкнути Apache2 за допомогою послідовного виконання наступних команд:
sudo servicesystemctl kibanastop startapache2
sudo servicesystemctl elasticsearchdisable startapache2
14. 7.2.2.Встановити КонфігураціяNginx Elasticsearchза ідопомогою Kibanaпослідовного виконання наступних команд:
sudo apt install nginx-light php-fpm -y
sudo ln -s /usr/share/zabbix /var/www/html/zabbix
sudo rm /etc/nginx/sites-enabled/default
Перед початком роботи служби Elasticsearch і Kibana повинні бути налаштовані Адміністратором локальних компонентів наступним чином:
1.15. Відкрити на редагування файл /etc/elasticsearch/elasticsearch.ymlконфігурації на сервері аналізу транзакцій зі встановленим програмним забезпеченням пакету uxp‑monitor‑analyticsphp.ini за допомогою наступної команди:
sudo nano /etc/elasticsearch/elasticsearch.ymlphp/7.2/fpm/php.ini
16. Перевірити наявність наступних параметрів у файлі конфігурації. Якщо параметри відсутні - встановити їх наступним чином:
date.timezone = Europe/Kiev
post_max_size = 16M
max_execution_time = 300
max_input_time = 300
17. Створити та відкрити на редагування файл конфігурації Nginx за допомогою послідовного виконання наступних команд:
sudo touch /etc/nginx/sites-available/zabbix
sudo ln -s /etc/nginx/sites-available/zabbix /etc/nginx/sites-enabled/zabbix
sudo nano /etc/nginx/sites-enabled/zabbix
18. Внести наступні конфігураційні параметри у даний файл:
server {
listen 80 default_server;
root /var/www/html;
index index.php index.html index.htm;
server_name zabbix_server;
location / {
try_files $uri $uri/ =404;
}
location /(conf|app|include|local) {
deny all;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.2-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
19. Перезавантажити сервіси за допомогою виконання наступної команди:
sudo systemctl restart php7.2-fpm nginx
7.3.2. Налаштування серверу моніторінгу за працездатністю
Для налаштування серверу моніторингу за працездатністю, Адміністратору локальних компонентів необхідно виконати наступні дії в вебінтерфейсі серверу моніторингу за працездатністю , відкривши його за посиланням: http://[YOUR-ZABBIX-SERVER-IP]/zabbix/,
де [YOUR-ZABBIX-SERVER-IP] - адреса відповідного серверу, де встановлено програмне забезпечення для моніторингу за працездатністю:
1. Заповнити дані, що будуть запитані в процесі налаштування у відповідності до попередніх пунктів інсталяції:
- На кроці «Configure DB connection необхідно вказати пароль, що був створений у розділі 7.3.1. п.10;
- На всіх інших кроках натискаємо Next/Finish.
Примітка. За замовчанням, логін для входу - «Admin» ([ZABBIX-ADMIN-USER]), пароль - «zabbix» ([ZABBIX-ADMIN-PASSWORD]).
2. Запустити агент моніторингу та додати його до автозапуску за допомогою послідовного виконання наступних команд:
sudo systemctl start zabbix-agent
sudo systemctl enable zabbix-agent
7.3.3. Налаштування підключення шлюзу безпечного обміну до серверу моніторінгу за працездатністю
Конфігурація підключення шлюзу безпечного обміну до серверу моніторингу за працездатністю налаштовується на ШБО у файлі /etc/uxp/monitor-agent.ini.
Для налаштування підключення шлюзу безпечного обміну до сервера моніторингу за працездатністю Адміністратору локальних компонентів необхідно виконати наступні дії на ШБО:
1. На ШБО відкрити на редагування файл monitor-agent.ini за допомогою наступної команди:
sudo nano /etc/uxp/monitor-agent.ini
2. ПеревіритиРозкоментувати наявністьнаступні наступнихрядки рядків(видалити всимвол даному«#»на файлі:початку рядку):
cluster.name:[zabbix-1]
uxpaddress node.name: ${HOSTNAME}
network.host: 0.0.0.0
cluster.initial_master_nodes:= ["${HOSTNAME}"]YOUR-ZABBIX-SERVER-IP]
search.max_buckets:port 20000= 10051
enable_configurator = true
username = [ZABBIX-ADMIN-USER]
password = [ZABBIX-ADMIN-PASSWORD]
host_group = uxp-pma
де [YOUR-ZABBIX-SERVER-IP] - адреса відповідного серверу, де встановлено програмне забезпечення для моніторингу за працездатністю,
[ZABBIX-ADMIN-USER] – логін для входу на сервер моніторингу за працездатністю,
[ZABBIX-ADMIN-PASSWORD] ‑ пароль для входу на сервер моніторингу за працездатністю;
Примітка. За замовчанням, логін для входу - «Admin» ([ZABBIX-ADMIN-USER]), пароль - «zabbix» ([ZABBIX-ADMIN-PASSWORD]).
3. Закрити редактор, натиснувши комбінацію клавіш "Ctrl+X", буде показано повідомлення про підтвердження на збереження змін - необхідно натиснути «Y», а потім "Enter" для збереження.
4. ВідкритиЗастосувати нанову редагуванняконфігурацію файл /etc/kibana/kibana.ymlZabbix за допомогою наступної команди:
sudo nano /etc/kibana/kibana.ymlreload-monitor-agent
5. Замінити наступний рядок:
#server.host: «localhost»на:
server.host: 0.0.0.06. Закрити редактор, натиснувши Ctrl+X, буде показано підтвердження на збереження змін - натисніть «Y», а потім Enter для збереження.
7. Перезавантажити служби elasticsearch та kibana шляхом послідовного виконання наступних команд:
sudo service elasticsearch restart
sudo service kibana restartДля перевірки працездатності компоненту, Адміністратору локальних компонентів необхідно перейтиПідключитися до вебінтерфейсу серверуZabbix аналізу транзакцій за посиланням: http://[YOUR-EK-ZABBIX-SERVER-IP]:5601//zabbix/,
де [YOUR-EK-ZABBIX-SERVER-IP] –- адреса відповідного сервера,серверу, де встановлено програмне забезпечення серверудля аналізу транзакцій.
7.2.3. Налаштування підключення шлюзу безпечного обміну до серверу аналізу транзакцій
Конфігурація підключення шлюзу безпечного обміну до серверу аналізу транзакцій налаштовується на ШБО у файлі /etc/uxp/monitor-agent.ini.
Для налаштування підключення Адміністратору локальних компонентів необхідно виконати наступні дії на ШБО:
1. Відкрити на редагування файл /etc/uxp/monitor-agent.iniмоніторингу за допомогою наступної команди:
sudo nano /etc/uxp/monitor-agent.ini2. Розкоментувати наступні рядки (видалити символ «#»на початку рядку) і встановити наступні параметри:
[elasticsearch]
address = [YOUR-EK-SERVER-IP]
port = 9200
cluster_name = uxp
index = uxpде [YOUR-EK-SERVER-IP] – адреса відповідного сервера, де встановлено програмне забезпечення серверу аналізу транзакцій.
3. Закрийте редактор, натисніть Ctrl+X, буде показано підтвердження на збереження змін - натисніть «Y» а потім Enter для збереження.
Для застосування нової конфігурацію Elasticsearch на шлюзі безпечного обміну потрібно виконати наступну команду:
sudo reload-monitor-agent7.2.4. Налаштування візуалізації статистики на сервері аналізу транзакцій
7.2.4.1. Налаштування шаблону індексу
Налаштування шаблону індексу на сервері аналізу транзакцій здійснюється Відповідальним за аналіз транзакцій
Примітка Індекс в Elasticsearch може з'явитися не відразу, а тільки після початку обміну повідомленнями між шлюзом безпечного обміну оператора та іншими шлюзами. Про це необхідно пам’ятати під час налаштувань.
Для налаштування шаблону Відповідальному за аналіз транзакцій необхідно виконати наступні дії в вебінтерфейсі серверу аналізу транзакцій, відкривши його за посиланням: http://[YOUR-EK-SERVER-IP]:5601/:
1. Перейти в розділ Management -> Index Patterns;
2. В полі Index pattern ввести: uxp*;
В полі Time Filter field name має з’явитися значення: monitoring_data_ts.
3. Натиснути «Create».
Примітка. Якщо після введення «uxp*» з’являється повідомлення «Unable to fetch mapping. Do you have indices matching the pattern» - це означає, що до сервера аналізу транзакцій від шлюзу безпечного обміну ще не надходило відомостей про виклики сервісів. Потрібно зробити запити через шлюз, після чого шлюз має надіслати статистику транзакцій.
Індикатором успішного створення індексу може бути повідомлення, що містить поле «Creating index (uxp) for Elasticsearch» на шлюзі безпечного обміну у файлі /var/log/uxp/proxymonitoragent.log. Після цього необхідно повторити процедуру створення індексу на сервері аналізу транзакцій. Статистика відправляється зі шлюзу безпечного обміну не одразу, а через певні інтервали часу.
Подивитись останні отримані відомості у простому форматі можна на вкладці «Discover» інструменту Kibana.
7.2.4.2. Налаштування візуалізації
Пакет uxp-monitor-analytics містить деякі приклади візуалізації транзакцій. Ці приклади знаходяться в каталозі /usr/share/doc/uxp-monitor-analytics/examples/kibana-7.x/operational-data, а саме:
· request-total-by-security-server.json - візуалізує загальну кількість запитів шлюзом безпечного обміну;
· request-total-by-security-server-by-service.json - візуалізує загальну кількість запитів шлюзом безпечного обміну і службою;
· succeeded-requests-by-service.json - візуалізувати кількість вдалих запитів по сервісу.
Для налаштування візуалізації необхідно виконати наступні дії в вебінтерфейсі серверу аналізу транзакцій:
1. Скопіювати зазначені вище файли із сервера аналізу транзакцій в зручну директорію на локальному комп'ютері, використовуючи WinSCP або іншу програму .
2. Зайти в розділ Management -> Saved Objects вебінтерфейсу Kibana:
3. Натиснути на кнопку «Import», щоб імпортувати файли в Kibana.
4. Обрати збережений на диску потрібний файл. У діалоговому вікні натиснути «Yes, overwrite all», а в наступному вікні - «Confirm all changes». Імпортований файл повинен з'явитися у вкладці Visualizations.
5. Імпортувати всі файли в систему.
7.2.4.3. Перевірка візуалізації
Для перевірки візуалізації на серверу аналізу транзакцій необхідно зробити наступні дії:
1. Відкрити вебінтерфейс серевру аналізу транзакцій за посиланням: http://[YOUR-EK-SERVER-IP]:5601/працездатністю,
2.і перейтиперевірити, що в розділконфігурації Visualize,з'явилися дехости будешлюзу відображенобезпечного імпортовані приклади візуалізації статистики,обміну.
3. Для того щоб відобразити статистику за сервісами необхідно натиснути на кнопку «Requests Good by Service».
Якщо дані статистики не відображаються, необхідно налаштувати інтервал для відображення, для чогоцього необхідно виконати наступні дії в вебінтерфейсі серверу аналізу транзакцій:дії:
вказатиПерейтипотрібнийуTimeвкладкуRange,«Latestнатиснувшиdata»на кнопку в правому верхньому кутку сторінки;обрати опціюОбрати «Today».uxp-pma»ПовиннаувідобразитисяполістатистикаHostзаgroupsзапитами.
Спочатку з’являться найменування статистичних полів, через деякий час вони заповняться даними з шлюзу безпечного обміну.
Деталі використання інструменту Zabbix наведено на офіційному вебсайті Zabbix.


