2014/10/27 桜井耕造
Getinfoで構成管理情報を取得
<Getinfoで構成管理情報を取得>
ITILの構成管理として取得すべき情報として、サーバのスペック、OSのバージョン、パッケージのバージョンなどがあります。これら構成情報は、ZabbixやOCS Inventory NGなどのオープンソースを活用すると簡単に取得出来ます。それらの構成アイテム情報をOTRSのCMDBで管理すると、アプリケーションのコンフィグなどの構成情報も管理できないかと考える方も少なくないかと思います。そのような時は、getinfoとfabricなどのオープンソースを連携してOTRSのCMDBで管理させることも出来ます。ここでは、getinfoのインストール、設定について紹介しようと思います。
(1)getinfoで取得できる情報とは
getinfoは、サーバの次の情報をディフォルトで取得することが出来ます。シェルの設定値を追記、修正すれば、色々なコンフィグを取得することも出来ます。
・OSのバージョン
・カーネルのバージョン
・カーネルパラメータの設定情報
・メモリの使用状況
・ファイルシステム関連の情報
・NICの情報
・スタティック・ルーティングの設定情報
・DNS参照の設定情報
・インストール済みパッケージの情報
・yumリポジトリ情報
など
(2)getinfoのインストール
この手順は、CentOS6.5のものです。
# rpm --import http://elrepo.org/RPM-GPG-KEY-elrepo.org # rpm -Uvh http://elrepo.org/elrepo-release-6-5.el6.elrepo.noarch.rpm # yum -y install getinfo # rpm -qa | grep getinfo getinfo-1.2-1.el6.elrepo.noarch
(3)設定を修正
取得したいコンフィグを追加します。ここでは、httpd.confを追記します。
# vi /usr/local/bin/getinfo.sh --- PRGSNET=$PRGSNET:"cat /etc/httpd/conf/httpd.conf" ---
(4)コンフィグ情報を取得
コンフィグ情報を取得するスクリプトを実行します。
# /usr/local/bin/getinfo.sh
(5)取得したコンフィグ情報を確認
取得したコンフィグ情報は、/tmp以下にbasedata.******というファイル名で生成されます。
# cat /tmp/basedata.tgxfBE 以下は一部抜粋です。 == BEGIN chkconfig --list | grep -Ei 'network|wpa' == network 0:off 1:off 2:on 3:on 4:on 5:on 6:off == END?? chkconfig --list | grep -Ei 'network|wpa' == == BEGIN cat /etc/httpd/conf/httpd.conf == # # This is the main Apache server configuration file.? It contains the # configuration directives that give the server its instructions. # See <URL:http://httpd.apache.org/docs/2.2/ (省略) # ErrorLog logs/dummy-host.example.com-error_log # CustomLog logs/dummy-host.example.com-access_log common #</VirtualHost> == END?? cat /etc/httpd/conf/httpd.conf ==
httpd.confのファイルをそのまま取得しているので、コメントアウトしている部分など不要な記述も取得していまいす。不要な記述を削除したかったりする場合は、getinfoを使わず、スクリプトを作ってしまった方が良いかもしれません。