連載
» 2011年02月25日 00時00分 公開

モニタ機能でサーバの状態を把握:準備編OpenLDAPによるディレクトリサーバ運用(7)(2/3 ページ)

[菊池研自,伊藤忠テクノソリューションズ株式会社]

ldapsearchコマンドで情報検索

 モニタ機能の設定ができたところで、情報を検索してみましょう。検索には、ldapsearchコマンドを使います。まずは、モニタデータベースであるcn=Monitorサブツリーの中を検索します。

# cd /usr/local/openldap-2.4.23
# ./bin/ldapsearch -x -D cn=Admin,cn=Monitor -w secret -b cn=Monitor -s one

 実行すると、図1のような結果になります。図1を見ると、モニタデータベースのDIT(Directory Information Tree)のトップとなる「cn=Monitor」の1つ下のエントリが出てきています。それぞれのエントリは、表1のような情報を提供します。

図1 cn=Monitorの情報を引き出したところ。クリックすると出力結果の続きを拡大表示 図1 cn=Monitorの情報を引き出したところ。クリックすると出力結果の続きを拡大表示
オブジェクト 提供する情報
Backends バックエンドとして利用可能なデータベース
Connections コネクションに関連する統計情報
Databases 利用中のバックエンドデータベースの設定や運用状況の情報
Listener OpenLDAPサーバがリスニングしているプロトコルやIPアドレス、ポート番号の情報
Log ログレベル
Operations サーバ全体の、各操作の実行回数の統計
Overlays 利用可能なオーバレイモジュール
SASL (未実装)
Statistics サーバ全体の送信データ量に関する統計
Threads ワーカースレッドの動作状況に関する情報
Time OpenLDAPが起動した時刻などの情報
TLS (未実装)
Waiters 送信、受信処理の実行回数
表1 cn=Monitorが持っているエントリと、それぞれが保持している情報

 ここからは、cn=Monitor以下のエントリがどのような情報を提供するのか詳しく紹介していきます。今回は特に、構成情報を保持するエントリ、特に「Backends」と「Databases」の中身に迫ります。

バックエンドデータベースの情報を取得

 一般に、ディレクトリ情報を投入するバックエンドデータベースには、実績があるbdb(Berkeley DB)を選択することが多くなっています。しかし、OpenLDAPサーバで利用可能なバックエンドデータベースは、bdbの他にも多数存在し、目的によっては特殊なものを使うこともあります。

 バックエンドで利用するデータベースは、OpenLDAPサーバをコンパイルする時点で、どれを使うのかを決める必要があります。ただし、「bdb」や、「monitor」のように、明示的な指定がなくても、初期設定で組み込まれるバックエンドデータベースもあります。

 ディストリビューションに付属するOpenLDAPサーバを利用するときや、途中からOpenLDAPサーバの運用を引き継いだ管理者は、バックエンドデータベースに何が組み込まれているのか気になることでしょう。このように、自分でコンパイルしていないOpenLDAPサーバの構成情報を確認したくなる場面はあるものです。こういうときに活用できるのが、モニタ機能です。

 では、実際に「cn=Backends,cn=Monitor」以下を、検索してみましょう。下の例のようにコマンドを入力して実行してください。図2のような結果になります。

# cd /usr/local/openldap-2.4.23
# ./bin/ldapsearch -x -D cn=Admin,cn=Monitor -w \
> secret -b cn=Backends,cn=Monitor -s sub '*' '+'

図2 cn=Backends cn=Monitorの情報を表示したところ。クリックすると出力結果の続きを拡大表示 図2 cn=Backends,cn=Monitorの情報を表示したところ。クリックすると出力結果の続きを拡大表示

 「cn=Backends,cn=Monitor」からは、OpenLDAPで利用可能なバックエンドデータベースの情報を取得できます。上記のコマンドを実行すると「Backends」の情報に加えて、そのサブエントリに当たる「Backend 0」〜「Backend n」(nは、使用可能なバックエンドデータベースの数)の情報を表示します。MonitorとBackends、そしてそれぞれのBackend nの関係は、図3のようにイメージすることができます。

図3 cn=Backends cn=Monitorの構造を表した図,図3 cn=Backends,cn=Monitorの構造を表した図

 それぞれのBackendの情報を見ると、バックエンドデータベースの詳細を把握できます。とりわけ役に立つ情報としては「monitoredInfo」が挙げられます。ここには、OpenLDAPをコンパイルするときに静的に組み込んだバックエンドデータベース、またはモジュール形式でコンパイルし実行時に読み込んだバックエンドデータベースの種類が現れます。

 ほかには、「monitorRuntimeConfig」「supportedControl」「seeAlso」といった項目が存在します。monitorRuntimeConfigは、実行時に当該のバックエンドの構成変更が可能かどうかをTRUEかFALSEで表示しています。supportedControlは、当該のバックエンドで利用できるLDAPプロトコルの操作を表示しています。seeAlsoは、当該のバックエンドを利用して構成したバックエンドデータベースを参照するための情報を表示しています。

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。