ここでは、本製品を使用しているシステムで問題が発生した場合、当社技術員が発生した問題の原因を切り分けるために必要な調査資料の採取方法について説明します。
本製品には、以下の調査資料があります。
Interstage Big Data Parallel Processing Server のログ
「6.1.2.1 Interstage Big Data Parallel Processing Server のログ」を参照してください。
調査資料採取ツール
「6.1.2.2 調査資料採取ツール」を参照してください。
さらに、Interstage Big Data Parallel Processing Server のログに出力されているメッセージ、またはシステムログ(“/var/log/messages”)に出力されているメッセージのうち、「B.3.2 その他のメッセージ」に関連するトラブルの調査資料については、本製品が組み込んでいる各機能ごとに調査資料を採取する必要があります。
各機能ごとの資料採取方法については、「6.1.2.3 各機能ごとの調査資料」を参照してください。
ここでは、Interstage Big Data Parallel Processing Server のログについて説明します。
Interstage Big Data Parallel Processing Server のログは、処理ごとに出力されます。
処理ごとのログは次の表のとおりです。
なお、Apache Hadoop 自体のログについては、Apache Hadoop が提供する情報を参照してください。
ログの種類 | ログファイルおよび格納場所 |
---|---|
インストール/アンインストールのログ |
|
セットアップ/アンセットアップのログ |
|
Interstage Big Data Parallel Processing Server 起動、停止処理のログ |
|
スレーブサーバの追加・削除処理のログ |
|
ここでは、Interstage Big Data Parallel Processing Server の調査資料採取ツールについて説明します。
次の表に示すツールを実行し、出力結果を調査資料として採取してください。
調査資料採取ツールの種類 | 調査資料採取ツールおよび格納場所 |
---|---|
導入構成の表示ツール |
|
導入状態の表示ツール |
|
本製品が組み込んでいる各機能ごとの調査資料については、各機能ごとに調査資料を採取する必要があります。
HA クラスタのセットアップや切り替えでトラブルが発生した際の調査資料の採取方法について説明します。
詳細は、「PRIMECLUSTER 活用ガイド<トラブルシューティング編>」を参照してください。
調査資料の採取方法
HA クラスタシステムに障害が発生した場合は、調査に必要な以下の情報を、マスタサーバ(プライマリ)およびマスタサーバ(セカンダリ)から収集します。
HA クラスタの調査情報
fjsnap を使用して、エラー調査に必要な情報を収集します。
「fjsnap コマンドの実行」を参照してください。
システムの調査情報を収集します。
クラッシュダンプ
障害が発生したサーバでクラッシュダンプの採取が可能な場合、サーバの再起動を行う前に手動でクラッシュダンプを採取してください。
OS に依存する障害の場合、クラッシュダンプが有用となります。
クラスタアプリケーションの切替えが完了した後、リソース故障が発生したノードでクラッシュダンプを採取します。
クラッシュダンプの詳細については、「クラッシュダンプ」を参照してください。
障害が再現可能な場合には、障害再現手順マニュアル
参考
障害情報を当社技術員に報告する際は、エラー調査に必要な情報を正確に収集する必要があります。収集した情報は、問題の確認および障害再現の実行のために使用されます。よって、情報が正確でないと、問題の再現および診断に時間がかかってしまうか、それらが不可能となる場合があります。
調査用資料は、マスタサーバ(プライマリ)およびマスタサーバ(セカンダリ)から速やかに収集してください。特に、fjsnap が収集する情報は、障害の発生後に時間が長く経過すると、必要な情報が失われてしまうことがあるので注意してください。
マスタサーバ(プライマリ)およびマスタサーバ(セカンダリ)に、root 権限でログインします。
各サーバで“fjsnap コマンド”を実行します。
# /usr/sbin/fjsnap -a output <Enter>
output には、“fjsnap コマンド”を使用して収集したエラー情報の出力先となる出力ファイル名を指定します。
参照
“fjsnap コマンド”の詳細については、FJSVsnap パッケージに含まれている README ファイルを参照してください。
参考
エラーメッセージが出力された場合などの通常運用時のトラブルは、トラブル発生時に即座に“fjsnap コマンド”を実行してください。
システムハング等のため“fjsnap コマンド”が実行できない場合は、クラッシュダンプを採取してください。その後、シングルユーザモードで起動し、“fjsnap コマンド”を実行してください。クラッシュダンプの採取については、「クラッシュダンプ」 を参照してください。
トラブル発生後に、ノードが自動的に再起動してしまった(シングルユーザモードで起動できなかった)場合や、誤ってマルチユーザモードで起動してしまった場合にも、“fjsnap コマンド”を実行してください。
“fjsnap コマンド”がエラーになる、または“fjsnap コマンド”が復帰しない等により調査情報が採取できない場合は、クラッシュダンプを採取してください。
マスタサーバ(プライマリ)およびマスタサーバ(セカンダリ)に、root 権限でログインします。
各サーバで“pclsnap コマンド”を実行します。
# /opt/FJSVpclsnap/bin/pclsnap -a output または -h output <Enter>
-a はすべての詳細情報を収集するため、データが大きくなります。-h を指定すると、クラスタ制御情報のみが収集されます。
output には、pclsnap コマンドを使用して収集したエラー情報の出力先となる出力媒体の特殊なファイル名または出力ファイル名 (/dev/st0 など) を指定します。
ディレクトリを含む出力ファイル名にカレントディレクトリからの相対パスを指定する場合、パスは "./" から始めてください。
参照
“pclsnap コマンド”の詳細については、FJSVpclsnap パッケージに含まれている README ファイルを参照してください。
参考
エラーメッセージが出力された場合などの通常運用時のトラブルは、トラブル発生時に即座に“pclsnap コマンド”を実行してください。
システムハング等のため“pclsnap コマンド”が実行できない場合は、クラッシュダンプを採取してください。その後、シングルユーザモードで起動し、pclsnap コマンドを実行してください。クラッシュダンプの採取については、「クラッシュダンプ」 を参照してください。
トラブル発生後に、ノードが自動的に再起動してしまった(シングルユーザモードで起動できなかった)場合や、誤ってマルチユーザモードで起動してしまった場合にも、“pclsnap コマンド”を実行してください。
“pclsnap コマンド”がエラーになる、または“pclsnap コマンド”が復帰しない等により調査情報が採取できない場合は、クラッシュダンプを採取してください。
参考
“pclsnap コマンド”の実行に必要なディレクトリの空き容量の目安を、以下の表に示します。
ディレクトリの種類 | デフォルトディレクトリ | 空き容量(目安) (MB) |
---|---|---|
出力ディレクトリ | コマンド実行時のカレントディレクトリ | 300 |
一時ディレクト | /tmp | 500 |
注意
システム環境によっては、上記目安値(300MB, 500MB)では空き容量不足となる場合があります。
ディレクトリの空き容量不足を原因として情報採取が正常に行われなかった場合、“pclsnap コマンド”は終了時にエラーメッセージまたは警告メッセージを出力します。この場合、以下に示す対処方法に従って、再度コマンドを実行してください。
“pclsnap コマンド”を実行して、出力ファイルの生成に失敗した場合、次のエラーメッセージが出力されます。
ERROR: failed to generate the output file "xxx". DIAG: ...
出力ディレクトリを空き容量の大きなディレクトリに変更して、再度コマンドを実行してください。
出力ディレクトリを /var/crash にする場合
# /opt/FJSVpclsnap/bin/pclsnap -a /var/crash/output <Enter>
“pclsnap コマンド”を実行すると、次の警告メッセージが出力されることがあります。
WARNING: The output file "xxx" may not contain some data files. DIAG: ...
この警告メッセージが出力された場合、pclsnap コマンドの出力ファイルは生成されますが、一部の採取対象情報が出力ファイルに含まれていない可能性があります。
一時ディレクトリを空き容量の大きなディレクトリに変更して、再度コマンドを実行してください。
一時ディレクトリを /var/crash に変更する場合
# /opt/FJSVpclsnap/bin/pclsnap -a -T/var/crash output <Enter>
一時ディレクトリを変更しても同様の警告メッセージが出力される場合、次の原因が考えられます。
(1) システム状態に起因して、特定の情報採取コマンドがタイムアウトする
(2) 採取対象ファイルが、一時ディレクトリの空き領域と比較して大きい
(1) の場合は、“pclsnap コマンド”の出力ファイルに含まれる pclsnap.elog ファイルにタイムアウト発生のログが記録されています。“pclsnap コマンド”の出力ファイルとともに、可能であればクラッシュダンプを採取してください。
(2) の場合は、次の (a) (b) などが一時ディレクトリの空き容量よりも大きくなっていないか、確認してください。
ログファイルのサイズ
・ /var/log/messages
・ /var/opt/SMAW*/log/ 配下のログファイル (SMAWsf/log/rcsd.log など)
コアファイルの合計サイズ
・ GFS のコアファイル:/var/opt/FJSVsfcfs/cores/*
・ GDS のコアファイル:/var/opt/FJSVsdx/*core/*
これらが一時ディレクトリの空き容量よりも大きい場合には、該当ファイルを出力ディレクトリおよび一時ディレクトリとは別のパーティションに移動して、再度“pclsnap コマンド”を実行してください。なお、移動したファイルは削除せずに保存しておいてください。
Linux Kernel Crash Dump(LKCD)、Netdump、あるいは diskdump がインストールされた環境では、調査資料としてクラッシュダンプを採取することができます。
カーネルで Oops が発生した場合
カーネルでパニックが発生した場合
システム管理者がコンソールで<Alt>+<SysRq>+<C>キーを押した場合
本体の NMI ボタンを押した場合
クラッシュダンプの採取方法は以下のとおりです。
システムパニック時のクラッシュダンプ採取方法
クラッシュダンプの保存ディレクトリ配下に、切替え発生時刻以降のクラッシュダンプが存在するか否かを確認してください。切替え発生時刻以降のクラッシュダンプが存在する場合、クラッシュダンプを収集してください。切替え発生時刻以降のクラッシュダンプが存在しない場合、可能な限り手動でクラッシュダンプを採取してください。
手動によるクラッシュダンプの採取方法
以下のいずれかの方法でクラッシュダンプを採取し、クラッシュダンプの保存ディレクトリ配下にあるクラッシュダンプを収集してください。
・本体装置の NMI ボタンを押下する
・コンソールで<Alt>+<SysRq>+<C>キーを押下する
クラッシュダンプは異常が発生したノード(LKCD、diskdumpの場合)、あるいは Netdump サーバ上 (Netdump の場合) にファイルとして保存されます。
保存先ディレクトリは/var/crash です。
スレーブサーバの追加・削除時のクローニングイメージの作成、クローニングでトラブルが発生した際の調査資料の採取方法について説明します。
詳細は、「ServerView Resource Orchestrator Virtual Edition V3.0.0 運用ガイド」-「第15章 トラブルシューティング」を参照してください。
調査資料の種類
本製品を使用しているシステムで問題が発生した場合、当社技術員が調査するための調査資料を採取してください。
調査資料は2種類存在し、以下に記載する用途に応じて、資料を採取してください。
初期調査資料の採取
発生した問題の原因について、初期切分けを行うために必要な資料を採取し、当社技術員に連絡してください。
採取する資料は、サイズが小さく、電子メールなどで簡単に送付できるサイズになります。
詳細は、「初期調査資料の採取」を参照してください。
詳細調査資料の採取
初期調査資料だけで原因を特定できる場合もありますが、発生した問題の内容に応じて、さらに多くの調査資料が必要になる場合があります。
このため、初期調査資料だけで原因を特定できなかった場合に備え、初期調査資料を採取したあと、原因を特定するための詳細な調査で必要になる資料も採取します。
詳細調査資料は、発生した問題の原因を特定するために必要な多数の資料を採取するため、発生した問題の切分け用として採取する初期調査資料よりもサイズが大きくなります。
当社技術員から依頼があった場合、採取した詳細調査資料を送付してください。
詳細は、「詳細調査資料の採取」を参照してください。
注意
問題が発生した場合、すみやかに調査資料を採取してください。時間の経過と共に、調査に必要な情報が失われてしまう可能性があります。
初期調査資料の採取
ここでは、発生した問題の原因を切り分けるために必要な調査資料の採取方法について説明します。
初期調査資料は、以下の方法で採取できます。
採取方法の特徴を踏まえ、問題が発生した環境やシステムの状態に応じて、適切な方法で資料を採取してください。
マスタサーバから資料を採取する方法
マスタサーバ上で調査資料の採取コマンド(rcxadm mgrctl snap -all)を実行する方法です。
ネットワークを利用して各管理対象サーバの調査資料を一括採取できるため、各管理対象サーバ上でコマンドを実行するよりも簡単に資料を採取できます。
「管理サーバから資料を採取する方法(rcxadm mgrctl snap -all)」を参照し、資料を採取してください。
rcxadm mgrctl snap -allコマンドを実行するためには、約65Mバイトに加え、サーバの登録台数 * 約30Mバイトの空き容量が必要です。
各サーバ上で資料を採取する方法
各サーバ上で調査資料の採取コマンド(rcxadm mgrctl snap、rcxadm agtctl snap)を実行する方法です。
「各サーバ上で資料を採取する方法(rcxadm mgrctl snap、rcxadm agtctl snap)」を参照し、資料を採取してください。
rcxadm mgrctl snapコマンドを実行するためには、約65Mバイトの空き容量が必要です。
rcxadm agtctl snapコマンドを実行するためには、約30Mバイトの空き容量が必要です。
管理サーバ上で調査資料の採取コマンド(rcxadm mgrctl snap -all)を実行することで、各管理対象サーバの調査資料を一括して採取できます。
調査資料の採取コマンド(rcxadm mgrctl snap -all)を実行して資料を採取する方法を以下に示します。
以下の手順で、管理サーバ上の資料を採取します。
OSの管理者権限で管理サーバにログインします。
rcxadm mgrctl snap -allコマンドを実行します。
# /opt/FJSVrcvmr/bin/rcxadm mgrctl snap [-dir directory] -all <Enter>
採取した調査資料を当社技術員に送付します。
注意
管理サーバから資料を採取する場合、管理サーバ上でマネージャーが動作している必要があります。マネージャーが動作できない場合、各サーバ上で資料を採取してください。
管理サーバから資料を採取する方法では、以下の場合、管理対象サーバの調査資料は採取されません。
通信経路が確立できない場合
停止している管理対象サーバがある場合
どちらの場合も、ほかの管理対象サーバに対する調査資料の採取処理は継続されます。
実行結果はコマンドの実行ログで確認してください。
詳細は、「ServerView Resource Orchestrator Virtual Edition V3.0.0 コマンドリファレンス」の「5.7 rcxadm mgrctl」を参照してください。
採取に失敗した管理対象サーバについては、管理サーバ上でrcxadm mgrctl snap -allコマンドを再実行するか、失敗した管理対象サーバ上でrcxadm agtctl snapコマンドを実行して資料を採取してください。
管理サーバから一括で管理対象サーバの調査資料を採取できるrcxadm mgrctl snap -allコマンドとは別に、実行したサーバの情報だけを採取できるrcxadm mgrctl snapコマンドとrcxadm agtctl snapコマンドがあります。
調査資料の採取コマンド(rcxadm mgrctl snapまたはrcxadm agtctl snap)を実行して資料を採取する方法を以下に示します。
以下の手順で、サーバ上の資料を採取します。
OSの管理者権限でサーバにログインします。
rcxadm mgrctl snapまたはrcxadm agtctl snapコマンドを実行します。
資料を採取するサーバに応じて実行するコマンドが異なるため注意してください。
【マスタサーバの場合】
# /opt/FJSVrcvmr/bin/rcxadm mgrctl snap [-dir directory] <Enter>
【スレーブサーバの場合】
# /opt/FJSVrcxat/bin/rcxadm agtctl snap [-dir directory] <Enter>
採取した調査資料を当社技術員に送付します。
詳細は、「ServerView Resource Orchestrator Virtual Edition V3.0.0 コマンドリファレンス」の「5.1 rcxadm agtctl」または「5.7 rcxadm mgrctl」を参照してください。
詳細調査資料の採取
ここでは、問題の原因を特定するために必要な詳細調査資料の採取方法について説明します。
初期調査資料だけで問題の原因を特定できなかった場合、さらに詳細な調査資料が必要です。
問題の原因を特定するための調査資料は、各サーバ上で調査資料の採取コマンド(rcxadm mgrctl snap -full、rcxadm agtctl snap -full)を実行して資料を採取します。
本機能を実行するためには、約80Mバイトの空き容量が必要です。
資料を採取するサーバ上で、以下の手順で資料を採取します。
OSの管理者権限でサーバにログインします。
rcxadm mgrctl snap -fullまたはrcxadm agtctl snap -fullコマンドを実行します。
資料を採取するサーバに応じて実行するコマンドが異なるため注意してください。
【マスタサーバの場合】
# /opt/FJSVrcvmr/bin/rcxadm mgrctl snap -full [-dir directory] <Enter>
【スレーブサーバの場合】
# /opt/FJSVrcxat/bin/rcxadm agtctl snap -full [-dir directory] <Enter>
採取した調査資料を当社技術員に送付します。
詳細は、「ServerView Resource Orchestrator Virtual Edition V3.0.0 コマンドリファレンス」の「5.1 rcxadm agtctl」または「5.7 rcxadm mgrctl」を参照してください。
DFS のセットアップ、共用ディスクでトラブルが発生した際の調査資料の採取方法について説明します。
詳細は、「Primesoft Distributed File System for Hadoop V1.0 ユーザーズガイド」の「4.6.2 DFSの調査資料採取」を参照してください。
DFSの調査資料採取
出力されたメッセージの対処として、当社技術員への調査を依頼する場合は、root 権限でログインして、以下の資料を採取してください。
資料を採取する際は、できるだけ事象が発生している状態で採取してください。
事象が終息後やシステム再起動後に採取された資料では、システム状況が変化して調査できない場合があります。
資料採取ツール(pdfssnap, fjsnap)の出力結果
クラッシュダンプ
“pdfsck コマンド”の実行結果
デーモンのコアイメージの採取
なお、調査資料を至急送付する必要がある場合は、初期調査用の資料として以下を採取してください。
資料採取ツール(pdfssnap)の出力結果
/var/log/messages*
初期調査用の資料を採取したあとで、必ずほかの資料も採取してください。
“pdfssnap.sh”および“fjsnap コマンド”を使用して調査資料を採取してください。
可能な限り DFS を共用する、すべてのサーバで採取してください。
# /etc/opt/FJSVpdfs/bin/pdfssnap.sh <Enter>
注意
“pdfssnap.sh”では、コマンドを実行したディレクトリ配下に調査資料が採取されます。そのため、コマンドを実行するファイルシステムに100MB 程度の空き領域が必要となります。
# /opt/FJSVsnap/bin/fjsnap -a 任意のファイル名 <Enter>
サーバがパニックした場合など、トラブル調査資料としてクラッシュダンプファイルも採取してください。
通常は、パニック後のサーバ起動時に "/var/crash/パニックした時刻" 配下に保存されています。パニックが発生したすべてのサーバで採取してください。
DFS で不整合が発生して、復旧が必要な場合に採取してください。
# pdfsck -N -o nolog 代表パーティションのブロック特殊ファイル <Enter>
DFS のエラーメッセージの対処で、各デーモンにおけるコアイメージの採取が必要となる場合があります。
コアイメージの採取は、すべての DFS 管理サーバで行ってください。
以下に pdfsfrmd デーモンのコアイメージの採取を例として手順を示します。
プロセス ID の特定
“ps コマンド”により、プロセス ID を特定します。pdfsfrmd デーモン以外が対象の場合は、“grep コマンド”の引数を変えてください。
# /bin/ps -e | /bin/grep pdfsfrmd <Enter> 5639 ? 00:00:25 pdfsfrmd
出力の先頭が pdfsfrmd デーモンのプロセス ID です。pdfsfrmd デーモンが動作していない場合は、出力されません。動作していない場合は、ほかのサーバで採取してください。
参考
MDS のコアイメージを採取する際は、“grep コマンド”の引数に pdfsmg を指定してください。
参照
“ps コマンド”および“grep コマンド”の詳細は、オンラインマニュアルページを参照してください。
コアイメージの取得
“gcore コマンド”により、pdfsfrmd のコアイメージをファイル /var/tmp/pdfsfrmd_node1.5639 へ採取します。その後、“tar コマンド”でファイルを圧縮します。
# /usr/bin/gcore -o /var/tmp/pdfsfrmd_node1 5639 <Enter> gcore: /var/tmp/pdfsfrmd_node1.5639 dumped # /bin/tar czvf /var/tmp/pdfsfrmd_node1.5639.tar.gz /var/tmp/pdfsfrmd_node1.5639 <Enter> # /bin/ls -l /var/tmp/pdfsfrmd_node1.5639.tar.gz <Enter> -rw-rw-r-- 1 root other 1075577 6月 12日 16:30 /var/tmp/ pdfsfrmd_node1.5639.tar.gz
参照
“tar コマンド”の詳細は、オンラインマニュアルページを参照してください。
“/opt/FJSVbdpp/products/HADOOP/bin/HADOOP-collect.sh”を実行し、カレントディレクトリに出力される “collectinfo.tar.gz”を採取してください。
HADOOP-collect.sh --servers servername[,servername]
カンマで区切って、マスタサーバ(プライマリ)、マスタサーバ(セカンダリ)、スレーブサーバ、および開発実行環境サーバの各ホスト名を指定します。空白は含めないでください。
OS の管理者
マスタサーバ
例
# /opt/FJSVbdpp/products/HADOOP/bin/HADOOP-collect.sh --servers=master1,master2,slave1,slave2,slave3,slave4,slave5,develop <Enter>
注意
情報収集元の root ユーザが収集先のサーバにパスワードなしで ssh 接続できるよう設定されていない場合、実行中にパスワードを要求されます。
操作手間を考慮して、パスワード入力を回避したい場合には、マスタサーバの root ユーザの ssh の公開鍵をスレーブサーバおよび開発実行環境サーバに配置し、ssh のパスワードなしの設定を行えます。詳細は、“ssh-keygen コマンド”のヘルプを参照してください。