第12章 metrics-utility による使用状況レポート
Ansible Automation Platform メトリクスユーティリティーツール (metrics-utility) は、Automation Controller のインスタンスを含むシステムにインストールされるコマンドラインユーティリティーです。
metrics-utility は、インストールおよび設定されると、システムから請求関連のメトリクスを収集し、消費量に基づく請求レポートを作成します。metrics-utility ツールは、管理対象ホストが複数あり、消費量ベースの請求を使用するユーザーに特に適しています。レポートが生成されると、設定ファイルで指定した保存先の場所に保存されます。
metrics-utility は、システムから設定データとレポートデータの 2 種類のデータを収集します。
設定データには次の情報が含まれます。
- Automation Controller とオペレーティングシステムのバージョン情報
- サブスクリプション情報
- ベース URL
レポートデータには次の情報が含まれます。
- ジョブ名と ID
- ホスト名
- インベントリー名
- 組織名
- プロジェクト名
- 成功または失敗に関する情報
- レポート日時
metrics-utility が設定どおりに動作し続けるように、レポートディレクトリーから古いレポートを定期的に消去してください。
12.1. metrics-utility の設定 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Enterprise Linux と OpenShift Container Platform の両方で、Ansible Automation Platform の使用状況データを収集して報告するように metrics-utility を設定します。
12.1.1. Red Hat Enterprise Linux の metrics-utility の設定 リンクのコピーリンクがクリップボードにコピーされました!
前提条件:
- 有効な Ansible Automation Platform サブスクリプション
metrics-utility は Ansible Automation Platform に含まれているため、別途インストールする必要はありません。次の手順では、関連データを収集し、使用状況メトリクスを含む CCSP レポートを生成します。これらのコマンドを cronjob として設定して毎月初めに実行することができます。cron 構文を使用した設定の詳細は、How to schedule jobs using the Linux 'cron' utility を参照してください。
手順
metrics-utilityにすべての関連データを収集させるための正しい変数を設定するために、ユーザーのホームディレクトリー内に次の 2 つのスクリプトを作成します。/home/my-user/cron-gather内:Copy to Clipboard Copied! Toggle word wrap Toggle overflow /home/my-user/cron-report内:Copy to Clipboard Copied! Toggle word wrap Toggle overflow
これらのファイルを実行可能にするために、次のコマンドを実行します。
chmod a+x /home/my-user/cron-gather /home/my-user/cron-reportcron ファイルを開いて編集するために、次のコマンドを実行します。
crontab -e実行スケジュールを設定するために、ファイルの末尾に次のパラメーターを追加し、
metrics-utilityによって情報を収集してレポートを作成する頻度を cron 構文 を使用して指定します。次の例では、gatherコマンドは毎時 00 分に実行されるように設定されています。build_reportコマンドは、毎月 2 日の午前 4 時に実行されるように設定されています。0 */1 * * * /home/my-user/cron-gather0 4 2 * * /home/my-user/cron-report- ファイルを保存してから閉じます。
検証
正しい設定を確認するには、次の検証手順を使用します。
cronジョブのエントリーが正しく保存されたことを確認するには、次のコマンドを実行します。crontab -l
crontab -lCopy to Clipboard Copied! Toggle word wrap Toggle overflow cronログを調べて、cronデーモンがコマンドを実行し、metrics-utilityが出力を生成していることを確認します。cat /var/log/cron
cat /var/log/cronCopy to Clipboard Copied! Toggle word wrap Toggle overflow 参考までに、次の出力例を参照してください。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 生成されたレポートには、
CCSP-<YEAR>-<MONTH>.xlsxというデフォルトの名前が付けられます。レポートはステップ 1a で指定した送信先パスに保存されます。
時間と日付は、実行スケジュールの設定方法に応じて異なる場合があります。
12.1.2. Ansible Automation Platform Operator から OpenShift Container Platform の metrics-utility を設定する リンクのコピーリンクがクリップボードにコピーされました!
metrics-utility は、バージョン 4.12、4.512、および 4.6 以降の OpenShift Container Platform イメージに含まれています。システムに metrics-utility がインストールされていない場合は、OpenShift イメージを最新バージョンに更新してください。
Ansible Automation Platform Operator を使用して OpenShift Container Platform で metrics-utility の実行スケジュールを設定するには、次の手順を実行します。
12.1.2.1. OpenShift UI の YAML ビューで ConfigMap を作成する リンクのコピーリンクがクリップボードにコピーされました!
設定データを含む metrics-utility cronjobs を注入するには、次の手順に従って、OpenShift UI の YAML ビューで ConfigMap を作成します。
前提条件:
- 実行中の OpenShift クラスター
- Operator によって OpenShift Container Platform にインストールされた Ansible Automation Platform
metrics-utility は、設定ファイルで設定したパラメーターに従って実行されます。OpenShift Container Platform では、このユーティリティーを手動で実行することはできません。
手順
- ナビゲーションパネルから、 を選択します。
- をクリックします。
- 次の画面で、YAML view タブを選択します。
YAML フィールドに、次のパラメーターを入力して適切な変数を設定します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - をクリックします。
検証
-
ConfigMap が作成され、
metrics-utilityがインストールされていることを確認するために、ナビゲーションパネルから ConfigMap を選択し、リストで ConfigMap を探します。
12.1.2.2. Automation Controller のデプロイ リンクのコピーリンクがクリップボードにコピーされました!
Automation Controller をデプロイし、metrics-utility によって使用状況情報を収集してレポートを生成する頻度を表す変数を指定するには、次の手順を使用します。
手順
- ナビゲーションパネルから、Installed Operators を選択します。
- Ansible Automation Platform を選択します。
- Operator の詳細で、Automation Controller タブを選択します。
- をクリックします。
YAML view オプションを選択します。YAML に Automation Controller のデフォルトパラメーターが表示されます。
metrics-utilityに関連するパラメーターは次のとおりです。Expand パラメーター 変数 metrics_utility_enabledTrue
metrics_utility_cronjob_gather_schedule@hourlyまたは@daily。metrics_utility_cronjob_report_schedule@dailyまたは@monthly-
metrics_utility_enabledパラメーターを見つけて、変数を true に変更します。 -
metrics_utility_cronjob_gather_scheduleパラメーターを見つけて、ユーティリティーによって使用状況情報を収集する頻度を表す変数を入力します (たとえば、@hourlyまたは@daily)。 -
metrics_utility_cronjob_report_scheduleパラメーターを見つけて、ユーティリティーによってレポートを生成する頻度を表す変数を入力します (たとえば、@dailyまたは@monthly)。 - をクリックします。
12.1.3. Ansible Automation Platform の手動コンテナー化インストールで metrics-utility を設定する リンクのコピーリンクがクリップボードにコピーされました!
metrics-utility は、バージョン 4.12、4.512、および 4.6 以降の OpenShift Container Platform イメージに含まれています。システムに metrics-utility がインストールされていない場合は、OpenShift イメージを最新バージョンに更新してください。
Ansible Automation Platform Operator を使用して OpenShift Container Platform で metrics-utility の実行スケジュールを設定するには、次の手順を実行します。
Ansible Automation Platform の手動コンテナー化インストールで metrics-utility を設定するには、次の手順に従います。
- ホストディレクトリーとスクリプトを準備します。
- スクリプトを実行可能にします。
- cron ジョブを設定します。
前提条件
- 有効な Ansible Automation Platform サブスクリプション
最小リソース要件
Ansible Automation Platform のコンテナー化されたインストールで metrics-utility ツールを使用するには、次のリソースが必要です。
CPU: 専用 CPU コア 1 個
- 実行中は 1 コアの 100% が使用されます。
メモリー:
- 最小: 256 MB RAM (最大約 10,000 件のジョブホストサマリーをサポート)
- 推奨: 512 MB RAM (標準デプロイメント)
大規模: 1 GB RAM (最大約 100,000 件のジョブホストサマリーをサポート)
注記メモリー要件は、処理されるホストとジョブの数に応じて変化します。
- 実行時間: レポート生成は、データ量に応じて通常 10 - 30 秒以内に完了します。
12.1.3.1. ホストディレクトリーとスクリプトの準備 リンクのコピーリンクがクリップボードにコピーされました!
ホストディレクトリーとスクリプトを準備するには、実行中のコンテナー内で metrics-utility コマンドを実行するための 2 つのシェルスクリプトをホストマシンに作成します。
手順
インベントリーファイルを変更して、[all:vars] セクションの下に次の行を追加し、metrics-utility コンテナーのデプロイメントを有効にします。
metrics_utility_enabled=true
metrics_utility_enabled=trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow この設定は、Ansible Automation Platform デプロイメントの一部として専用の
automation-controller-metrics-utilityコンテナーを作成して設定するようにインストーラーに指示します。この行を、他のグローバル変数と一緒に、インベントリーファイルの[all:vars]ヘッダーの下に必ず配置してください。Ansible Automation Platform のデプロイメントがすでに設定されている場合は、インストーラースクリプトを再実行してコンテナーをアクティブ化します。次のコマンドを実行して、ホストレポートの保存先ディレクトリーを作成します。
mkdir -p /home/my-user/aap/controller/data/
mkdir -p /home/my-user/aap/controller/data/Copy to Clipboard Copied! Toggle word wrap Toggle overflow ホストマシン上のこのディレクトリーには、最終的に生成されたレポートが保存されます。
/home/my-user/cron-gatherという名前のファイルを作成し (/home/my-user/を目的のパスに置き換えます)、次のコンテンツを追加してcron-gatherスクリプトを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow このスクリプトは
metrics-utilityを実行して、Ansible Automation Platform インスタンスから課金データを収集し、コンテナー内に一時的に保存します。/home/my-user/cron-reportという名前のファイルを作成し (/home/my-user/を目的のパスに置き換えます)、次のコンテンツを追加してcron-reportスクリプトを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow このスクリプト METRICS_UTILITY_REPORT_SKU_DESCRIPTION
metrics-utilityは、収集されたデータからレポートを作成し、最終レポートをコンテナーから指定されたホストディレクトリーにコピーします。
12.1.3.2. スクリプトを実行可能にする リンクのコピーリンクがクリップボードにコピーされました!
次の手順を使用して、作成した両方のスクリプトが実行可能であることを確認します。
手順
以下のコマンドを実行します。
chmod a+x /home/my-user/cron-gather /home/my-user/cron-report
chmod a+x /home/my-user/cron-gather /home/my-user/cron-reportCopy to Clipboard Copied! Toggle word wrap Toggle overflow 注記/home/my-user/は実際のパスに置き換えます。
12.1.3.3. cron ジョブの設定 リンクのコピーリンクがクリップボードにコピーされました!
以下の手順を使用して、metrics-utility コマンドが自動的に実行されるように cron を設定します。
手順
cronファイルを開いて編集します。crontab -e
crontab -eCopy to Clipboard Copied! Toggle word wrap Toggle overflow cronスケジュールエントリーを追加するには、crontabファイルの末尾に次の行を追加します。0 */1 * * * /home/my-user/cron-gather 0 4 2 * * /home/my-user/cron-report
0 */1 * * * /home/my-user/cron-gather 0 4 2 * * /home/my-user/cron-reportCopy to Clipboard Copied! Toggle word wrap Toggle overflow これらの例では、
gatherコマンドを毎時 0 分に実行するように設定し、build_reportコマンドを毎月 2 日の午前 4 時に実行するように設定しています。希望するスケジュールに合わせて、必要に応じて cron 構文を調整します。以下に例を示します。
-
0 */1 * * *: 毎時 0 分に実行されます。 -
0 4 2 * *: 2 日の 04:00 に実行されます。
-
- ファイルを保存してから閉じます。
検証
正しい設定を確認するには、次の検証手順を使用します。
cronジョブのエントリーが正しく保存されたことを確認するには、次のコマンドを実行します。crontab -l
crontab -lCopy to Clipboard Copied! Toggle word wrap Toggle overflow cronジョブのエントリーが正しく保存されている場合は、cron-gatherとcron-reportに追加した 2 行が表示されます。cronログを調べて、cronデーモンがコマンドを実行しているかどうか、およびmetrics-utilityが出力を生成しているかどうかを確認します。cat /var/log/cron
cat /var/log/cronCopy to Clipboard Copied! Toggle word wrap Toggle overflow 参考までに、次の出力例を参照してください。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 生成されたレポートを見つけます。
-
生成されたレポートのデフォルトの名前の形式は
CCSP-<YEAR>-<MONTH>.xlsx(例:CCSP-2024-07.xlsx) です。レポートは、手順 2 で指定した接頭辞付きパス (例:/home/my-user/aap/controller/data/metrics_utility/data) を持つMETRICS_UTILITY_SHIP_PATHに保存されます。
-
生成されたレポートのデフォルトの名前の形式は