Red Hat Training
A Red Hat training course is available for Red Hat JBoss Operations Network
23.2. Apache SNMP モジュールの設定
Red Hat JBoss Web Server の仮想ホストを検出し、そのメトリックを収集するには、その Red Hat JBoss Web Server で SNMP モジュールを設定する必要があります。
Apache HTTP Server 2.2 は、Red Hat Enterprise Linux および Windows Server でサポートされています。
重要
JBoss ON を使用して Apache HTTP Server を監視するには、の手順に従う前に SNMP モジュールをコンパイルする必要があり 「Apache HTTP Server で使用する Apache SNMP モジュールの準備」 ます。
SNMP プラグインはすでに JBoss ON 3.3 でインストールされ、有効になっています。また、SNMP モジュールは Red Hat JBoss Web Server 内に事前インストールされています。JBoss ON とのモニタリングに Red Hat JBoss Web Server を設定するには、以下を行います。
- 編集する
httpd.conf
ファイルを開きます。$ sudo vim JWS_install_directory/conf/httpd.conf
- Dynamic Shared Object Support セクションの下にある
httpd.conf
ファイルにこれらの行を追加して、モジュールを有効にします。LoadModule snmpcommon_module JWS_install_directory/modules/snmpcommon.so LoadModule snmpagt_module JWS_install_directorymodules/snmpmonagt.so SNMPConf JWS_install_directory/conf SNMPVar JWS_install_directory/var
Windows Server の場合:LoadModule snmpcommon_module modules/libsnmpcommon.so LoadModule snmpagt_module modules/libsnmpmonagt.so SNMPConf conf SNMPVar var
httpd.conf
ファイルの主な設定セクションと、各 <VirtualHost> 設定ブロックにポートがある ServerName ディレクティブが含まれていることを確認します。SNMP モジュールはこのディレクティブを使用して、メインサーバーと各仮想ホストを一意に識別するため、各 ServerName ディレクティブに一意の値が含まれている必要があります。例:ServerName main.example.com:80 ... <VirtualHost vhost1.example.com:80> ServerName vhost1.example.com:80 ... </VirtualHost>
- 同じマシン上に複数の Apache インスタンスがある場合は、インスタンスごとに異なる SNMP ファイルを使用できます。
- 各 Web サーバーインスタンスには独自の
httpd.conf
ファイルがあります。各ファイルの SNMPConf ディレクトリーを独自の SNMP 設定ディレクトリーに設定します。たとえば、instance1 の場合は以下のようになります。$ sudo vim instance1-httpd.conf SNMPConf /opt/apache-instance1/conf
次に、たとえば 2 の場合は以下のようになります。$ sudo vim instance2-httpd.conf SNMPConf /opt/apache-instance2/conf
各snmpd.conf
ファイルは、指定したディレクトリーに置く必要があります。 - JWS_install_directoryに agentaddress プロパティーを編集して、各インスタンスの値
/conf/snmpd.conf
が異なるエージェントアドレスとポートの値を持つようにし、インスタンス間で競合が発生しないようにします。このプロパティーの構文の説明は、snmpd.conf ドキュメントを参照してください。
- Restart Red Hat JBoss Web Server.
$ sudo apachectl -k restart
- Red Hat JBoss Web Server エラーログを確認して SNMP モジュールがインストールされ、設定されていることを確認します。
$ grep SNMP JWS_installation_dir/logs/error_log [Wed Mar 19 09:54:34 2008] [notice] Apache/2.0.63 (Unix) CovalentSNMP/2.3.0 configured -- resuming normal operations [Wed Mar 19 09:54:35 2008] [notice] SNMP: CovalentSNMP/2.3.0 started (user '1000' - SNMP address '1610' - pid '26738')
JBoss ON ユーザーインターフェースを使用して JBoss ON 監視リソースに HTTP Server を追加するには、Inventory タブを選択して Resources メニューの Discovery Queue 下にある順に選択できるようになりました。
23.2.1. Apache HTTP Server で使用する Apache SNMP モジュールの準備
サポートされるバージョンの Apache HTTP Server(Red Hat JBoss Web Server 2.x 以外の)に SNMP コネクターが必要な場合は、ソースからコンパイルし、インストールする必要があります。
重要
Response Time モジュールを使用するには、Apache サーバーが共有オブジェクトサポートでコンパイルされている必要があります。Red Hat Enterprise Linux システムおよび Red Hat JBoss Web Server サーバーでは、これはデフォルトで有効になっています。
Apache HTTP Server が共有オブジェクトサポートでコンパイルされていることを確認するには、apachectl -l コマンドを使用してコンパイル済みモジュールを一覧表示し、
mod_so.c
モジュールを探します。
$ sudo apachectl -l Compiled in modules: core.c prefork.c http_core.c mod_so.c
共有オブジェクトがサポートされる Apache HTTP Server をコンパイルするには、以下の
--enable-module=so
オプションを使用します。
$ ./configure --enable-module=so $ make install
- Apache コネクターは、にあるソースファイルから Solaris などの他のプラットフォームに対してコンパイルでき
connector-apache.zip
ます。 - JBoss ON UI から Apache モジュールのソースファイルをダウンロードします。
- JBoss ON UI にログインします。
https://server.example.com:7080
- トップメニューの Administration タブをクリックします。
- 左側の Configuration メニューボックスで、Downloads 項目を選択します。
- にスクロールし Connector Downloads、
connector-apache.zip
リンクをクリックして Apache コネクターをダウンロードします。
注記SNMP モジュールのソースファイルを含む zip ファイルは、を参照してくださいJON_SERVER_INSTALL_DIR/modules/org/rhq/server-startup/main/deployments/rhq.ear/rhq-downloads/connectors/connector-apache.zip
。 - SNMP モジュールをコンパイルするには、、、perl make automake およびパッケージをインストールする必要があります libtool。
sudo yum install perl make automake libtool
また、Apache インストールの一部として apxs 使用してください。 - Apache コネクターを展開し、ビルドスクリプトを実行します。
$ sudo unzip connector-apache.zip $ sudo cd apache-snmp/sources/ $ sudo chmod 755 ./build_apache_snmp.sh $ sudo ./build_apache_snmp.sh 2.0 [APACHE_INSTALL_DIR/sbin/apxs]
- 配置
build_apache_snmp.sh
されているディレクトリーからモジュールをインストールします。例:$ sudo cd snmp_module_# $ sudo cp module/* apache_install_directory/modules $ sudo cp conf/* apache_install_directory/conf $ sudo mkdir apache_install_directory/var
# は Apache バージョン(2.0 または 2.2 のいずれか)です。Windows Server の場合:> xcopy /e JON_AGENT_INSTALL_DIR\product_connectors\apache-snmp\binaries\x86
- これで、で説明されている Red Hat JBoss Web Server のモジュールの設定プロセスと同じプロセスを使用して Apache SNMP モジュールを設定する準備が整いました 「Apache SNMP モジュールの設定」。