第5回 PDツールでシステムの内部情報に迫れ【前編】障害発生時の金科玉条(1/2 ページ)

PDを行う際に心強い味方となってくれるのがさまざまなツール類だ。ツールを利用することで、ログや設定ファイルからだけでは分からないシステムの内部情報についても知ることができる。そこで今回は、過負荷状態となったときOSの内部ではどのような動作が行われているのか、幾つかのツールを使用して探ってみよう。

» 2007年03月22日 10時00分 公開
[秋田英行(日本アイ・ビー・エム),ITmedia]

ツールを使いこなすべし

 OS上でPD*を進めるにあたり、「設定ファイルやログファイルの確認は当然すべきである」ということはすでに述べてきた。いまさら言うまでもないが、設定ファイルは「対象となる機能の動作をパラメータで定義した静的な情報」であり、ログファイルは「OSやソフトウェアが発行するメッセージを記録したもの」である。しかし、システム上で発生し得る現象をこれらの情報だけですべて把握することはとうてい不可能である。そこで、さまざまなツールを適材適所で使いこなし、得られる情報を的確に分析することが必要となる。

PDで利用するツール

 Linuxにおいて、PDで利用可能なツールは通常ディストリビューションのパッケージという形で入手できる。はじめに、どのようなツールがPDに利用できるかを整理してみよう。表1はRed Hat Enterprise LinuxでPDに利用できるツール類である。また、表2は別途インストールなどが必要であるものの有用なツール類である。ここでは主なツールのみ挙げているが、このほかにも通常何げなく使っているツールや機能などで、PDに役立てられるものは多くあるだろう。今回はこれらの中でも使用頻度の高いvmstat、iostat、topをピックアップし、その使用方法やPDにおけるポイントなどを順に述べていきたい。なお、プロファイラ、トレーサ、ダンプを使用したPDはそれぞれ別の回で個別に説明する予定だ。

表1 表1 PDに利用可能なツール(Red Hat Enterprise Linuxのパッケージとして収録されているもの)
表2 表2 PDに利用可能なツール(別途インストールやパッチの適用が必要なもの)

このページもしくは表内で出てきた専門用語

PD

Problem Determinationの略。直訳すれば、「問題を確定する」などになる。問題の切り分けをし、問題部分を特定する、つまり問題判別することをPDと呼ぶ。

mkexec

現在起動中のカーネルから直接新しいカーネルを起動する仕組み。同様の機能にkexecがあるが、mkexecでは先に起動されていたカーネルのメモリ空間を上書きせず、任意のアドレスにダンプ用のミニカーネルをロードできるよう改良されている。

/proc/sys

このディレクトリ以下の仮想ファイルにアクセスすることでにシステムの稼働情報を取得できる。

リングバッファ

カーネルがメッセージを記録するために使用するメモリ領域。

NIC

Network Interface Card。

共有メモリ、セマフォ、メッセージキュー

プロセス間で情報を共有したり、通信し合うための仕組み。

slabキャッシュ

カーネルの内部で頻繁に利用されるオブジェクト用のキャッシュ。

アドレスマップ情報

仮想メモリが物理メモリやスワップデバイスにどのようにマッピングされているかを示す情報。

クラッシュダンプ

カーネルがクラッシュした際に使用していたメモリの内容を出力したもの。


       1|2 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ