第30章 Xen のトラブルシューティング
この章では、Xen に於けるトラブルシューティング問題でユーザーを支援するための 基本的な概念を扱います。この章で扱うトラブルシューティングのトピックには以下が 含まれます:
- Linux 及び仮想化のためのトラブルシューティングツール
- 問題判別の為のトラブルシューティング技術
- ログファイルの場所とログ内の情報の説明
この章では、読者に対して仮想化技術の問題場所を判別するための基礎を提供します。 トラブルシューティングは本で学習することが困難な実践と経験を要します。ユーザーは Red Hat Enterprise Linux 上で仮想化の実験とテストをして、トラブルシューティングの 能力を開発することが推奨されます。
このドキュメント内に解答を求めることが出来ない場合は、仮想化コミュニティからの オンライン解決案があるかも知れません。Linux 仮想化のウェブサイトの一覧は 「オンラインリソース」 でご覧下さい。
30.1. Xen でのデバッギングとトラブルシューティング
このセクションはシステム管理アプリケーション、ネットワーキングユーティリティ、 及びデバグツールなどを要約しています。これらの標準のシステム管理者ツールとログを 活用してトラブルシューティングの手助けにできます:
トラブルシューティングの為の役に立つコマンドとアプリケーション
xentop
xentop
はホストシステムとゲストドメインに関するリアルタイムの 情報を表示します。xm
dmesg
とlog
の使用
vmstat
iostat
lsof
iostat
コマンド、mpstat
コマンド、及び sar
コマンドは全て sysstat
パッケージで用意されています。
これらの高度なデバグツールとログを活用してトラブルシュートの手助けにできます:
XenOprofile
systemtap
crash
sysrq
sysrq t
sysrq w
これらのネットワーキングツールを活用して仮想化ネットワーキング問題での トラブルシュートの手助けにできます:
ifconfig
tcpdump
tcpdump
は ネットワークのパケットを検査します。tcpdump
はネットワーク異常とネットワーク認証に関する 問題を見つけるのに役に立ちます。tcpdump
のグラフィカルバージョンがwireshark
と言う名前で存在します。brctl
brctl
は Virtualization linux カーネル内のイーサネットブリッジ構成を検査して設定するネットワーキングツールです。これらのサンプルコマンドを実行するには root アクセスが必要になります:# brctl show bridge-name bridge-id STP enabled interfaces ----------------------------------------------------------------------------- xenbr0 8000.feffffff no vif13.0 xenbr1 8000.ffffefff yes pddummy0 xenbr2 8000.ffffffef no vif0.0 # brctl showmacs xenbr0 port-no mac-addr local? aging timer 1 fe:ff:ff:ff:ff: yes 0.00 2 fe:ff:ff:fe:ff: yes 0.00 # brctl showstp xenbr0 xenbr0 bridge-id 8000.fefffffffff designated-root 8000.fefffffffff root-port 0 path-cost 0 max-age 20.00 bridge-max-age 20.00 hello-time 2.00 bridge-hello-time 2.00 forward-delay 0.00 bridge-forward-delay 0.00 aging-time 300.01 hello-timer 1.43 tcn-timer 0.00 topology-change-timer 0.00 gc-timer 0.02
以下の一覧では、Red Hat Enterprise Linux 5 上の仮想化のトラブルシューティングの為の その他の役立つコマンドを表示しています。ここで言及してある全てのユーティリティは Red Hat Enterprise Linux 5 の
Server
レポジトリ内で見ることが できます。
- strace は他のプロセスで受信されて使用されたシステムコールと イベントを追跡するコマンドです。
- vncviewer: 使用中のサーバー、又は仮想マシン上で 稼働している VNC サーバーに接続します。
yum install vnc
コマンドを使用すると vncviwer がインストールできます。 - vncserver: 使用するサーバー上でリモートデスクトップを 開始します。そしてユーザーがリモートセッションを通じて virt-manager などのグラフィカル ユーザーインターフェイスを実行できるようにします。vncserver の インストールには、
yum install vnc-server
コマンドを使用します。