Încerc să configurez un cluster icinga2 de mai multe noduri (agenți) și un master.
eu folosesc acest rol Ansible pentru a face acest lucru.
Numele de gazdă sunt rezolvate folosind intrări din interior /etc/hosts
.
Problema pe care o întâmpin este că gazdele din icingaweb2 sunt marcate ca în așteptare și netratate.
Pe master primesc următoarele mesaje de eroare:
[2021-06-21 11:50:25 +0200] avertisment/JsonRpcConnection: client API deconectat pentru identitatea „mongodb-000”
[2021-06-21 11:50:33 +0200] avertisment/ApiListener: validarea certificatului a eșuat pentru punctul final „mongodb-000”: cod 18: certificat autosemnat
La un punct final este același lucru:
[2021-06-21 11:53:53 +0200] avertisment/JsonRpcConnection: client API deconectat pentru identitatea „icinga-000”
[2021-06-21 11:53:55 +0200] avertisment/ApiListener: validarea certificatului a eșuat pentru punctul final „icinga-000”: cod 18: certificat autosemnat
Când interog API-ul pentru a verifica ce puncte finale sunt conectate, toate nodurile sunt afișate ca not_conn_endpoints
:
root@icinga-000:/home/ansible# curl --user icinga2:nope --silent --insecure --header „Accept: application/json” https://localhost:5665/v1/status/ApiListener | jq --raw-output „.results[].status”
{
„api”: {
„conn_endpoints”: [],
„http”: {
„clienți”: 1
},
"identitate": "icinga-000",
„json_rpc”: {
„clienți_anonimi”: 18,
„relay_queue_item_rate”: 0,7333333333333333,
"relay_queue_items": 0,
„sync_queue_item_rate”: 0,
„sync_queue_items”: 0,
„work_queue_item_rate”: 1,2833333333333334
},
„not_conn_endpoints”: [
"app-manager-001",
"mongodb-000",
„app-worker-001”,
"global-cloud-proxy-000",
"openvpn-000",
"mongodb-001",
"mongodb-arbiter-000",
"teleport-000",
"minio-000",
„app-worker-000”,
„app-manager-002”,
"graylog-manager-000",
"app-manager-000"
],
„num_conn_endpoints”: 0,
„num_endpoints”: 13,
„num_not_conn_endpoints”: 13,
„zone”: {
„app-manager-000”: {
„client_log_lag”: 0,
„conectat”: fals,
„puncte finale”: [
"app-manager-000"
],
"parent_zone": "master"
},
„app-manager-001”: {
„client_log_lag”: 0,
„conectat”: fals,
„puncte finale”: [
„app-manager-001”
],
"parent_zone": "master"
},
„app-manager-002”: {
„client_log_lag”: 0,
„conectat”: fals,
„puncte finale”: [
„app-manager-002”
],
"parent_zone": "master"
},
„app-worker-000”: {
„client_log_lag”: 0,
„conectat”: fals,
„puncte finale”: [
„app-worker-000”
],
"parent_zone": "master"
},
„app-worker-001”: {
„client_log_lag”: 0,
„conectat”: fals,
„puncte finale”: [
„app-worker-001”
],
"parent_zone": "master"
},
„global-cloud-proxy-000”: {
„client_log_lag”: 0,
„conectat”: fals,
„puncte finale”: [
"global-cloud-proxy-000"
],
"parent_zone": "master"
},
„graylog-manager-000”: {
„client_log_lag”: 0,
„conectat”: fals,
„puncte finale”: [
"graylog-manager-000"
],
"parent_zone": "master"
},
"maestru": {
„client_log_lag”: 0,
„conectat”: adevărat,
„puncte finale”: [
"icinga-000"
],
"parent_zone": ""
},
"minio-000": {
„client_log_lag”: 0,
„conectat”: fals,
„puncte finale”: [
"minio-000"
],
"parent_zone": "master"
},
"mongodb-000": {
„client_log_lag”: 0,
„conectat”: fals,
„puncte finale”: [
"mongodb-000"
],
"parent_zone": "master"
},
"mongodb-001": {
„client_log_lag”: 0,
„conectat”: fals,
„puncte finale”: [
"mongodb-001"
],
"parent_zone": "master"
},
„mongodb-arbiter-000”: {
„client_log_lag”: 0,
„conectat”: fals,
„puncte finale”: [
"mongodb-arbiter-000"
],
"parent_zone": "master"
},
„openvpn-000”: {
„client_log_lag”: 0,
„conectat”: fals,
„puncte finale”: [
"openvpn-000"
],
"parent_zone": "master"
},
"teleport-000": {
„client_log_lag”: 0,
„conectat”: fals,
„puncte finale”: [
"teleport-000"
],
"parent_zone": "master"
}
}
}
}
Configurația poate fi găsită mai jos.
Configurație principală
root@icinga-000:/etc/icinga2# cat zones.d/mongodb-000/mongodb-000.conf
// Ansible gestionat
obiect Gazdă „mongodb-000” {
display_name = "mongodb-000"
command_endpoint = "mongodb-000"
zona = "mongodb-000"
adresa = "192.168.80.40"
import "generic-host"
vars = {
os = "Linux"
dist = "Ubuntu"
dist_ver = "20.04"
discuri = {
„disc /” = {
disc_partitions = "/"
}
}
servicii = [ „uptime”, „memorie”, „încărcare”]
memorie = adevărat
}
}
Vreau să configurez nodurile ca agenți, dar din anumite motive rolul ansible creează și fișiere de configurare a satelitilor. Nu sunt sigur ce se întâmplă aici...
root@icinga-000:/etc/icinga2# cat satellites.d/mongodb-000.conf
// Ansible gestionat
// zona definita: mongodb-000
obiect Endpoint "mongodb-000" { gazdă = "mongodb-000"; port = "5665" }
obiect Zona "mongodb-000" { endpoints = [ "mongodb-000" ] ; părinte = „stăpân”}
Configurarea nodului
root@mongodb-000:/etc/icinga2# cat zones.conf
// Ansible gestionat
obiect Endpoint "icinga-000" { gazdă = "192.168.80.140"; port = "5665" }
obiect Zone "master" { endpoints = [ "icinga-000" ] }
obiect Endpoint "mongodb-000" { gazdă = "mongodb-000"; port = "5665" }
obiect Zona "mongodb-000" { endpoints = [ "mongodb-000" ] ; părinte = „stăpân”}
obiect Zona „șabloane-global” { global = adevărat }
obiect Zona „director-global” { global = adevărat }
Bănuiesc că există o eroare în interiorul configurației, dar din moment ce sunt nou la icinga și monitoring-portal.org a fost închis și toate link-urile sunt acum moarte, nu știu de ce nu funcționează. Orice indicații sunt foarte apreciate.