1.6. Cost Management Metrics Operator のサービスアカウント認証を設定する
Basic 認証はサポートされなくなりました。Cost Management Metrics Operator を手動で設定して Basic 認証を使用する場合は、次の手順を実行してサービスアカウント認証を設定します。
詳細は、Transition of Red Hat Hybrid Cloud Console APIs from basic authentication to token-based authentication via service accounts を参照してください。
1.6.1. サービスアカウントの作成
Cost Management Metrics Operator のサービスアカウント認証を設定するには、Red Hat Hybrid Cloud Console の サービスアカウント の クライアント ID と クライアントシークレット が必要です。すでにこの情報をお持ちの場合は、認証用の秘密鍵/値ペアの作成 に進みます。
サービスアカウントを作成し、クライアント ID と クライアントシークレット を取得するには、次の手順を実行します。
手順
- Red Hat Hybrid Cloud Console から をクリックします。
- をクリックします。
- Service Accounts タブをクリックします。
- をクリックします。
名前と説明を入力します。
- この場合の名前は文字で始まり、文字または数字で終わる必要があります。英数字とハイフンのみ使用できます。
- をクリックします。
クライアント ID と クライアントシークレット をコピーし、安全な場所に保存します。
- ウィンドウを閉じると、それ以降シークレットは 表示されません。
- I have copied the client ID and secret チェックボックスをオンにして、 をクリックします。
作成したアカウントがリストに表示されるはずです。
1.6.1.1. サービスアカウントに開くアセス件を付与する
サービスアカウントの作成後、そのアカウントをグループに関連付ける必要があります。
手順
- User Access タブをクリックし、Groups をクリックします。
- リストから目的のグループを見つけ、その名前をクリックします。
- 開いたウィンドウで、Service Accounts タブをクリックします。
- をクリックします。
- 前のセクションで作成したサービスアカウント、またはグループに関連付ける任意のサービスアカウントを選択します。
- をクリックします。
これで、サービスアカウントはグループ内のロールに関連付けられた権限を継承するようになります。インテグレーションを作成するには、Operator 用に作成したサービスアカウントに クラウド管理者 ロールが必要です。詳細は、コスト管理におけるデフォルトのユーザーロール を参照してください。
1.6.2. サービスアカウント認証の設定
前提条件
- OpenShift Container Platform の Web コンソールにログインし、クラスター管理者権限を持っている。
- Cost Management Metrics Operator が Installed Operators タブに表示されている。
- Red Hat Hybrid Cloud Console サービスアカウント の クライアント ID と クライアントシークレット がある。この情報がない場合は、上記 2 セクションの手順を参照してください。
1.6.3. サービスアカウント認証用の秘密鍵と値のペアの作成
手順
- OpenShift Container Platform Web コンソールで、Workloads タブをクリックし、Secrets をクリックします。
- Secrets ウィンドウで、 ドロップダウンをクリックし、Key/value secret を選択します。
2 つのキーを作成します。1 つは クライアント ID 用、もう 1 つは クライアントシークレット 用です。Create key/value secret ウィンドウに次の情報を入力します。
シークレット名:
service-account-auth-secret
Key に
client_id
を入力します。client_id
最初のキー
client_id`
の Value フィールドに、認可された Red Hat Hybrid Cloud Console ユーザーアカウントの Value を、アップロードまたはテキストボックスにペーストできます。サービスアカウントの作成時に、これらの認証情報を保存しておく必要があります。red_hat_service_account_client_id
- 次に、Add Key/Value をクリックして、2 番目 のキー/値ペアを クライアントシークレット 用に追加します。
Key に
client_secret
を入力します。client_secret
2 番目のキー
client_secret
の Value フィールドに、認可された Red Hat Hybrid Cloud Console ユーザーアカウントの Value を、アップロードまたはテキストボックスにペーストできます。red_hat_service_account_client_secret
- シークレットのキー/値の詳細が正しいことを確認したら、 をクリックして、サービスアカウント認可シークレットの作成を完了します。
- シークレットの名前をコピーします。これは、次のセクションで使用します。
1.6.4. YAML ファイルの変更
シークレットの作成が完了しました。次に Cost Management Metrics Operator API YAML ファイルを変更します。
手順
- Operators タブをクリックし、Installed Operators をクリックします。
- Cost Management Metrics Operator を見つけ、その名前をクリックします。
Koku Metrics Config タブをクリックし、Name の設定ファイルをクリックします。
デフォルトの名前は
costmanagementmetricscfg-sample
です。
- YAML タブをクリックしてファイルを開きます。
YAML ファイルで次の行を見つけます。
authentication: type: token
-
type: token
をtype: service-account
に変更します。 secret_name
の新しい行を挿入します。前のセクションでコピーしたシークレットを入力します。例
authentication: secret_name: service-account-auth-secret #Change this line to match your secret name. type: service-account
- をクリックします。