准备:icinga2 配置和 hagrid 配置
Hagrid 配置
Hagrid 配置文件为 hagrid.conf.json
文件,为 JSON 格式,位置位于 /lain/app (默认工作目录)。
所有的配置没有默认值,必须指定。
配置项说明
配置项 | 类型 | 说明 |
---|---|---|
auth_sso_url | string | LAIN 集群 SSO 的地址 |
auth_client_id | int | SSO 中注册的 Hagrid 的 client_id |
auth_secret | string | SSO 中注册的 Hagrid 的 secret |
db_host | string | MySQL 的 IP 地址或 Host |
db_port | int | MySQL 的端口 |
db_user | string | Hagrid 连接 MySQL 使用的用户名 |
db_password | string | Hagrid 连接 MySQL 使用的密码 |
db_name | string | Hagrid 连接 MySQL 使用的数据库名 |
db_debug | bool | 是否在日志中打印对数据库的操作 |
db_migrate | bool | 是否开启自动更新表结构功能 |
icinga2_api_address | string | Icinga2 API 的地址 |
icinga2_api_user | string | Icinga2 API 的用户名 |
icinga2_api_password | string | Icinga2 API 的密码 |
superuser | string | Hagrid 的超级用户名 |
source | string | Carbon 的数据源地址 |
超级用户也必须在 SSO 中注册过,才能使用超级用户登录。
写好配置文件后,通过 secret files 机制将配置文件传到 LAIN 集群。
假设写好的配置文件为 hagrid.conf.json.ready
,集群的 phase 为example
,执行 lain secret add -f hagrid.conf.json.ready example web /lain/app/hagrid.conf.json
。
Icinga2 配置
Icinga2 配置文件有三个
/etc/icinga2/features-available/ido-mysql.conf
该文件主要包含了 icinga2 连接数据库的相关配置。
user
: icinga2 的用户名。password
: icinga2 的密码。host
: icinga2 使用的 MySQL 地址。database
: icinga2 使用的数据库名称。
-
该文件主要包含了邮件、短息以及外网代理配置。
SMTP_HOST
: 邮件服务器地址。HTTP_PROXY
: HTTP 请求代理地址。HTTPS_PROXY
:HTTPS 请求代理地址。SMS_HOST
:短信服务地址。SMS_TEMPLATE_ID
:短信模板编号。
-
该文件主要包含了 icingaweb 连接数据库的相关配置
icingaweb_db:icingaweb自身数据库的相关信息。
type
:后端存储类型,一般为db
。db
:数据库类型,一般为mysql
。host
:icingaweb 使用的 MySQL 数据库地址。port
:icingaweb 使用的 MySQL 数据库端口。dbname
:icingaweb 使用的 MySQL 数据名称。username
:icingaweb 连接 MySQL 的用户名。password
:icingaweb 连接 MySQL 的密码。charset
:icingaweb 连接时的字符集,一般为utf8
。persistent
:icingaweb是否使用持久连接,一般为1
。
icinga_ido:icinga2数据库的相关信息。
type
:后端存储类型,一般为db
。db
:数据库类型,一般为mysql
。host
:icinga2 使用的 MySQL 数据库地址。port
:icinga2 使用的 MySQL 数据库端口。dbname
:icinga2 使用的 MySQL 数据名称。username
:icinga2 连接 MySQL 的用户名。password
:icinga2 连接 MySQL 的密码。charset
:icinga2 连接时的字符集,一般为utf8
。persistent
:icingaweb连接icinga2的数据库时是否使用持久连接,一般为1
。
配置好以上三个文件后,类似于 Hagrid的配置文件上传,执行如下命令:
lain secret add -f ido-mysql.conf.ready example icinga /etc/icinga2/features-available/ido-mysql.conf
lain secret add -f util.sh.ready example icinga /etc/icinga2/scripts/util.sh
lain secret add -f resources.ini.ready example icinga /etc/icingaweb2/resources.ini