サーバーリソースの監視

2011年7月28日(木)
sanonosa

サーバーリソース監視の必要性

サーバーへのアクセスが増えてくるとサーバーリソースが不足してきます。サーバーリソースを増強する手段として最も容易に思いつくのがサーバー自体を増強することです。VPSではサーバー増強が容易なので、サーバーリソースが不足してくるとすぐにVPSをもう1契約増やしたくなる気持ちは分からなくもありません。

しかし一口にサーバーリソースと言っても、CPU、メモリ、ディスクI/O、そしてネットワークといったハードウエアリソース要素があります。サーバーリソース全体が不足なように見えて実はメモリが不足しているだけなので、サーバー自体を増強せずともメモリだけ増やしてあげれば済むということは多いです。もしくは不良プログラムがハードウエアリソースを浪費させていたので、むしろプログラムを直した方がよい、ということもよく起こります。

このようにサーバーリソースの各要素を正確に把握できるようにしておくと、無駄にサーバーを増やす必要がなくなるため、何らかの手段でサーバーリソースを監視できるようにしておくことは大切です。そこで今回はサーバーリソースを監視できる様々なツールの中から、RRDToolを用いたperlベースのリソースモニタリングツール「Munin」をご紹介いたします。
→参照:Munin

Muninの最大の特徴は導入が容易ということです。同様の用途でよく使われるMRTGやCactiなどでは、ハードウエア利用状況を取得するためにSNMPというプロトコルを利用しますが、SNMPを利用するためにはサーバーやネットワークなどでいろいろな設定が必要となり手間がかかります。それに対してMuninではmunin-nodeというノード用デーモンを各監視対象サーバーに簡単な操作や設定で入れておくだけで、あとはノード用デーモンが監視サーバーに適時データを自動送信してグラフ化してくれるようになります。

図1:Muninの構成

Muninでグラフ化が行える対象としては先ほど挙げたCPU、メモリ、ディスクI/O、そしてネットワークといったハードウエアリソースの他に、apache・MySQLやPostgreSQL・sendmail・BINDなどがあります。さらにMuninではプラグインを追加すればありとあらゆる数値をグラフ化できるようになります。

Muninのインストール

それでは実際にMuninを入れてみましょう。

※今回も便宜上CentOSを前提とします。なお今回監視サーバーと監視対象サーバーが以下のような構成であると仮定します。

  monsvr 10.0.0.1    # 監視サーバー
  host1  10.0.0.11   # 監視対象サーバー

最初に、監視サーバーと監視対象サーバーにそれぞれ必要なパッケージをインストールします。yumでMuninをインストールしようとする場合、標準のリポジトリには残念ながらMuninが存在しませんので、他のリポジトリを指定してからyumでインストールすることになります。

  # rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm
  # cat > /etc/yum.repos.d/dag.repo
  [dag]
  name=Dag RPM Repository for Red Hat Enterprise Linux
  baseurl=http://ftp.riken.jp/Linux/dag/redhat/el4/en/x86_64/dag/    <- 32bit OSの場合はx86_64の代わりにi386
  gpgcheck=1
  gpgkey=http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
  enabled=1
●監視サーバーの場合
  # yum -y --enablerepo=dag install munin-node
  # yum -y --enablerepo=dag install munin
  # yum -y install httpd
●監視対象サーバーの場合
  # yum -y --enablerepo=dag install munin-node
  # sed -i 's/enabled=1/enabled=0/' /etc/yum.repos.d/dag.repo

国内某有名ITベンチャー企業に創業メンバーとして携わる。国内最大規模のシステムを構築運用してきたほか、社内情報システム導入のプロジェクトマネジメント、韓国の交友関係が豊富なことから韓国関連で多数のシステムインテグレーションなども行ってきた。前職は富士通株式会社でSE。
個人blog:http://nosa.cocolog-nifty.com/

連載バックナンバー

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています