5.2. Performance Co-Pilot による XFS ファイルパフォーマンスの分析

ここでは、PCP XFS パフォーマンスメトリックとその使用方法について説明します。Performance Metric Collector Daemon (PMCD) が起動すると、インストールされた Performance Metric Domain Agent (PMDA) からパフォーマンスデータの収集を開始します。PMDA は、システムで個別にロードまたはアンロードでき、同じホスト上の PMCD によって制御されます。PCP の XFS ファイルシステムのパフォーマンメトリックデータを収集するには、デフォルトの PCP インストールの一部である XFS PMDA が使用されます。

5.2.1. XFS PMDA をインストールして PCP で XFS データを収集

XFS PMDA は pcp パッケージの一部として提供され、インストールではデフォルトで有効になっています。PCP をインストールするには以下を行います。
# yum install pcp
pcp および pcp-gui パッケージのインストール後にホストマシンで PMDA サービスを有効化および起動するには、以下のコマンドを実行します。
# systemctl enable pmcd.service
# systemctl start pmcd.service
PMCD プロセスがホストで実行され、XFS PMDA が設定で有効になっていることを検証するため、PCP 環境にクエリーを行うには、以下を入力します。
# pcp

Performance Co-Pilot configuration on workstation:

platform: Linux workstation 3.10.0-123.20.1.el7.x86_64 #1 SMP Thu Jan
29 18:05:33 UTC 2015 x86_64
hardware: 2 cpus, 2 disks, 1 node, 2048MB RAM
timezone: BST-1
services pmcd
pmcd: Version 3.10.6-1, 7 agents
pmda: root pmcd proc xfs linux mmv jbd2

XFS PMDA の手動インストール

PCP 設定の読み出しに XFS PMDA が記載されていない場合は、PMDA エージェントを手動インストールします。PMDA インストールスクリプトによって、PMDA ロールの指定を求められます (collector、monitor、both)。
  • collector ロールを指定すると、現在のシステムでパフォーマンスメトリックを収集できます。
  • monitor ロールを指定すると、システムでローカルシステムまたはリモートシステム、あるいはローカルおよびリモートシステムの両方を監視できます。
デフォルトのオプションは、コレクターとモニターの両方である both で、XFS PMDA はほとんどの場合で適切に操作することができます。
XFS PMDA を手動インストールするには、xfs ディレクトリーに移動します。
# cd /var/lib/pcp/pmdas/xfs/
xfs ディレクトリーで以下を実行します。
xfs]# ./Install

You will need to choose an appropriate configuration for install of
the “xfs” Performance Metrics Domain Agent (PMDA).

  collector     collect performance statistics on this system
  monitor       allow this system to monitor local and/or remote systems
  both          collector and monitor configuration for this system

Please enter c(ollector) or m(onitor) or (both) [b]
Updating the Performance Metrics Name Space (PMNS) ...
Terminate PMDA if already installed ...
Updating the PMCD control file, and notifying PMCD ...
Waiting for pmcd to terminate ...
Starting pmcd ...
Check xfs metrics have appeared ... 149 metrics and 149 values

5.2.2. XFS パフォーマンスメトリックの設定および検証

pminfo でのメトリックの検証

PCP をインストールし、XFS PMDA を有効にしたら、「XFS PMDA をインストールして PCP で XFS データを収集」 の手順を使用できます。PCP と XFS のパフォーマンスメトリックを確認する最も簡単な方法は、利用可能なパフォーマンスメトリックに関する情報を表示する pminfo ツールを使用することです。コマンドは、XFS PMDA によって提供される利用可能なメトリックをすべて表示します。
XFS PMDA によって提供される利用可能なメトリックスをすべて表示するには、以下を実行します。
# pminfo xfs
以下のオプションを使用して、選択したメトリックの情報を表示します。
-t metric
選択したメトリックを説明するヘルプ情報を 1 行で表示します。
-T metric
選択したメトリックを説明するより詳細なヘルプテキストを表示します。
-f metric
メトリックスに対応するパフォーマンスの現在の読み取り値を表示します。
メトリックのグループまたは個別のメトリックに -t-T、および -f オプションを使用できます。ほとんどのメトリックデータは、プロービング時にシステム上のマウントされた各 XFS ファイルシステムに提供されます。
ドット (.) を区切り文字として使用し、各グループがルート XFS メトリックからの新しいリーフノードとなるようにする他の XFS メトリックのグループ があります。リーフノードセマンティック (ドット) はすべての PCP メトリックに適用されます。各グループで利用できるメトリックの種類の概要は、表A.3「XFS の PCP メトリックグループ」 を参照してください。
また、XFS のドキュメントには XFS ファイルシステムの監視に関するセクション「Chapter 13. XFS Monitoring」が含まれています。

例5.1 pminfo ツールを使用した XFS 読み書きメトリックの検証

xfs.write_bytes メトリックを説明するヘルプ情報を 1 行で表示するには、以下を実行します。
# pminfo -t xfs.write_bytes

xfs.write_bytes [number of bytes written in XFS file system write operations]
xfs.write_bytes メトリックを説明するより詳細なヘルプテキストを表示するには、以下を実行します。
# pminfo -T xfs.read_bytes

xfs.read_bytes
Help:
This is the number of bytes read via read(2) system calls to files in
XFS file systems. It can be used in conjunction with the read_calls
count to calculate the average size of the read operations to file in
XFS file systems.
xfs.read_bytes メトリックスに対応するパフォーマンスの現在の読み取り値を取得します。
# pminfo -f xfs.read_bytes

xfs.read_bytes
    value 4891346238

pmstore でのメトリックの設定

PCP を使用すると、特にメトリックが制御変数として動作する場合 (例: xfs.control.reset メトリック) に特定のメトリックの値を編集できます。メトリックの値を編集するには、pmstore ツールを使用します。

例5.2 pmstore を使用した xfs.control.reset メトリックのリセット

この例は、xfs.control.reset メトリックで pmstore を使用して、XFS PMDA の記録されたカウンター値をゼロにリセットする方法を示しています。
$ pminfo -f xfs.write

xfs.write
    value 325262
# pmstore xfs.control.reset 1

xfs.control.reset old value=0 new value=1
$ pminfo -f xfs.write

xfs.write
    value 0

5.2.3. ファイルシステムごとに利用できる XFS メトリックの検証

Red Hat Enterprise Linux 7.3 より、PCP は XFS PMDA を有効にし、マウントされた各 XFS ファイルシステムに対して特定の XFS メトリックの報告を可能にします。これにより、マウントされたファイルシステムの問題を特定し、パフォーマンスを評価することが簡単になります。各グループのファイルシステムごとに使用できるメトリックの種類の概要については、表A.4「デバイスごとの XFS の PCP メトリックグループ」 を参照してください。

例5.3 pminfo でのデバイスごとの XFS メトリックの取得

pminfo コマンドは、マウントされた各 XFS ファイルシステムのインスタンス値を提供するデバイスごとの XFS メトリックを提供します。
# pminfo -f -t xfs.perdev.read xfs.perdev.write

xfs.perdev.read [number of XFS file system read operations]
inst [0 or "loop1"] value 0
inst [0 or "loop2"] value 0

xfs.perdev.write [number of XFS file system write operations]
inst [0 or "loop1"] value 86
inst [0 or "loop2"] value 0

5.2.4. pmlogger でのパフォーマンスデータのロギング

PCP を使用すると、後で再生できるパフォーマンスメトリック値をログに記録することができ、回顧的なパフォーマンス分析に使用できます。pmlogger ツールを使用してシステム上で選択したメトリックのアーカイブされたログを作成します。
pmlogger を使用すると、システム上で記録するメトリックと記録する頻度を指定することができます。デフォルトの pmlogger 設定ファイルは /var/lib/pcp/config/pmlogger/config.default です。設定ファイルはプライマリーロギングインスタンスによってログに記録されるメトリックを指定します。
pmlogger でローカルマシンのメトリック値をログに記録するには、プライマリーロギングインスタンスを開始します。
# systemctl start pmlogger.service
# systemctl enable pmlogger.service
pmlogger が有効でデフォルトの設定ファイルが設定されている場合、pmlogger の行が PCP 設定に含まれます。
# pcp

Performance Co-Pilot configuration on workstation:

platform: Linux workstation 3.10.0-123.20.1.el7.x86_64 #1 SMP Thu Jan
[...]
pmlogger: primary logger:/var/log/pcp/pmlogger/workstation/20160820.10.15

pmlogconf での pmlogger 設定ファイルの編集

pmlogger サービスが実行されているとき、PCP はホスト上でメトリックのデフォルトセットをログに記録します。pmlogconf ユーティリティーを使用してデフォルト設定をチェックし、必要の応じて XFS ロギンググループを有効にすることができます。有効にする重要な XFS グループには、XFS informationXFS data、および log I/O traffic グループが含まれます。
pmlogconf のプロンプトの従って、関連するパフォーマンスメトリックのグループを有効または無効にし、有効な各グループのログ間隔を制御します。グループを選択するには、プロンプトの応答として y (yes) または n (no) を押します。pmlogconf で汎用 PCP アーカイブのロガー設定を作成または編集するには、以下を入力します。
# pmlogconf -r /var/lib/pcp/config/pmlogger/config.default

pmlogger 設定ファイルの手動編集

pmlogger 設定ファイルを手動編集し、一定の間隔の特定のメトリックを追加すると、必要に合ったロギング設定を作成することができます。

例5.4 pmlogger 設定ファイルと XFS メトリック

以下の例は、特定の XFS メトリックが追加された pmlogger config.default ファイルの抜粋を示しています。
# It is safe to make additions from here on ...
#

log mandatory on every 5 seconds {
    xfs.write
    xfs.write_bytes
    xfs.read
    xfs.read_bytes
}

log mandatory on every 10 seconds {
    xfs.allocs
    xfs.block_map
    xfs.transactions
    xfs.log

}

[access]
disallow * : all;
allow localhost : enquire;

PCP ログアーカイブの再生

メトリックデータの記録後、以下の方法でシステムの PCP ログアーカイブを再生できます。
  • pmdumptextpmrep、または pmlogsummary などの PCP ユーティリティーを使用して、ログをテキストファイルにエクスポートし、スプレッドシートにインポートします。
  • PCP Charts アプリケーションのデータを再生し、システムの現在のデータとともに、グラフを使って回顧的なデータを可視化します。「PCP Charts での視覚追跡」 を参照してください。
pmdumptext ツールを使用してログファイルを表示できます。pmdumptext を使うと、選択した PCP ログアーカイブを解析し、値を ASCII テーブルにエクスポートできます。pmdumptext ツールを使用すると、アーカイブログ全体をダンプすることができ、コマンドラインでメトリックを指定してログから選択したメトリックの値のみをダンプすることもできます。

例5.5 特定の XFS メトリックログ情報の表示

たとえば、アーカイブに収集された xfs.perdev.log メトリックのデータを 5 秒間隔で表示し、すべてのヘッダーを表示する場合は以下を実行します。
$ pmdumptext -t 5seconds -H -a 20170605 xfs.perdev.log.writes

Time local::xfs.perdev.log.writes["/dev/mapper/fedora-home"] local::xfs.perdev.log.writes["/dev/mapper/fedora-root"]
? 0.000 0.000
none count / second count / second
Mon Jun 5 12:28:45 ? ?
Mon Jun 5 12:28:50 0.000 0.000
Mon Jun 5 12:28:55 0.200 0.200
Mon Jun 5 12:29:00 6.800 1.000
詳細は、pcp-doc パッケージから利用できる pmdumptext(1) man ページを参照してください。

5.2.5. PCP Charts での視覚追跡

グラフィカルな PCP Charts アプリケーションを使用するには、pcp-gui パッケージをインストールします。
# yum install pcp-gui
PCP Charts アプリケーションを使用してパフォーマンスメトリック値をグラフにすることができます。PCP Charts アプリケーションを使用すると、複数のチャートを同時に表示することができます。メトリックは 1 つ以上のライブホストから提供され、PCP ログアーカイブからのメトリックデータを履歴データのソースとして使用する代替オプションがあります。PCP Charts をコマンドラインから実行するには、pmchart コマンドを使用します。
PCP Charts の起動後、GUI が表示されます。
The PCP Charts application
PCP Charts アプリケーション
pmtime サーバー設定は下部にあります。start および pause ボタンを使用すると以下を制御できます。
  • PCP がメトリックデータをポーリングする間隔。
  • 履歴データのメトリックの日付および時間。
FileNew Chart に移動し、ローカルマシンとリモートマシンのホスト名またはアドレスを指定して、それらのローカルおよびリモートマシンからメトリックを選択します。その後、リモートホストからパフォーマンスメトリックを選択します。詳細設定オプションには、チャートの軸の値を手動設定する機能や、色を手動選択する機能が含まれます。
PCP Charts で作成されたビューを記録したり、イメージを取得するオプションは複数あります。
  • FileExport をクリックして、現在のビューのイメージを保存します。
  • RecordStart をクリックして記録を開始します。RecordStop をクリックして記録を停止します。記録の停止後、記録されたメトリックは後で閲覧するためにアーカイブ化されます。
PCP Charts インターフェースをカスタマイズすると、以下を含む複数の方法でパフォーマンスメトリックからデータを表示できます。
  • 折れ線グラフ
  • 棒グラフ
  • 使用状況グラフ
PCP Charts では、view と呼ばれるメイン設定ファイルにより、1 つ以上のチャートに関連付けられたメタデータを保存することができます。このメタデータは、使用されるメトリックやチャートの列など、チャートのすべての側面を表します。カスタム view 設定を作成し、FileSave View をクリックして保存して、view 設定を後でロードすることができます。view 設定ファイルとそれらの構文に関する詳細は、pmchart(1) の man ページを参照してください。

例5.6 PCP Charts の view 設定での積み上げチャートグラフ

PCP Charts の view 設定ファイルの例では、XFS ファイルシステム loop1 に対して読み書きされた合計バイト数を表す積み上げチャートグラフを示します。
#kmchart
version 1

chart title "Filesystem Throughput /loop1" style stacking antialiasing off
    plot legend "Read rate"   metric xfs.read_bytes   instance  "loop1"
    plot legend "Write rate"  metric xfs.write_bytes  instance  "loop1"

このページには機械翻訳が使用されている場合があります (詳細はこちら)。