Cost Management へのMicrosoft Azure ソースの追加

Cost Management Service 2022

Microsoft Azure ソースの追加および設定方法について

概要

このガイドでは、Microsoft Azure のソースを Cost Management に追加する方法について説明します。

第1章 Cost Management へのMicrosoft Azure ソースの追加

Microsoft Azure のアカウントで、Cost Management のアクセスを許可するように設定します。

Azure アカウントを Cost Management ソースとして設定するには、以下が必要です。

  1. ストレージアカウントおよびリソースグループの作成
  2. ストレージアカウントのコントリビューターとリーダーロールのアクセスの設定
  3. 日次コストエクスポートのスケジューリング
注記

Red Hat 以外の製品およびドキュメントは、予告なしに変更される可能性がありますが、本ガイドに記載のサードパーティーソースの設定手順は、一般的であり、公開時点で正しいものです。最新の正確な情報については、Microsoft Azure ドキュメントを参照してください。

https://cloud.redhat.com/settings/sources/ から Azure ソースを Cost Management に追加します。

1.1. Azure リソースグループおよびストレージアカウントの作成

コストエクスポートデータは、リソースグループ内に存在するストレージアカウントに書き込まれます。Azure のコストデータを読み込むためには、Cost Management からリソースグループにアクセスできる必要があります。

Cost Management で収集するコストデータおよびメトリックを格納するための新しいストレージアカウントを Azure に作成します。これにはリソースグループが必要です。Red Hat では、このストレージアカウント専用のリソースグループを作成することを推奨しています。

注記

Cost Management にソースを追加する前に、ソース管理者の権限を持つ Red Hat アカウントのユーザーが必要です。

  1. console.redhat.com プラットフォームで Sources メニュー (https://console.redhat.com/settings/sources) を開き、Azure ソースを Cost Management に追加します。

    1. Sources に移動し、Add a source をクリックして Sources ウィザードを開きます。
    2. ソースの名前を入力し、Next をクリックします。
    3. アプリケーションとして cost management を、ソースタイプとして Microsoft Azure を選択します。Next をクリックします。
  2. Azure ドキュメントストレージアカウントの作成の手順で、Azure アカウントにリソースグループとストレージアカウントを作成します。

リソースグループとストレージアカウントをメモします。これらは、後続の手順で必要になります。

  1. console.redhat.comSources ウィザードで リソースグループ名 および ストレージアカウント名 を入力し、Next をクリックします。

1.2. Azure ロールの設定

Red Hat では、Cost Management に Azure コストデータへの読み取り専用アクセスを付与するために、専用の認証情報を設定することを推奨しています。このアクセスを Cost Management に提供するために、Azure でストレージアカウントコントリビューターおよびリーダーロールを設定します。

  1. Azure Cloud Shell で以下のコマンドを実行し、サブスクリプション ID を取得します。

    $ az account show --query "{subscription_id: id }"
  2. console.redhat.comSources ウィザードで、サブスクリプション ID を入力します。Next をクリックして次の画面に移動します。
  3. Azure Cloud Shell で以下のコマンドを実行し、Cost Management ストレージアカウントのコントリビューターロールを作成し、テナント ID、クライアント (アプリケーション) ID およびクライアントシークレットを取得します。

    $ az ad sp create-for-rbac -n "CostManagement" --role "Storage Account Contributor" --query '{"tenant": tenant, "client_id": appId, "secret": password}'
  4. console.redhat.comSources ウィザードで、Azure テナント IDクライアント ID、および クライアントシークレット を入力します。
  5. Azure Cloud Shell で以下のコマンドを実行し、サブスクリプション ID で Cost Management のリーダーロールを作成します。console.redhat.comSources ウィザードからフルコマンドをコピーします。このコマンドでは、先に取得した Azure サブスクリプション ID が自動的に <SubscriptionID> に置き換えられます。

    $ az role assignment create --role "Cost Management Reader" --assignee http://CostManagement --subscription <SubscriptionID>
  6. Next をクリックします。

1.3. Azure の日次データエクスポートスケジュールの設定

定期的なタスクを作成し、毎日自動的にコストデータを Azure ストレージアカウントにエクスポートし、コスト管理者がそのデータを取得するようにします。

注記

Cost Management では、サブスクリプションレベルのスコープからのデータエクスポートが必要です。サブスクリプション からコストデータエクスポートを作成する必要があります。Azure におけるスコープの動作の詳細については、Azure ドキュメントの スコープの理解と使用 を参照してください。

  1. Azure では、Azure 記事エクスポートデータの作成と管理の手順にしたがって、新しいエクスポートを追加します。

    • Export type には、Daily export of billing-period-to-date costs を選択します。
    • Storage account には、以前に作成したアカウントを選択します。
    • エクスポートのコンテナー名とディレクトリーパスに任意の値を入力します。これらの値は、レポートファイルが保存されるストレージアカウントのツリー構造を提供します。
    • Run now をクリックして、Azure ストレージコンテナーへのデータのエクスポートを開始します。
  2. console.redhat.comSources ウィザードで、エクスポートスケジュールを作成し、ソースの詳細を確認したら Next をクリックします。
  3. Finish をクリックして Azure ソースの Cost Management への追加を完了します。

スケジュールが作成されると、Cost Management は Azure にコストデータのポーリングを開始します。このデータは、Cost Management ダッシュボード (console.redhat.com/openshift/cost-management/) に表示されます。

第2章 コストを管理するための次のステップ

OpenShift Container Platform および Microsoft Azure ソースを追加した後に、Cost Management は、ソースでコストデータを表示するだけでなく、プラットフォーム上で OpenShift Container Platform クラスターの実行に関連する Azure コストと使用状況を自動的に表示します。

Cost Management の Overview ページ (cloud.redhat.com/openshift/cost-management/) では、コストデータは OpenShift および Infrastructure タブに分類されます。ここから、Perspective を使用して、コストデータのさまざまなビューを選択できます。

左側のナビゲーションメニューを使用して、サービス別のコストの追加情報を表示することもできます。

2.1. Cost Management リソースへのアクセス制限

Cost Management にソースを追加および設定したら、コストデータおよびリソースへのアクセスを制限することが推奨されます。たとえば、ユーザーがすべてのコストデータにアクセスできるようにするのではなく、プロジェクトまたは組織に固有のデータのみにアクセスできるようにすることができます。ロールベースのアクセス制御を使用すると、Cost Management レポートに含まれるリソースの可視性を制限できます。たとえば、ユーザービューを環境全体ではなく AWS ソースのみに制限することができます。

アクセスの制限の詳細は、Limiting access to cost management resources を参照してください。

2.2. ソースへのタグ付けの設定

Cost Management アプリケーションは、タグ (OpenShift ではラベル と呼ばれる) を使用してクラウドおよびインフラストラクチャーコストを追跡します。タグを調整して、リソースにフィルターをかけ、属性を付けることができます。Cost Management のタグを使用すると、コストごとにリソースを整理し、コストをクラウドインフラストラクチャーの異なる部分に割り当てることができます。

重要

タグとラベルは、ソースで直接設定することしかできません。Cost Management でアクティブ化されるタグを選択できますが、Cost Management アプリケーションでタグとラベルを編集することはできません。

以下の詳細は、Managing cost data using tagging を参照してください。

  • コストデータの表示を整理するためのタグ付けストラテジーを計画する。
  • Cost Management がタグを関連付ける方法を理解する。
  • ソースにタグおよびラベルを設定する。

2.3. コストの正確な報告のためのコストモデルの設定

コストと使用状況のデータを Cost Management に収集するようにソースを設定したら、コストモデルを設定して価格をメトリックと使用状況に関連付け、クラウドを実行するコストを微調整できます。

コストモデルは、生のコストとメトリクスを使用して、Cost Management に保存されているコストの計算を定義するために使用されるフレームワークです。コストモデルが生成するコストは、記録、分類、および特定の顧客、ビジネスユニット、またはプロジェクトに配布できます。

Cost Management の コストモデル エリアから、以下のことができます。

  • インフラストラクチャーまたは補足コストとしてコストを分類する。
  • OpenShift ノードおよびクラスターの月額コストを取得する。
  • 追加のサポートコストを考慮してマークアップを適用する。
  • コストモデルを設定する方法の詳細は、Using cost models を参照してください。

2.4. Cost Explorer を使用したコストの可視化

Cost Management の Cost Explorer では、時間軸に沿ったコストと使用情報のカスタムグラフを作成し、コストをより可視化し解釈することができます。

以下の詳細は、Visualizing your costs using Cost Explorer を参照してください。

  • Cost Explorer を使用して異常なイベントを特定する。
  • 時間の経過とともにコストデータがどのように変化するかを理解する。
  • コストと使用状況データのカスタムバーチャートを作成する。
  • カスタムコストデータテーブルをエクスポートする。