start with the icinga2 import diagram

This commit is contained in:
2024-02-02 17:12:17 +01:00
parent 5f2ad56a5f
commit f3cd282184
4 changed files with 37 additions and 6 deletions

View File

@@ -42,9 +42,8 @@ The Icinga Director import pipeline is provides as [Configuration Basket templat
## Development of Icinga Director Import Pipeline
The base are always the Configuration Basket snapshots (JSON files) which we have in Git. For changes either change them directly or change them in the Icinga Director web UI and then create a new snapshot of the according Configuration Basket, download it, modify if necessary:
- if it is templated as for the Sysdb import pipeline
- fix the definition of the Configuration Basket itself which is stringified JSON and should be plain JSON ([bug](https://github.com/Icinga/icingaweb2-module-director/issues/2774))
The base are always the Configuration Basket snapshots (JSON files) which we have in Git.
For changes either change them directly or change them in the Icinga Director web UI and then create a new snapshot of the according Configuration Basket, download it, modify if necessary, e.g. if it is templated as for the Sysdb import pipeline
and then commit it to the git repo.
The rollout into production is then done with the bootstrap Ansible role for the Icinga2 Master nodes.
@@ -59,8 +58,8 @@ Further there is an issue with updated Sync Rules in the Configuration Basket sn
The Icinga2 infrastructure is maintained and prepared by AIT. Following items need to be prepared from their side:
- basic setup of Icinga2 Master
- add the Icinga Director module
- add Fileshipper module with following configuration (`/etc/icingaweb2/modules/fileshipper/imports.ini`):
- addition of the Icinga Director module
- addition of the Fileshipper module with following configuration (`/etc/icingaweb2/modules/fileshipper/imports.ini`):
```
[Import AWI Linux Infrastructure Servers]
basedir = "/etc/icingaweb2/psi/lx-core"

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

View File

@@ -0,0 +1,32 @@
@startuml
node "Icinga2 Master" as master {
control "sysdb-director-import.timer" as import_timer
file "sysdb-director-import" as import_script
component "Director" as director {
component "awi-lx-sysdb-hostgroup-import" as hostgroup_import
component "awi-lx-sysdb-hostgroup-sync-rule" as hostgroup_sync
component "awi-lx-sysdb-host-import" as host_import
component "awi-lx-sysdb-host-sync-rule" as host_sync
component "awi-lx-sysdb-service-override-sync-rule" as service_override_sync
}
}
node "Sysdb Server" as sysdb_server {
component "Sysdb API" as sysdb_api {
component "icinga2/v1/roles" as sysdb_api_roles
component "icinga2/v1/hostgroups" as sysdb_api_hostgroups
component "icinga2/v1/hosts" as sysdb_api_hosts
component "icinga2/v1/ad_notification_users" as sysdb_api_roles_ad_notification_users
}
}
import_timer -[dashed]-> import_script : "triggers"
import_script -[dashed]-> director : triggers imports, sync rules and deployment
sysdb_api_hostgroups --> hostgroup_import
hostgroup_import --> hostgroup_sync
sysdb_api_hosts --> host_import
host_import --> host_sync
host_import --> service_override_sync
@enduml

View File

@@ -22,7 +22,7 @@ Sysdb Access:
Monitoring:
* [Icinga2](icinga2) - autmoatic integration into Icinga2
* [Icinga2](icinga2) - automatic integration into Icinga2
* [influx00](influx00) - 129.129.190.225 - Influx database server