Skip to main content
Version: 6.0

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:

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
Attention!

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 the logstash user

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 which Logstash will receive data from beat agents
  • HOST:PORT — with the address and port of the Smart Monitor Data Storage node 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_linux
  • metricbeat_windows
  • inventory_linux
  • inventory_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.sh
  • install_cron.sh
  • filebeat.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

Attention!

After configuring Logstash and SmartBeatManager, do not start or restart these services immediately. For correct module installation, you first need to:

  1. Run the servers_ko_maker utility
  2. Load the Servers content package
  3. Only then start or restart Logstash and SmartBeatManager

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.