7.7. よくある質問
クラスター化された環境で kdump を使用する場合には、何に注意したら良いですか ?
RHEL 6 および 7 の High Availability アドオンで使用できるように kdump を設定する の記事で、High Availability アドオンを使用しているシステム管理者が利用可能なオプションを説明しています。
起動初期に kdump が失敗します。 どのようにしてブートログをキャプチャーするのですか ?
2 番目のカーネルの起動に問題がある場合は、起動初期のブートログを確認する必要があります。 問題のあるマシンに対するシリアルコンソールを有効にすることで、このログを取得することができます。
RHEL7 でシリアルターミナルを設定する の記事で、起動初期のブートメッセージへアクセスするために必要な設定が説明されています。
デバッグ用に、どのようにして makedumpfile からのメッセージを増やすのですか ?
makedumpfile
が失敗する時には、何が悪いのかを理解するためにログのレベルを増やさなければならない場合があります。これはダンプレベルを設定するのとは異なる操作です。 ログのレベルについては、/etc/kdump.conf
の core_collector
行の内容を編集して、makedumpfile
に対する message_level
オプションを増やします。
デフォルトで makedumpfile
はレベル 1 に設定されており、これは、出力を進捗インジケーターに制限します。このメッセージレベルを 31 に設定すると、すべてのデバッグ情報を有効にできます。メッセージレベル 31 では、進捗インジケーター、共通メッセージ、エラーメッセージ、デバッグメッセージ、およびレポートメッセージの詳細を出力します。
メッセージレベルのオプションの詳細は、makedumpfile (8)
man ページを参照してください。
core_collector 設定の行は、設定時には以下のようになっているはずです。
core_collector makedumpfile -l --message-level 1 -d 31
どのようにして Dracut をデバッグするのですか ?
dracut
が initramfs の構築に失敗することがあります。その場合には、問題を切り分けるために dracut
のログレベルを増やす必要があります。
/etc/kdump.conf
を編集して dracut_args
行を変更し、必要なすべての dracut 引数と共にオプション -L 5
を含めます。
dracut_args
で他のオプションを設定していない場合は、次のような結果になるはずです。
dracut_args -L 5
仮想マシンで利用可能なダンプの手法は何ですか ?
多くの場合、クラッシュやパニックの後にマシンからメモリーダンプを取得するには kdump
の仕組みがあれば十分です。これは、ベアメタルのインストールと同じように設定することができます。
ただし、場合によっては、ハイパーバイザーと直接連携してクラッシュダンプを取得する必要がある場合があります。ハイパーバイザーを使用したクラッシュダンプの取得方法として libvirt
には pvpanic
と virsh dump
という 2 つの仕組みがあります。これらの手法は 仮想化の導入および管理ガイド に記載されています。
pvpanic
の仕組みについては、仮想化の導入および管理ガイドのパニックデバイスの設定 に記載されています。
virsh dump
コマンドについては、仮想化の導入および管理ガイドのドメインのコアのダンプファイルの作成 で説明されています。
Red Hat サポートサービスに大きなサイズのダンプをアップロードする場合はどうしたらいいですか ?
分析のため、Red Hat グローバルサポートサービスにカーネルクラッシュのダンプファイルを送信していただく必要がある場合があります。ただし、ダンプファイルのサイズはフィルターで特定の情報に絞り込んだ場合でも非常に大きくなる可能性があります。新しいサポートケースの起票時に、250 MB を超えるファイルは Red Hat カスタマーポータルからは直接アップロードできないため、Red Hat では大きなサイズのファイルのアップロード用に FTP サーバーを用意しています。
FTP サーバーのアドレスは dropbox.redhat.com
で、ファイルは /incoming/
ディレクトリーにアップロードしてください。ご使用の FTP クライアントを passive モードに設定しておく必要があります。 ご使用のファイアウォールでこのモードを使用できない場合は origin-dropbox.redhat.com
サーバーを active モードでご利用ください。
アップロードするファイルは必ず gzip などで圧縮し、ファイル名にはわかりやすい名前を付けてください。ファイル名にサポートケース番号を使用されることをお薦めします。必要なファイルをすべてアップロードしたらサポートケース担当のエンジニアへ正確なファイル名とその SHA1 または MD5 チェックサムをお知らせください。
詳細な説明については Ret Hat サポートチームにファイル (vmcore、rhev logcollector、sosreport、ヒープダンプ、ログファイルなど) を送付する を参照ください。
クラッシュダンプが完了するまでに、どれくらい時間がかかりますか ?
この情報は、障害復旧計画の目的で、ダンプ完了の所要時間を把握するために、多くの場合に必要となります。ただし、この時間の長さは、ディスクにコピーされるメモリー量と、RAM とストレージ間のインターフェイスの速度に大きく左右されます。
テストがどのようなタイミングで行われても、システムは典型的な負荷をかけた状態で稼働させておく必要があります。そうでないと、除外されるページによって、完全に負荷がかかった実稼働システムにおける kdump の動作で誤った見解が提示される可能性があります。特にこの違いは、大量のメモリーが使用されている状況でより顕著に見られます。
ダンプの所要時間を評価する場合に、ストレージインターフェイスもプランニング時に考慮する必要があります。ネットワーク制約事項が原因で、ローカルに接続された SATA ディスクと比べると、ssh
などを使用した接続ダンプは完了までに長く時間がかかる可能性があります。
インストール時に Kdump をどのように設定するのですか ?
キックスタートまたは対話型の GUI を使用すれば、わずかなオプションを指定するだけでインストール時に kdump を設定することができます。
anaconda インストール GUI を使用した kdump の設定については、インストールガイドの Kdump セクションに詳しい説明が記載されています。
kickstart 構文は以下の通りです。
%addon com_redhat_kdump [--disable,enable] [--reserve-mb=[auto,value]] %end
キックスタートに対するこのアドオンにより、kdump 機能の無効化/有効化や、オプションとして予約メモリーサイズの定義 (自動のデフォルトオプションを明示的に呼び出す、またはメガバイト単位で数値を指定する) が可能になります。 なお、スイッチ全体が省略された場合も、デフォルトオプションが呼び出されます。
キックスタートを使用してシステムのデプロイメントを自動化する方法の詳細は、インストールガイドの キックスタートを使用したインストール を参照してください。
キックスタートアドオン構文の詳細については、インストールガイドの キックスタート構文の参考資料 を参照してください。