はじめに
本記事では、IBM Turbonomic SaaS環境からAWS IAMロールを利用してAWSアカウントへ接続する手順をご紹介します。
接続方法は以下の要素によって異なります:
- AWSアカウント:シングルアカウント or マルチアカウント
- 認証方式:IAMユーザー or IAMロール
- Turbonomic環境:SaaS or オンプレミス
本記事は シングルアカウント + IAMロール + SaaS環境 の構成を前提としています。
手順概要
| # | 手順 | 概要 |
|---|---|---|
| 1 | IAMポリシーの作成 | Turbonomicが必要とするAWS権限を定義 |
| 2 | OIDCプロバイダーの作成 | TurbonomicからのOIDC認証を受け入れる設定 |
| 3 | IAMロールの作成 | ウェブアイデンティティを使用したロールを作成し、ポリシーをアタッチ |
| 4 | トラストポリシーの変更 | テナントIDとサービスアカウントを信頼関係に設定 |
| 5 | ターゲット接続 | TurbonomicのGUIからIAMロールを接続 |
手順1: IAMポリシーの作成
Turbonomicが必要とするAWS権限を定義するIAMポリシーを作成します。
- AWSコンソールで IAM > ポリシー > ポリシーの作成 をクリック
- JSON タブを選択
- 以下のダウンロードリンクからポリシーをコピーして貼り付け
- ポリシー名(例:
TurbonomicPolicy)と説明を入力して作成
| Turbonomicの操作 | ダウンロードリンク |
|---|---|
| ワークロードを監視し、ワークロードに対するアクションを実行する | 最小限の権限(実行あり) |
| ワークロードを監視します。ワークロードに対するアクションはAWSで実行されます。 | 最小限の権限(監視のみ) |
手順2: OIDCプロバイダーの作成
OIDC(OpenID Connect)を利用してTurbonomicからAWSに認証します。
- IAM > IDプロバイダー > プロバイダを追加 をクリック
- 以下を設定:
-
プロバイダのタイプ:
OpenID Connect - プロバイダURL: SaaS環境のリージョンに応じたURLを入力
-
対象者 (Audience):
sts.amazonaws.com
-
プロバイダのタイプ:
- プロバイダを追加 をクリック
東京リージョンに関しまして、プロバイダURLはSaaS環境のリージョンによって異なります。(2025/01/05時点)
| SaaSサーバーアドレス | OIDCプロバイダURL |
|---|---|
xxxxxx.apne1h.turbonomic.ibmappdomain.cloud |
https://oidc.op1.openshiftapps.com/2ll72b5mnpgk6c4gio2nhl7fi99edtqm |
xxxxxx.apne1.turbonomic.ibmappdomain.cloud |
https://oidc.op1.openshiftapps.com/2jt4f238ltov5tbgfmkjt11e0f83qr45 |
詳細はIBM公式ドキュメントをご確認ください。
手順3: IAMロールの作成
TurbonomicがAWSリソースにアクセスするためのIAMロールを作成します。
- IAM > ロール > ロールを作成 をクリック
-
信頼されたエンティティタイプ:
ウェブアイデンティティを選択 - 以下を設定:
- IDプロバイダー: 手順2で作成したOIDCプロバイダー
-
Audience:
sts.amazonaws.com
- 次へ をクリックし、手順1で作成したポリシーをアタッチ
- ロール名(例:
TurbonomicRole)と説明を入力して作成 - 作成後、ARNをコピーして保存
手順4: トラストポリシーの変更
TurbonomicのテナントIDとサービスアカウントを信頼関係に設定します。
- 作成したIAMロールを選択
- 信頼関係 タブ > 信頼ポリシーを編集 をクリック
-
ConditionセクションのStringEquals部分を以下のように変更:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Federated": "<PROVIDER_URL>"
},
"Action": "sts:AssumeRoleWithWebIdentity",
"Condition": {
"StringEquals": {
"<PROVIDER_URL>:sub": "system:serviceaccount:<TENANT_ID>:<TENANT_SVC_ACCOUNT>"
}
}
}
]
}
| 項目 | 説明 | 例 |
|---|---|---|
<TENANT_ID> |
SaaS URLのサブドメイン |
jptest(URLが jptest.customer.turbonomic.ibmappdomain.cloud の場合) |
<TENANT_ID>-sa |
テナントIDの末尾に -sa を追加 |
jptest-sa |
手順5: ターゲット接続
TurbonomicのGUIからIAMロールを接続します。
- TurbonomicのGUIにログイン
- Settings > Target configuration をクリック
- New Target > Cloud Management > AWS を選択
- 以下を設定:
-
認証方式:
IAM Role - Role ARN: 手順3でコピーしたARN
-
認証方式:
- Add target をクリック
おわりに
TurbonomicとAWSを接続する方法は複数ありますが、本記事ではIAMロールを利用したSaaS環境からの接続手順をご紹介しました。
次は、CloudFormationというコード既に作成されているものでもロール連携できるのか、試してみようと思います。


