この付録では、RUEIのインストール時に発生する最も一般的な問題を取り上げ、それらの問題を見つけて修正するための解決方法を示します。Oracleサポート・サービスに問い合せる前に、この付録の内容を確認してください。
詳細
Oracle Enterprise Managerの情報は、次の場所に提供されています。
http://www.oracle.com/us/products/enterprise-manager/index.html
詳細な技術情報は、My Oracle Supportから入手できます。
https://support.oracle.com
Oracleサポート・サービスへの問合せ
RUEIのインストールまたは構成で問題が発生した場合、Oracleサポート・サービスに問い合せることができます。ただし、その前に、インストールについてのヘルプデスク・レポート・ファイルを作成することを強くお薦めします。これを実行するには、「System」、「Configuration」、「Helpdesk report」の順に選択します。このファイルには、ユーザーが報告する問題を処理する際に、Oracleサポート・サービスにとって非常に役に立つ広範なシステム情報が含まれています。
インストール時の問題のトラブルシューティングには、ruei_check.sh
スクリプトを使用することをお薦めします。初めて実行するとき、スクリプトからインストール・タイプ(reporter
、collector
またはdatabase
)を指定するように要求されます。この選択はファイルに保存されるので注意してください。そのため、スクリプトを実行して、異なるインストール・タイプを指定できるようにするには、次のコマンドを使用して/tmp/ruei-system-type
ファイルを削除する必要があります。
rm /tmp/ruei-system-type
表E-1のパラメータを指定できます。
表E-1 ruei-check.shパラメータ
パラメータ | 説明 |
---|---|
|
基本的なシステム・チェックの他、多数の前提条件のチェックを実行します。これには、監視可能なインタフェース、Oracleデータベースが正しく起動すること、Apache Webサーバー、PHPおよびZendオプティマイザが正しく構成されていることなどのチェックが含まれます。 |
|
Oracleデータベースが正しく構成されているかどうかをチェックします。 |
|
RUEI RPMが正しく構成されたかどうかをチェックします。 |
|
前述のチェックをすべて示した順序で実行します。 |
次に例を示します。
cd /root/RUEI/111 ./ruei-check.sh all
ruei-prepare-db.sh
スクリプトが失敗する場合は、DNS参照の失敗が原因で、データベース・リスナーが正しく起動しなかったためと考えられます。この問題を解決するには、次のようにします。
/etc/hosts
ファイルにホストが含まれていることを確認します。
/etc/nsswitch.conf
ファイル内のエントリが、必要な書式(sequence hosts: files DNS)で指定されていることを確認します。
注意: ruei-prepare-db.sh スクリプトは、現行のデータベースを削除し、新しいデータベースをインストールするために、--clean オプションとともに実行できます。 |
システムが起動していないように思われる場合、または正しいポートをリスニングしていない場合は、次のようにします。
各コレクタ・サービスを再起動します。それには、「System」、「Maintenance」、「Network data collectors」の順に選択し、接続されている各コレクタを選択して、メニューから「Restart」オプションを選択します。これについては、『Oracle Real User Experience Insightユーザーズ・ガイド』でより詳しく説明されています。
ネットワーク・フィルタの定義を確認します。これについては、『Oracle Real User Experience Insightユーザーズ・ガイド』で説明されています。特に、通常のネットワーク・フィルタが適用されていないことを確認します。これは、VLANの場合に特に重要です。
RUEIが正しいプロトコルおよびポートをリスニングしていることを確認します。これについては、『Oracle Real User Experience Insightユーザーズ・ガイド』で説明されています。
コレクタ・インタフェースがupになっていることを確認します。これは以下で説明しています。
リソースとログ・ファイル
Initial setup wizard(「RUEIの初期構成の実行」で説明)の実行中または実行直後に、システムからエラーが返された場合には、デバッグに役立つ次のリソースとログ・ファイルがあります。
/var/opt/ruei/processor/log/gui_debug.log
: 低レベルのシステム情報を示す独自のデバッグおよびログ・ファイル。内容は読みにくいですが、ここであげているような標準的なシステム・エラー・メッセージが見つかります。
/var/log/httpd/access_log
および/error_log
: Apacheデーモンのアクセス・ログ・ファイルおよびエラー・ログ・ファイル。RUEIユーザー・インタフェースのHTTPまたはPHP実行のどこかが間違っている場合、これらのログ・ファイルに記録されています(これらは、RUEIがHTTPデータ分析に使用するログ・ファイルではない点に注意してください)。
根本原因の分析
特定の問題に対処する前に、データ収集、データ処理およびデータのレポート作成の基本操作を理解することが重要です。RUEIに関する問題の根本原因の分析には、次のことが必要です。
データ収集を検証します。「System」、「Status」、「Collector status」の順で選択します。表示されたリストからコレクタを選択し、システム・インタフェースにTCP、イーサネット、HTTPレベルでの通信アクティビティが表示されていることを確認します。
さらに、SSLデータ復号化に問題がないことを確認します。いくつかのエラーが発生するのは普通です(特に、起動後すぐ)。しかし、SSL通信が復号化される場合、エラー率が100%になることはあり得ません。
データ処理を検証します。システム、ステータス、データ処理の順で選択します。図4-7と同じような画面が表示されます。画面にはなんらかのアクティビティが示されています。
データ収集サービスが稼働していないか、開始されない場合は、次のようにします。
TCP診断機能を使用して、RUEIで必要なネットワーク通信がすべて監視されていることを検証します。このツールの使用方法は、付録D「監視対象ネットワーク・トラフィックの検証」で説明しています。
データ収集に使用されるネットワーク・カードが、無差別モードで稼働していることを確認します。これは、コマンドifconfig
eth
N
(N
は、データ収集に使用されているネットワーク・インタフェースの番号)を発行して確認できます。次のような出力が返されます。
ethn
Link encap:Ethernet HWaddr 00:15:17:3E:26:AF UP BROADCAST RUNNING PROMISC MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 GiB) TX bytes:0 (0.0 GiB) Memory:b9120000-b9140000
ネットワーク・インタフェースが使用できない場合、以下で説明しているように、ONBOOTパラメータがYESに設定されていることを確認します。
ネットワーク・インタフェースがまだ無差別モードになっていない場合は、ifconfig
eth
N
promisc
コマンド(N
は、データ収集に使用されているネットワーク・インタフェースの番号)を発行して設定します。
データ収集に使用するネットワーク・インタフェースに、IPアドレスが割り当てられていないことを確認してください。IPアドレスが設定されている場合は削除してください。
注意: 0.0.0.0または127.0.0.1に設定しないでください。構成済のIPアドレスは完全に削除します。 |
なんらかの理由でデータ処理が開始されない場合は、「System」、「Maintenance」、「System Reset」の順に選択して再起動を試行します。System reset wizardが表示されます。「Restart system processing」オプションを選択します。システム処理の再起動には、5から30分かかる場合があります。
一般に、処理されているデータがない場合、「構成の検証と評価」で説明されているように、システムの構成を検証します。システムに構成を適用しないと、データ処理は行われません。
複数のコレクタがある環境を使用している場合、すべてのコレクタが起動し、正常に稼働していることを確認します。これを実行するには、「System」、「Status」、「Collector status」の順に選択します。障害のあるコレクタは、システム・データのデータ処理を進める妨げとなる場合があります。
電子メールの送信は、システム・レベルで、SendmailやPostfixなどのメール転送エージェント(MTA)とともに処理されるRUEIの機能です。電子メールの送信中に問題が発生した場合、次のようにします。
メールがRUEIによってMTAに正しく送信されている場合、毎日、毎週、または毎月のレポートを手動で送信しようとすると、ユーザー・インタフェースでは「Message sent successfully」と報告されます。
メールがRUEIによってMTAに正しく送信されなかった場合は、MTAが稼働中であることを確認します。または、「System」、「Maintenance」、E-mail configurationの順に選択して、メールの設定を分析します。
メールの送信には成功したにもかかわらず、受信者に配信されなかった場合は、MTAの動作を分析して、メールが配信されない根本原因をさらに特定します。
報告されているメールの問題は、/var/log/maillog
ファイルを参照してください。
電子メール配信での一般的な問題は、正しく構成されていないMTA、またはデータ・センターや会社のネットワーク内で、電子メールの送信を許可されていないMTAによって生じることがよくあります。
SSL通信を復号化するために、コレクタでSSLキーと証明書が使用可能であることが必要です。SSL復号化を有効にするには、次のようにします。
SSLキーを適切なコレクタからアップロードします。
必須の復号化パスフレーズを入力して、SSLキーを有効にします(該当する場合)。
証明書は、「Configuration」、「Security」、「SSL keys」の順に選択して、コレクタにアップロードする必要があります。SSL復号化のステータスを確認するには、「System」、「Status」、「Collector status」の順に選択して、SSL復号化分析が必要なコレクタを選択します。「SSL encryption」ページ内で、次のことに注意します。
SSLキーがアップロードされていない場合、復号化エラーが発生します。
適切なSSLキーをアップロードし、アクティブ化した直後には、復号化の成功率が低くなります。
この割合は、SSLキーのアップロード後最初の数分あるいは数時間のうちに上昇します。
RUEIでは、SSLキーおよび証明書のPKCS#12およびPEM/DERエンコーディングを使用できます。基本的に、これは証明書とキーの両方が1つのファイルに連結されていることを意味します。キー・ファイルと証明書ファイルが別の場合、次のコマンドを発行して、PKCS#12準拠のファイルを作成できます。
openssl pkcs12 -export -incertificate.cer
-inkeykey.key
-outpkcs12file.p12
-passout pass:yourpassphrase
ここでは、次のようになります。
certicate.cer
は、CAルート証明書ファイルです。
key.key
は、サーバーのSSLキー・ファイルです。
pkcs12file.p12
は、PKCS#12エンコード・ファイルの出力ファイル名です。
yourpassphrase
は、ファイルを不要な復号化から保護するために使用するパスフレーズです。
たとえば、CAルート証明書のファイル名がca_mydomainroot.cer
、サーバーのSSLキーがappsrv12.key
で、出力ファイルをuxssl.p12
とし、このファイルをパスフレーズthisismysecretpassphrase
で保護する場合を考えます。次のコマンドが必要です。
Openssl pkcs12 -export -in ca_mydomainroot.cer -inkey appsrv12.key -out uxssl.p12 -passout pass:thisismysecretpassphrase
以下で説明しているインストール手順と設定に従うことを強くお薦めします。特に、Oracle Linuxの最小インストールは実行しないでください。実行した場合、インストールに含まれていないRUEIの必須コンポーネントによって、報告されている様々な問題につながる可能性があります。
これらの問題で最も一般的なものが、/var/log/http/error_log
ファイルで報告されるfontconfig
エラー・メッセージです。これらは、次のフォントをインストールすることで解決できます。
urw-fonts-noarch v2.3
ghostscript-fonts-noarch v5
dejavu-lgc-fonts-noarch v2
liberation-fonts v0.2
bitmap-fonts v0.3
bistream-vera-fonts-noarch v1.10
使用する言語の設定に応じて、必要な他のすべてのフォントをインストールします。
しかし、他にも考えられるエラー・メッセージとして、欠落パッケージ(librsvg2
など)の報告があります。
Yumリポジトリが使用可能な場合、Linux 5.x DVDで利用可能なすべての依存関係は、次のコマンドを発行することでインストールできます。
yum -y install gcc gcc-c++ compat-libstdc++-33 glibc-devel libstdc++-devel \ elfutils-libelf-devel glibc-devel libaio-devel sysstat perl-URI net-snmp \ sendmail-cf httpd php php-pear php-mbstring phpldap bitstream-vera-fonts \ librsvg2 xorg-x11-xinit net-snmp-utils perl-XML-Twig
ただし、RUEIインストールzipファイルに含まれている追加のRPMを、以下で説明している手順に従ってさらにインストールする必要があることに注意してください。
Oracleデータベース・エラーを受信した場合は、次のようにします。
/etc/sysconfig/httpd
ファイルに次の行が含まれていることを確認します。
source /etc/ruei.conf
これらの行を追加する必要がある場合は、次のコマンドを使用してApache Webサーバーを再起動します。
service httpd restart
ewallet.p12
ファイルが、RUEI_USERで指定されたユーザーによって読取り可能であることを確認してください。さらに、cwallet.sso
ファイルが、RUEI_GROUPで指定されたグループによっても読取り可能であることを確認してください。Linux/UNIXでは、次のコマンドを実行することで確認できます。
chmod 600 ewallet.p12 chmod 640 cwallet.sso
/var/opt/ruei/tnsnames.ora
ファイル、/etc/sysconfig/network
ファイルおよび/etc/hosts
ファイルで、同じホスト名が指定されていることを確認します。
これらのファイルに変更を加えると、サーバーの再起動が必要になる場合があるので注意してください。
次のコマンドを使用して、moniforce
ユーザーに変更し、SQL*Plusプロンプトを取得することにより、Oracleデータベースが稼働中であることを確認します。
su - moniforce sqlplus /@uxinsight
パスワードの入力を要求されることなく、SQL*Plusコマンドの行を受信します。これは、Oracleウォレットの認証に成功したことを示しています。
必要な場合は、次のコマンドを使用して、Oracleデータベースを再起動します。
/etc/init.d/oracledb
レポート作成モジュールに問題が発生した場合、あるいはモジュールのインタフェースが不安定であることがわかった場合、次を実行することをお薦めします。
ブラウザ内のすべてのコンテンツ・キャッシングを消去し、ブラウザを再起動します。
エラー・ログを調べます。これについては、『Oracle Real User Experience Insightユーザーズ・ガイド』で説明されています。
「System」、「Status」を選択し、次に「Data Collection」、「Logfile processing」および「Data processing」を選択して、コア・コンポーネントの正しい動作を確認します。これらのコンポーネントにエラーがある場合は、この付録に記載されているアドバイスに従って、問題の解決を試行してください。
データ収集に使用するネットワーク・インタフェースがUpになっていない場合(すなわちONBOOT=YES
パラメータが設定されていなかった場合)、次のコマンドを使用してすぐに起動できます。
ifconfig ethN
up
N
は、必要なネットワーク・インタフェースを表しています。
次のメモリー割当てエラーは、リリース5.1から6.0へのアップグレードの手順の一部として、レポータRPMを更新しているときに発生します。
Cannot allocate memory
コレクタの起動のために、コレクタでソケット接続に使用可能なメモリーを増やします。root
ユーザーとして、次のコマンドを発行します。
/sbin/sysctl -w net.core.optmem_max=65535
OAM関連の問題の分離を開始するために、次のようにします。
moniforce
ユーザーとしてレポータ・システムにログオンします。
Cookieのサンプル値を取得するには、次のコマンドを発行します。
EXAMPLE_VALUE=$(zgrep ObSSOCookie
\ $WEBSENSOR_HOME/data/wg_localhost/http/`date +"%Y%m%d"`/*/http-*|\ tail -1 |sed 's,^.*ObSSOCookie=\([^;[:space:]]*\)[;[:space:]].*$,\1,g')
取得したサンプル値を表示するには、次のコマンドを発行します。
echo $EXAMPLE_VALUE
戻された出力が空ではなく、エラーが含まれていないことを確認する必要があります。次のような出力が予想されます。
2bTxIrJxIGg%2FMrntHeRuhI1bADtml%2FNPXMho%2FuXK1S3PmiqdsQy4QAgcq0JiQbLfabIs1FBQc%2Bq1Nadjw7naVCqAyT7ir883GoGkSTX8ODtW7S1HQlbATMahOSYsTn8wshgg%2Fg5vi0d18%2F3Zw6tOdPevrhE0wTCk069p%2FkeIS8ftPBUSe6p9rEKiWBqyptQpUzW4SwfTz89iNxOoNULPkG4I5B%2BVa2ac4pgA4rc%2Bre%2BdFk3Gcm7dyu5XC%2BiQKRznERRE1t7wQb7RF5zjFL8hD6Jl0yquJytYPV3x7ufa%2BWatYE5uIHq3NdUKzuLq0214
取得した値をOAM Cookieとして指定するには、次のコマンドを発行します。
project - cp $WEBSENSOR_INI/../evt/OAM2* $WEBSENSOR_INI mklookup --match $EXAMPLE_VALUE '%' '%1[$OAM2UserName] %0
報告されるエラー
次のエラーが発生した場合:
*ERROR* - obssocookie: could not dlopen() /opt/netpoint/AccessServerSDK//oblix/lib/libobaccess.so: /opt/netpoint/AccessServerSDK//oblix/lib/libobaccess.so: cannot open shared object file: Permission denied
これは、moniforce
ユーザーが必要な権限を持っていないことを示しています。moniforce
ユーザーとしてレポータ・システムにログオンし、次のコマンドを発行します。
find /opt/netpoint/AccessServerSDK -type d -exec chmod o+rx {} \; find /opt/netpoint/AccessServerSDK -type f -exec chmod o+r {} \;
次のエラーが発生した場合:
*ERROR* - obssocookie: could not dlopen() /opt/netpoint/AccessServerSDK//oblix/lib/libobaccess.so: /opt/netpoint/AccessServerSDK//oblix/lib/libobaccess.so: wrong ELF class: ELFCLASS32
これは、Access Gate SDKの32-bitバージョンが、必要な64-bitバージョンのかわりにインストールされていることを示しています。必要なAccess Gate SDKをダウンロードし、インストールする手順は、「Access Gateソフトウェアのダウンロードとインストール」で説明されています。
Access Gate SDKのインストールには、32ビット・バージョンのアンインストールのユーティリティ(_uninstAccessSDK/uninstaller.bin
)が含まれている点に注意してください。
次のエラーが発生した場合:
Server is not authenticated to access the the OAM environment
これは、RUEIとアクセス・サーバー間の信頼関係の作成(「RUEIサーバーでのAccess Gateソフトウェアの構成」で説明)が成功しなかったため、もう一度実行する必要があることを示しています。
次のエラーが発生した場合:
*ERROR* - obssocookie: environment variable OBACCESS_INSTALL_DIR not set
これは、第6章「Oracle Access Manager (OAM)の構成」に記載の手順に従っていなかったことを示しています。
ruei-check.sh
スクリプトにより、次のエラーが報告されます。
Checking if the PHP timezone has been set correctly: [FAIL] PHP and OS timezones do not match (os: winter +0000, summer +0100. php: winter +0100, summer +0200)
これは、レポータ・システム上の/etc/ruei.conf
ファイルの最後でTZ環境変数を次のように設定することにより簡単に修正できます。
export TZ=Europe/Lisbon