Ansible Role linuxfabrik.lfops.icingadb_web¶
IcingaDB consists of multiple components. This role only installs IcingaDB Web. Generally, the IcingaDB daemon is also required, use the linuxfabrik.lfops.icingadb role for that. Run the linuxfabrik.lfops.icingadb role first to initialise the database.
Mandatory Requirements¶
- A configured Icinga2 Master Setup. This can be done using the linuxfabrik.lfops.setup_icinga2_master playbook.
Tags¶
icingadb_web
- Installs and configures IcingaDB Web.
- Triggers: none.
Mandatory Role Variables¶
icingadb_web__api_user_login
- The account for accessing the Icinga2 API.
- Type: Dictionary.
- Default: none
Example:
# mandatory
icingadb_web__api_user_login:
username: 'icingadb-api-user'
password: 'linuxfabrik'
Optional Role Variables¶
icingadb_web__api_host
- The host on which the Icinga2 API is reachable.
- Type: String.
- Default:
'localhost'
icingadb_web__api_port
- The port on which the Icinga2 API is reachable.
- Type: Number.
- Default:
5665
icingadb_web__database_host
- The host on which the IcingaDB SQL database is reachable.
- Type: String.
- Default:
'{{ icingadb__database_host }}'
icingadb_web__database_login
- The user account for accessing the IcingaDB SQL database. Currently, only MySQL is supported.
- Type: Dictionary.
- Default:
'{{ icingadb__database_login }}'
icingadb_web__database_name
- The name of the IcingaDB SQL database.
- Type: String.
- Default:
'{{ icingadb__database_name }}'
icingadb_web__plugin_output_character_limit
- Sets the maximum number of characters to display in plugin output.
- Type: Number.
- Default:
20000
icingadb_web__redis_ca
- Path to the CA certificate used to check the Redis TLS certificate.
- Type: String.
- Default:
'{{ icingadb__redis_ca | d() }}'
icingadb_web__redis_host
- The host on which Redis instance is reachable.
- Type: String.
- Default:
'{{ icingadb__redis_host }}'
icingadb_web__redis_insecure
- Allow insecure connections to Redis via TLS.
- Type: Bool.
- Default:
'{{ icingadb__redis_insecure }}'
icingadb_web__redis_password
- The password for the Redis instance, if authentication is enabled.
- Type: String.
- Default:
'{{ icingadb__redis_password | d() }}'
icingadb_web__redis_port
- The port on which Redis instance is reachable.
- Type: Number.
- Default:
'{{ icingadb__redis_port }}'
icingadb_web__redis_tls
- Enable TLS when connecting to Redis.
- Type: Bool.
- Default:
'{{ icingadb__redis_tls }}'
icingadb_web__redis2_host
- The host on which the secondary Redis instance is reachable.
- Type: String.
- Default: unset
icingadb_web__redis2_password
- The password for the secondary Redis instance, if authentication is enabled.
- Type: String.
- Default:
'{{ icingadb_web__redis_password }}'
icingadb_web__redis2_port
- The port on which the secondary Redis instance is reachable.
- Type: Number.
- Default:
'{{ icingadb_web__redis_port }}'
Example:
# optional
icingadb_web__api_host: 'localhost'
icingadb_web__api_port: 5665
icingadb_web__database_host: '127.0.0.1'
icingadb_web__database_login:
username: 'icingadb'
password: 'linuxfabrik'
icingadb_web__database_name: 'icingadb'
icingadb_web__plugin_output_character_limit: 20000
icingadb_web__redis_ca: '/etc/pki/tls/certs/rootCA.pem'
icingadb_web__redis_host: '127.0.0.1'
icingadb_web__redis_insecure: true
icingadb_web__redis_password: 'linuxfabrik'
icingadb_web__redis_port: 6379
icingadb_web__redis_tls: true
icingadb_web__redis2_host: 'master2.example.com'
icingadb_web__redis2_password: 'linuxfabrik'
icingadb_web__redis2_port: 6379