野良zabbix ― 2019年07月27日 16:20
Zabbixの設定調整
DebianなりUbuntuなりのAPTっぽい環境上で動いていること前提
・とりあえずWebminを入れておく
/etc/apt/source.listの追加が必要
deb http://download.webmin.com/download/repository sarge contrib
aptなキーの追加が必要
wget http://www.webmin.com/jcameron-key.asc
apt-key add jcameron-key.asc
参考はこの辺
https://www.hiroom2.com/2017/06/27/debian-9-webmin%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B/
・ Disk I/O
先にdisk i/oのグラフを出せるようにしておいたほうがいいかも
https://blog.apar.jp/zabbix/1405/
https://blog.apar.jp/zabbix/1382/
このへん。
・ Zabbix側
http://blog.serverworks.co.jp/tech/2016/12/17/zabbixtuning/
コレに沿って実施すればいい?
グラフの下にあるとおり、pollerのbusyが30%以下になるように
調整すればいいようだ
pollerを増やすとDBへのコネクション数が増えるので
DB側でコネクションエラーにならないよう調整が必要
メモリやキャッシュ周りをきちんとやれば、ディスクIOが減るので
その分の効果はある・・・と思う。多分。
・ 取得するアイテムを減らす
とりあえずあれこれと全部取る必要はないのであれば
ホストの設定でアイテムの取得を無効にする
設定→ホスト→アイテムで、名前のところに文字列を入れて適用すると
絞り込みができるので、バサッと無効化できる
1ページに表示されるアイテムの数は、ログイン直後の右上にある
ユーザープロファイルの中の「ページあたりの表示数」で変更できる
・アラームがうざい
上と同じように
設定→ホスト→トリガと行って
左のボックスにチェックを入れて一番下の無効化を押すと
その項目はアラームがでなくなる
・MysqlというかMariaDBのパラメタ確認
mysql -e "show variables like '%innodb%'"
※含む、の場合は、前後を%で囲む(上の例だとinnodbを含む)
・MySQLというかMariaDB
mysqltunerを入れて動かしてみる
mysqltuner --buffer
色々出るので、出たものを修正する
あとはこの辺
https://www.percona.com/blog/2014/11/14/optimizing-mysql-zabbix/
に沿って実施。ただこのページの記事は
つよつよなサーバー向けなので
ある程度はパラメタの手加減をすること
(mysqltunerのrecommendとは一致しない)
※例えばinnodb_buffer_pool_instances = 8は、
最低instanceごとに1GBのメモリが必要なため
8GB以上のメモリが載っていないと有効にならない
query cacheは無効にしたほうがいいみたい?なので
無効にしてみる
query_cache_size = 0
query_cache_type = 0
リスクは有るがこの辺を変更
innodb_flush_method = O_DIRECT
innodb_flush_log_at_trx_commit = 0 (か2にする)
※mysql -e "set global innodb_flush_log_at_trx_commit = 0"
という感じで動的に変更もできるらしい
innodb_buffer_pool_size
これについては多ければ多いほどいいようだけど
DBがでかくてどうせメモリが足りないので、できる限りで増やす
デフォルトは128MB
※mysqltunerで警告が出ない範囲にする
innodb_log_file_size
Buffer_pool_sizeの1/4を目処に。
autocommitは止めないほうがいいようだ。
・今のDBの各テーブルの容量
mysql -e "show table status from zabbix"
・上で出た、Data_freeの分サイズを小さくするには
mysql -e "OPTIMIZE TABLE zabbix.trends_uint" とか
※意外と時間がかかる上、修理中はDBが
ロックされるっぽいので更新ができなくなることに注意
zabbix-serverを止めて実行するべき?
気休めだけど意外と小さくなって2/3くらいにはなる
小さくしてもまた自動拡張で大きくなるので、ほどほどで。
DebianなりUbuntuなりのAPTっぽい環境上で動いていること前提
・とりあえずWebminを入れておく
/etc/apt/source.listの追加が必要
deb http://download.webmin.com/download/repository sarge contrib
aptなキーの追加が必要
wget http://www.webmin.com/jcameron-key.asc
apt-key add jcameron-key.asc
参考はこの辺
https://www.hiroom2.com/2017/06/27/debian-9-webmin%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B/
・ Disk I/O
先にdisk i/oのグラフを出せるようにしておいたほうがいいかも
https://blog.apar.jp/zabbix/1405/
https://blog.apar.jp/zabbix/1382/
このへん。
・ Zabbix側
http://blog.serverworks.co.jp/tech/2016/12/17/zabbixtuning/
コレに沿って実施すればいい?
グラフの下にあるとおり、pollerのbusyが30%以下になるように
調整すればいいようだ
pollerを増やすとDBへのコネクション数が増えるので
DB側でコネクションエラーにならないよう調整が必要
メモリやキャッシュ周りをきちんとやれば、ディスクIOが減るので
その分の効果はある・・・と思う。多分。
・ 取得するアイテムを減らす
とりあえずあれこれと全部取る必要はないのであれば
ホストの設定でアイテムの取得を無効にする
設定→ホスト→アイテムで、名前のところに文字列を入れて適用すると
絞り込みができるので、バサッと無効化できる
1ページに表示されるアイテムの数は、ログイン直後の右上にある
ユーザープロファイルの中の「ページあたりの表示数」で変更できる
・アラームがうざい
上と同じように
設定→ホスト→トリガと行って
左のボックスにチェックを入れて一番下の無効化を押すと
その項目はアラームがでなくなる
・MysqlというかMariaDBのパラメタ確認
mysql -e "show variables like '%innodb%'"
※含む、の場合は、前後を%で囲む(上の例だとinnodbを含む)
・MySQLというかMariaDB
mysqltunerを入れて動かしてみる
mysqltuner --buffer
色々出るので、出たものを修正する
あとはこの辺
https://www.percona.com/blog/2014/11/14/optimizing-mysql-zabbix/
に沿って実施。ただこのページの記事は
つよつよなサーバー向けなので
ある程度はパラメタの手加減をすること
(mysqltunerのrecommendとは一致しない)
※例えばinnodb_buffer_pool_instances = 8は、
最低instanceごとに1GBのメモリが必要なため
8GB以上のメモリが載っていないと有効にならない
query cacheは無効にしたほうがいいみたい?なので
無効にしてみる
query_cache_size = 0
query_cache_type = 0
リスクは有るがこの辺を変更
innodb_flush_method = O_DIRECT
innodb_flush_log_at_trx_commit = 0 (か2にする)
※mysql -e "set global innodb_flush_log_at_trx_commit = 0"
という感じで動的に変更もできるらしい
innodb_buffer_pool_size
これについては多ければ多いほどいいようだけど
DBがでかくてどうせメモリが足りないので、できる限りで増やす
デフォルトは128MB
※mysqltunerで警告が出ない範囲にする
innodb_log_file_size
Buffer_pool_sizeの1/4を目処に。
autocommitは止めないほうがいいようだ。
・今のDBの各テーブルの容量
mysql -e "show table status from zabbix"
・上で出た、Data_freeの分サイズを小さくするには
mysql -e "OPTIMIZE TABLE zabbix.trends_uint" とか
※意外と時間がかかる上、修理中はDBが
ロックされるっぽいので更新ができなくなることに注意
zabbix-serverを止めて実行するべき?
気休めだけど意外と小さくなって2/3くらいにはなる
小さくしてもまた自動拡張で大きくなるので、ほどほどで。
コメント
トラックバック
このエントリのトラックバックURL: http://marshall.asablo.jp/blog/2019/07/27/9134046/tb
※なお、送られたトラックバックはブログの管理者が確認するまで公開されません。
コメントをどうぞ
※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。
※なお、送られたコメントはブログの管理者が確認するまで公開されません。