こんにちは、テクニカルサポート課の坂本(@t_sakam)です。今回は、前回の第 1 回の続きになります。
第 1 回では、以下の実現するための Point 1 の「CloudWatch のクロスアカウントオブザーバビリティ機能を利用する」の手順までを確認しました。今回からは、やっと Amazon Managed Grafana の設定に入ります!
以下の実現するための Point 2 の「Grafana のワークスペースへのログインは SAML 認証を利用する」の手順を中心に、Managed Grafana のワークスペースで、前回の最後の手順で表示した CloudWatch の画面(EC2 インスタンスの CPUUtilization)と同じ内容を表示するところまでを確認していきます。
- CloudWatch のクロスアカウントオブザーバビリティ機能を利用する
- Grafana のワークスペースへのログインは SAML 認証を利用する
- Amazon Managed Grafana でワークスペースを作成する
- SAML のセットアップを完了にする
- OneLogin での設定
- Managed Grafana のワークスペースでの設定
- まとめ
Amazon Managed Grafana でワークスペースを作成する
構成図で設定するアカウントを確認する
今回の設定は、モニタリングアカウント側でおこないます。
ワークスペースを作成する
まずは、Managed Grafana のマネジメントコンソールのトップ画面で「ワークスペースを作成」ボタンを押します。
ワークスペースの詳細を指定
ワークスペースの詳細
「ワークスペースの詳細」でワークスペース名を入力し「次へ」ボタンを押します。今回、ワークスペース名は「GrafanaWorkspace」としました。
設定を構成
認証アクセス
「認証アクセス」で、「Security Assertion Markup Language (SAML)」を選択します。「このワークスペースが作成されたら、SAML 設定を完了する追加の手順を完了する必要があります。」と記載があるように、ワークスペースの作成のあとでおこなう追加の手順があります。以降は、デフォルトの設定のまま「次へ」ボタンを押します。
サービスマネージド型のアクセス許可設定
IAM アクセス許可アクセス設定
「IAM アクセス許可アクセス設定 」で「現在のアカウント」を選択します。といっても、メンバーアカウントなので、元々「組織」は選択できません。
データソース
今回は CloudWatch の EC2 インスタンスのメトリクス「CPUUtilization」を表示したいので、「Amazon CloudWatch」を選択し、「次へ」ボタンを押します。
確認と作成
「確認と作成」で設定内容を確認し、問題無ければ「ワークスペースを作成」ボタンを押してしばらく待つとワークスペースができあがります。
SAML のセットアップを完了にする
先ほど、追加の手順があると記載していましたが、こちらがその追加の手順です。画面上に以下の説明がありますので、抜粋します。
ユーザーが外部 SAML 2.0 Identity Provider (IdP) を使用してワークスペースにログインできるように SAML を設定できます。ユーザーがワークスペースにログインするには、SAML 設定を完了するための追加のステップを完了する必要があります。
以下の AWS のドキュメントに、Azure AD、CyberArk、Okta、OneLogin、Ping Identity に関しては、テスト済みとの記載があるので、今回、「外部 SAML 2.0 Identity Provider (IdP)」には、OneLogin を使用します。
本来は OneLogin の設定が先ですが、手順の確認のため、いったん、画面下の「セットアップを完了にする」を押します。
SAML の設定画面
次の画面は、SAML の設定画面です。設定するには、先に OneLogin で設定をする必要があるので、次の手順で OneLogin の手順を確認していきます。
OneLogin での設定
OneLogin でフリートライアルを申し込む
まず、OneLogin を利用していない場合は、フリートライアルがあるので、申し込みます。仕事用の E メールアドレスが必要です。フリートライアルの申し込みの手順は、画面の流れに沿っておこなえば OK ですので、手順が長くなってしまうので省かせていただきます。
OneLogin での設定手順
次は、フリートライアルの申し込みが済んで、利用できるようになってからの手順です。こちらの手順は、以下の OneLogin のナレッジページに詳細な手順がありますので、こちらも今回はブログ内では省かせいただきます。お手数ですが、以下のナレッジページの Step 2 からの手順をご確認いただけますと幸いです。一点、手順通りに進めたつもりでしたが、わたしの場合は、ユーザーに管理者権限があたっていなかったので、その部分のみ、Managed Grafana のワークスペースにログイン後の手順で触れておきます。
Managed Grafana のワークスペースにログインする
「Grafana ワークスペース URL」をクリック
OneLogin のナレッジページの手順が完了したら、AWS のマネジメントコンソールに記載された URL で Managed Grafana のワークスペースにログインします。「Grafana ワークスペース URL」がリンクになっているので、クリックします。
「Sign in with SAML」ボタンを押す
「Sign in with SAML」ボタンを押します。
OneLogin の管理画面で修正
Managed Grafana のワークスペースにログインできましたが、メニューが少なめで、設定を進められなさそうでした。管理者権限があたっていないように見受けられたので、OneLogin の管理画面に戻って確認します。
画面左メニューの項目が少ない
ユーザーに管理者権限が付与されていなかったため追加する
OneLogin の管理画面に入り、左メニューの「Users」をクリックします。ユーザーを確認したところ「adminRole」項目が空になっていました。「true」と入力し、「save」ボタンを押します。
全てのメニューが表示される
Managed Grafana のワークスペースをサインアウトし、サインインし直します。これで、全てのニューが表示されました。
Managed Grafana のワークスペースでの設定
データソースを追加する
データソースを追加
Managed Grafana のワークスペースの画面左メニューから「Apps」を選択したあと、画面右で「AWS Data Sources」を選択します。
AWS Data Sources
次の画面で「CloudWatch」を選択します。
「Data Sources」 タブ
「Data Sources」 タブを選択後、検索ボックスで東京リージョン(ap-northeast-1)を検索し、選択後「Add 1 data source」ボタンを押します。
データソースの追加完了
これで、データソースの追加が完了しました。データソース名は「Amazon CloudWatch ap-northeast-1」となっています。
ダッシュボードを作成する
「Add visualization」ボタンを押す
左メニューの「Dashboards」を選択し、画面右中央の「Add visualization」ボタンを押します。
データソースを選択
先ほど追加したデータソース「Amazon CloudWatch ap-northeast-1」を選択します。
両アカウントの EC2 の CPUUtilization をグラフで確認する設定
ダッシュボードが表示されたら、前回と同様に 2 つのアカウントの EC2 の CPUUtilization をグラフで確認したいので、画面左下の設定箇所で以下のように設定します。
設定内容
Account All Namespace AWS/EC2 Metric name CPUUtilization Statistic Average Dimensions InstanceId = *
日時の設定
画面中央右上あたりにある日時の設定箇所で、確認をしたい日時を選択します。
グラフの表示
前回の CloudWatch のマネジメントコンソールと同じ内容のグラフが表示されました。
まとめ
今回は「【Amazon Managed Grafana】CloudWatch の クロスアカウントオブザーバビリティと SAML 認証で複数メンバーアカウントを一括モニタリングする方法」全 2 回の第 2 回として、主に OneLogin を使用して Amazon Managed Grafana でユーザー認証をするための設定と Amazon Managed Grafana で前回と同じ EC2 の CPUUtilization のグラフを表示する設定をおこないました。
手順が長く 2 回に分けることになりましたが、いかがでしたでしょうか。このように管理アカウントの権限をもっていない場合でも、メンバーアカウントのみで複数のメンバーアカウントを一括でモニタリングできますので、管理アカウントの権限がなくお困りの方は、ぜひ一度お試しいただけますと幸いです。
いや〜、Amazon Managed Grafana って本当にいいものですね!