Servers Integration with Smart Monitor
Table of Contents
Servers Module
The Servers module uses system metrics and inventory data to build dashboards, populate inventory, and generate infrastructure incidents.
Integration requires preparing Smart Monitor Data Collector and configuring application distribution through Smart Beat Manager.
Smart Monitor Data Collector is based on Logstash, which may be used as an alternative name in the text below.
Prerequisites
Before starting integration, make sure the following conditions are met:
- Smart Monitor Data Collector Installation has been performed
- Smart Beat Installation has been performed
- Smart Beat Manager Installation has been performed
Recommended standard paths:
/app/logstash/ # Smart Monitor Data Collector Directory
/app/logstash/config/conf.d # Smart Monitor Data Collector Configuration Files Directory (hereinafter referred to as pipeline)
/app/smartBeatManager/ # Smart Beat Manager Directory
/app/smartBeatManager/apps # Smart Beat Manager Applications Directory
/app/smartBeatManager/binaries # Application Binary Files Directory
/app/smartBeatManager/etc/serverclasses.yml # File with Application Assignment Rules to Servers
If non-standard installation paths are used, check all pipelines and make adjustments if necessary.
Smart Monitor Data Collector Node Setup
For the Servers module to work on the Smart Monitor Data Collector node, pipeline and keystore parameters need to be prepared.
Adding Parameters to Keystore
The following should be added to the keystore:
ES_PWD— password for thelogstashuser
To add the parameter, execute:
sudo -u logstash /app/logstash/bin/logstash-keystore add ES_PWD
Check for the parameter:
sudo -u logstash /app/logstash/bin/logstash-keystore list
Placing Servers Pipeline
The contents of the logstash_pipelines directory of the Servers module should be placed at:
/app/logstash/config/conf.d
Pipeline connection is performed in the file:
/app/logstash/config/pipelines.yml
The following lines need to be added to it:
### Servers
- pipeline.id: srv_metrics
path.config: "/app/logstash/config/conf.d/srv_metrics.conf"
- pipeline.id: srv_inv_linux
path.config: "/app/logstash/config/conf.d/srv_inv_linux.conf"
- pipeline.id: srv_inv_windows
path.config: "/app/logstash/config/conf.d/srv_inv_windows.conf"
Configuring Servers Pipeline
In the files srv_metrics.conf, srv_inv_linux.conf, and srv_inv_windows.conf, you need to replace:
PORT— with the port through whichLogstashwill receive data from beat agentsHOST:PORT— with the address and port of theSmart Monitor Data Storagenode or cluster to which collected data will be sent
Smart Beat Manager Setup
Application Placement
The contents of the apps directory of the Servers module should be placed at:
/app/smartBeatManager/apps
Final set of applications:
metricbeat_linuxmetricbeat_windowsinventory_linuxinventory_windows
Application Configuration Setup
On the SmartBeatManager node, Metricbeat and Filebeat binaries for Linux and Windows should be available in the directory:
/app/smartBeatManager/binaries
Before further installation, check and adjust the Logstash node address in the files if necessary:
/app/smartBeatManager/apps/metricbeat_linux/metricbeat.yml
/app/smartBeatManager/apps/metricbeat_windows/metricbeat.yml
/app/smartBeatManager/apps/inventory_linux/filebeat.yml
/app/smartBeatManager/apps/inventory_windows/filebeat.yml
In all files, specify the actual value of the parameter:
output.logstash:
hosts: ["<LOGSTASH_HOST>:<LOGSTASH_PORT>"]
Connecting Applications to Serverclasses
Add groups for Linux and Windows servers to the file:
/app/smartBeatManager/etc/serverclasses.yml
Example:
- name: linux_inventory
apps:
- metricbeat_linux
- inventory_linux
binaries:
- <METRICBEAT_LINUX_ARCHIVE>
- <FILEBEAT_LINUX_ARCHIVE>
filters:
- <LINUX_HOST_FILTER>
- name: windows_inventory
apps:
- metricbeat_windows
- inventory_windows
binaries:
- <METRICBEAT_WINDOWS_ARCHIVE>
- <FILEBEAT_WINDOWS_ARCHIVE>
filters:
- <WINDOWS_HOST_FILTER>
Inventory Features
The inventory_linux application is implemented as a lightweight application based on:
run_inventory.shinstall_cron.shfilebeat.yml
Collection is performed via cron every 10 minutes. In the current release, the application generates a log file with basic inventory information and sends it to Logstash via Filebeat.
The inventory_windows application is divided into two scenarios:
- fast inventory — fast technical information: CPU, RAM, disks, IP addresses, motherboard
- slow inventory — heavier data: OS, software, updates, Office licenses, antivirus
Execution is performed via Scheduled Tasks:
- fast inventory — every 10 minutes
- slow inventory — every 6 hours
Further Installation Order
After configuring Logstash and SmartBeatManager, do not start or restart these services immediately. For correct module installation, you first need to:
- Run the
servers_ko_makerutility - Load the
Serverscontent package - Only then start or restart
LogstashandSmartBeatManager
This sequence allows data collection to begin only after creating technical dependencies, bootstrap indexes, and ISM policies.
Detailed actions for installing the utility and loading content are provided in the section Servers: Module Installation.