Icinga 2
Icinga 2
1. Introduction
Icinga 2, an open-source monitoring software derived from Nagios, is known for its powerful host and network monitoring capabilities. It is released under the GNU GPLv2 license, ensuring its openness and broad community participation. Icinga 2 can be seamlessly integrated with the high-performance IoTDB time-series database for efficient storage and management of monitoring data.
2. Prerequisites
The following preparations are required to synchronize Icinga 2 data to IoTDB:
IoTDB>= V2.0.5.1 has been deployed and is running properlyIcinga 2has been installedIoTDB_Adapteris running properly
3. Installation and Configuration Steps
3.1 IoTDB_Adapter Configuration
Contact Timecho staff to obtain the
IoTDB_Adapterinstallation packageExtract the package
# Version 1.0 is used as an example unzip IoTDB_Adapter-1.0.zipModify the
conf/application.propertiesconfiguration file to set the listening port,IoTDBpath prefix, node address, username, and password.
# Port on which the Adapter listens
port=4242
# IoTDB instance addresses; separate multiple nodeUrls with ;
iotdb.nodeUrls=127.0.0.1:6667
# Path prefix for data written to IoTDB, such as root.testdb (effective when sqlDialect is not table)
iotdb.prefix=root.icinga2
# IoTDB username
iotdb.user=root
# IoTDB password
iotdb.password=root
# IoTDB SqlDialect (tree/table, default: tree)
iotdb.sqlDialect=table
# IoTDB DataBase (effective when sqlDialect is table)
iotdb.database=icinga2
# IoTDB Table (effective when sqlDialect is table)
iotdb.table=test
# payload_formatter: supports statsd and opentsdb (default)
payload.formatter=opentsdb
# Source data precision (default: seconds; s|ms|us|ns)
time.precision.source=s
# Target IoTDB data precision (default: seconds)
time.precision.iotdb=msNote: In the table model, the database specified by the iotdb.database parameter must be created in advance
- Restart the
IoTDB_Adapterservice.
/sbin/start.sh3.2 Icinga 2 Configuration
Download and install Icinga2. For installation instructions, see Icinga 2 Installation
Enable the
OpenTsdbWriterfeature. For details, see Features on theIcingaofficial website.Modify the
/etc/icinga2/features-enabled/opentsdb.confconfiguration file to configure theIoTDB_Adapteraddress and port.object OpenTsdbWriter "opentsdb" { host = "127.0.0.1" port = 4242 }Start the
Icinga 2servicesystemctl start icinga2
3.3 Verification Test
Query the data through the IoTDB CLI to verify that it has been written successfully.
IoTDB:icinga2> select * from test limit 1
+-----------------------------+---------------------------+---------------------------+-------+-------+-------+
| time| metric| host| value|service| type|
+-----------------------------+---------------------------+---------------------------+-------+-------+-------+
|2025-07-23T09:33:27.424+08:00|icinga.check.execution_time|iot-VMware-Virtual-Platform|0.00675| http|service|
+-----------------------------+---------------------------+---------------------------+-------+-------+-------+