Jenkinsプラグイン探訪 - Disk Usage
はじめに
ほとんどディスクを消費しないジョブもあれば、一度のビルドでかなりディスクを消費するジョブもあります。
「ギリギリだけど、なんとかなると思っていたら、ディスクフルになってしまった」、「いつもと違うノードが動いて、ディスクフルになってしまった」などといったことが発生するかもしれません。
そこで、この記事では、このような状況を改善するための一手段としてDisk Usageプラグインを紹介したいと思います。
なお、このプラグインは、簡潔に述べると、
を調査するための機能を提供します。
インストール
Disk Usage Pluginの名称と関連URLは次のとおりです。
- プラグインのインストール/アップデート/無効化を参照して、プラグインをインストールしてください。
- 他のプラグインとの依存関係はありません。
- プラグイン以外にインストールするものもありません。
- インストールすると、Jenkinsの管理ページに「Disk usage」メニューが追加されます。
- ディスク使用量をグラフ表示する必要がない場合は、プラグインのデフォルト設定を変更する必要はありません。
機能概要 (デフォルト状態)
Disk Usageプラグインの機能概要は次のとおりです。
- 360分ごとに全ジョブに対して、最新ビルドが実行されたノードの「workspaceディレクトリ」のディスク使用量を計測します。
- 360分ごとに全ジョブに対して、マスターノードの「buildsディレクトリ」のディスク使用量を計測します。
- Jenkinsの管理権限をもつユーザは、「Disk usage」メニューから「Disk usageの確認画面」を表示します。
- Jenkinsの管理権限をもつユーザは、手動で全ジョブの「workspaceディレクトリ」と「buildsディレクトリ」のディスク使用量の計測を開始することもできます。
- 「Disk usageの確認画面」には、最終計測時点の「workspaceディレクトリ」と「buildsディレクトリ」のディスク使用量が表示されます。
機能詳細と注意事項
Disk Usageプラグインの機能詳細は次のとおりです。
- Jenkinsのシステム設定で、[Disk usage]セクションの[Show disk usage trend graph on the project page]を有効にすると、「各ジョブのページ」にディスク使用量の推移グラフが表示されます。
- その他は「機能概要 (デフォルト状態)」を参照してください。
注意事項は次のとおりです。
- ジョブがビルドされるタイミングと、ディスク使用量が計測されるタイミングは、完全に独立しています。
例えば、ビルド#8の時点で計測された後に、しばらく計測されないままビルドが何回か行われ、次にビルド#11の時点で計測されるということもありえます。 - 「workspaceディレクトリ」のディスク使用量は異なるノードで計測される可能性があります。
例えば、最終計測時点の最新ビルド#11はノードBでビルドされ、前回計測時点の最新ビルド#8はノードAでビルドされた場合、「Disk usageの確認画面」と「各ジョブのページ右上」には、ノードBの「workspaceディレクトリ」のディスク使用量のみが表示されます。また、「各ジョブのページ」に推移グラフを表示した場合、ノードAとノードBで計測された「workspaceディレクトリ」のディスク使用量が、混在して表示されます。 - 「Disk usageの確認画面」には、全ジョブの「workspaceディレクトリ」と「buildsディレクトリ」のディスク総使用量が表示されます。
「buildsディレクトリ」の総使用量はマスターノードで消費されているディスク使用量を表すので意味がありますが、「workspaceディレクトリ」の総使用量は複数のノードでビルドが実行された場合に意味が薄れてしまいます。