munin監視対象のホスト名が変わった場合、監視サーバー側でもホスト名を変えないと、見た人がホストを取り違えるなどミスがおきてしまいます。監視サーバー側のmunin.confでホスト名を変えるだけでは過去データは失われないものの、過去監視データは引き継がれません。監視対象のIPアドレスはそのままでホスト名が変わったときの、過去監視データを引き継ぐ手順をメモします。
監視サーバー側のディストリビューションはCentOS 6.6、muninパッケージは以下の通りです。
$ cat /etc/redhat-release CentOS release 6.6 (Final)
$ yum list installed munin* | egrep munin | awk '{print $1,$2,$3}' munin.noarch 2.0.25-2.el6 @epel munin-common.noarch 2.0.25-2.el6 @epel munin-nginx.noarch 2.0.25-2.el6 @epel munin-node.noarch 2.0.25-2.el6 @epel
監視サーバーと監視対象でそれぞれオペレーションを行うので、見出しにどちらで作業するのかを書いています。監視対象の旧ホスト名を www.old.example.com 、新ホスト名を www.new.test.jp とします。
■ [監視サーバー]munin-fcgi-graph munin-fcgi-html のデーモンを止める
5分に1回、muninのデータ出力が行われるたびに旧ホスト名でのデータが更新されてしまうので、これらのデーモンを動かしている場合は一旦停止します。
■ [監視サーバー]munin.confのホスト名を書き換える
/etc/munin.conf に書かれている、監視対象のホスト名を書き換えます。IPアドレスの変更がなければホスト名のみの書き換えでOKです。
■ [監視対象]munin-node.confのホスト名を書き換える
/etc/munin/munin-node.conf にかかれている、「host_name」で始まる行のホスト名(自ホスト名)を書き換えます。
■ [監視サーバー]rrdファイルをリネームする
監視対象の過去データ(rrdファイル)は /var/lib/munin の下のグループ名のディレクトリの中に www.old.example.com-〜〜〜.rrdというファイル名で置かれています。グループ名はmuninの監視画面またはmunin.confで確認してください。
$ cd /var/lib/munin/GROUPNAME
そして一撃リネームです。
$ for A in $(ls | grep www.old.example.com); do sudo mv ${A} $(echo ${A} | sed -e "s/www.old.example.com/www.new.test.jp/"); done
■ state-グループ名-www.old.example.com.storable ファイルをリネームする
state-グループ名-www.old.example.com.storable ファイルを state-グループ名-www.new.test.jp.storable にリネーム(コピー)します。
$ cd /var/lib/munin $ sudo mkdir -p BACKUP $ sudo cp -p state-GROUPNAME-www.old.example.com.storable state-GROUPNAME-www.new.test.jp.storable $ sudo mv state-GROUPNAME-www.old.example.com.storable BACKUP/
■ [監視サーバー]munin-fcgi-graph munin-fcgi-html のデーモンを起動する
先ほど止めた munin-fcgi-graph munin-fcgi-htmlのデーモンを起動します。5分程度待ってからブラウザの監視画面をリロードして、監視対象のホスト名が変わっていればOKです。ね、簡単でしょう?
![ソフトウェアデザイン 2015年 08 月号 [雑誌]](http://ecx.images-amazon.com/images/I/51tJUoaTO7L._SL160_.jpg)