nagios 也是有提供 ndo2db 工具,把資料寫入資料庫,而 icinga 則用 ido2db 處理

一開始編譯 icinga 時,就可以 make install-idoutils ,讓 icinga 支援這功能

# 設定 idoutils,把資訊、狀態寫入到 mysql 裡 (記得 mysql 要先裝)

cd /usr/local/icinga/etc/
mv idomod.cfg-sample idomod.cfg
mv ido2db.cfg-sample ido2db.cfg

# 建立 icinga 資料庫

CREATE DATABASE icinga;
GRANT SELECT, INSERT, UPDATE, DELETE, DROP, CREATE VIEW, INDEX, EXECUTE ON icinga.* TO 'icinga'@'localhost' IDENTIFIED BY 'icinga';
flush privileges;

# 匯入 sql

cd /root/icinga-core
mysql -u root -p icinga < ./module/idoutils/db/mysql/mysql.sql

# 確認對 mysql 存取設定,照預設就不用變
vi /usr/local/icinga/etc/ido2db.cfg

ido2db_user=icinga
ido2db_group=icinga
db_servertype=mysql
db_host=localhost
db_port=3306
db_name=icinga
db_prefix=icinga_
db_user=icinga
db_pass=icinga

另外假如資料庫是集中記錄時,就要變更 db_host,並給可登入連線存取的權限

# 修改 ido2db 的 instance 名稱
vi /usr/local/icinga/etc/idomod.cfg

instance_name=SSORC1

假如資料庫是記錄多台 icinga 過來的資料,可用此辨識 id

# instance_name

資料庫會記錄一個名稱,來辨識是誰的資料,有兩台以上就要個別設定不同的名稱,不然資料會是同一筆來源

假如同一台主機換新機器,只要設定相同的 instance_name ,再寫入資料庫時會是同一 instanced_id

假如有兩台寫入來源是同樣的 instance_name ,只有 history 部份應該會是重覆的 !

變更 instance_name 除了 reload icinga ,還要

 /usr/local/icinga-web/bin/clearcache.sh

假如原本的名稱就是要改,連同資料庫的 icinga_instances 的 instance_name 也要改,因為它只辨識名稱

# 啟動 ido2db

service ido2db start

# 讓 icinga 啟用 ido2db

cd /usr/local/icinga/etc/modules
mv idoutils.cfg-sample  idoutils.cfg

# 當然 icinga 也要 reload 一下

service icinga reload
Related posts 相關文章
使用連線控制插件提高 MySQL 安全性
More...
使用驗證插件提高 MySQL 密碼安全性
More...
用 pv 查看 mysql restore 還原資料進度
More...
使用 sysbench 壓力測試 mysql
More...

作者

留言

撰寫回覆或留言

發佈留言必須填寫的電子郵件地址不會公開。