【Amazon Managed Grafana】CloudWatch の クロスアカウントオブザーバビリティと SAML 認証で複数メンバーアカウントを一括モニタリングする方法(2)

記事タイトルとURLをコピーする

Amazon Managed Grafana の構成図

 こんにちは、テクニカルサポート課の坂本(@t_sakam)です。今回は、前回第 1 回の続きになります。  
 第 1 回では、以下の実現するための Point 1 の「CloudWatch のクロスアカウントオブザーバビリティ機能を利用する」の手順までを確認しました。今回からは、やっと Amazon Managed Grafana の設定に入ります!
 以下の実現するための Point 2 の「Grafana のワークスペースへのログインは SAML 認証を利用する」の手順を中心に、Managed Grafana のワークスペースで、前回の最後の手順で表示した CloudWatch の画面(EC2 インスタンスの CPUUtilization)と同じ内容を表示するところまでを確認していきます。
 

  1. CloudWatch のクロスアカウントオブザーバビリティ機能を利用する
  2. Grafana のワークスペースへのログインは SAML 認証を利用する

Amazon Managed Grafana でワークスペースを作成する

構成図で設定するアカウントを確認する

 今回の設定は、モニタリングアカウント側でおこないます。

モニタリングアカウントを赤枠で強調した Amazon Managed Grafana の構成図
今回の設定はモニタリングアカウントでおこなう

ワークスペースを作成する

 まずは、Managed Grafana のマネジメントコンソールのトップ画面で「ワークスペースを作成」ボタンを押します。

Amazon Managed Grafana のマネジメントコンソール
Managed Grafana のマネジメントコンソールで「ワークスペースを作成」ボタンを押す

ワークスペースの詳細を指定

ワークスペースの詳細

 「ワークスペースの詳細」でワークスペース名を入力し「次へ」ボタンを押します。今回、ワークスペース名は「GrafanaWorkspace」としました。

Amazon Managed Grafana のマネジメントコンソール
ワークスペース名を入力し「次へ」ボタンを押す

設定を構成

認証アクセス

 「認証アクセス」で、「Security Assertion Markup Language (SAML)」を選択します。「このワークスペースが作成されたら、SAML 設定を完了する追加の手順を完了する必要があります。」と記載があるように、ワークスペースの作成のあとでおこなう追加の手順があります。以降は、デフォルトの設定のまま「次へ」ボタンを押します。

Amazon Managed Grafana のマネジメントコンソール
「認証アクセス」で、「Security Assertion Markup Language (SAML)」を選択

サービスマネージド型のアクセス許可設定

IAM アクセス許可アクセス設定

 「IAM アクセス許可アクセス設定 」で「現在のアカウント」を選択します。といっても、メンバーアカウントなので、元々「組織」は選択できません。

データソース

 今回は CloudWatch の EC2 インスタンスのメトリクス「CPUUtilization」を表示したいので、「Amazon CloudWatch」を選択し、「次へ」ボタンを押します。

Amazon Managed Grafana のマネジメントコンソール
データソースで「Amazon CloudWatch」を選択

確認と作成

 「確認と作成」で設定内容を確認し、問題無ければ「ワークスペースを作成」ボタンを押してしばらく待つとワークスペースができあがります。

Amazon Managed Grafana のマネジメントコンソール
「確認と作成」で設定内容を確認

SAML のセットアップを完了にする

 先ほど、追加の手順があると記載していましたが、こちらがその追加の手順です。画面上に以下の説明がありますので、抜粋します。

ユーザーが外部 SAML 2.0 Identity Provider (IdP) を使用してワークスペースにログインできるように SAML を設定できます。ユーザーがワークスペースにログインするには、SAML 設定を完了するための追加のステップを完了する必要があります。

 以下の AWS のドキュメントに、Azure AD、CyberArk、Okta、OneLogin、Ping Identity に関しては、テスト済みとの記載があるので、今回、「外部 SAML 2.0 Identity Provider (IdP)」には、OneLogin を使用します。

docs.aws.amazon.com

 本来は OneLogin の設定が先ですが、手順の確認のため、いったん、画面下の「セットアップを完了にする」を押します。

Amazon Managed Grafana のマネジメントコンソール
ワークスペースの作成が完了したら「セットアップを完了にする」を押す

SAML の設定画面

 次の画面は、SAML の設定画面です。設定するには、先に OneLogin で設定をする必要があるので、次の手順で OneLogin の手順を確認していきます。

Amazon Managed Grafana のマネジメントコンソール
SAML の設定画面

OneLogin での設定

OneLogin でフリートライアルを申し込む

 まず、OneLogin を利用していない場合は、フリートライアルがあるので、申し込みます。仕事用の E メールアドレスが必要です。フリートライアルの申し込みの手順は、画面の流れに沿っておこなえば OK ですので、手順が長くなってしまうので省かせていただきます。

OneLogin のトップページ
画面右上の「Free Trial」ボタンを押す

OneLogin での設定手順

 次は、フリートライアルの申し込みが済んで、利用できるようになってからの手順です。こちらの手順は、以下の OneLogin のナレッジページに詳細な手順がありますので、こちらも今回はブログ内では省かせいただきます。お手数ですが、以下のナレッジページの Step 2 からの手順をご確認いただけますと幸いです。一点、手順通りに進めたつもりでしたが、わたしの場合は、ユーザーに管理者権限があたっていなかったので、その部分のみ、Managed Grafana のワークスペースにログイン後の手順で触れておきます。

onelogin.service-now.com

OneLogin のナレッジページ
OneLogin のナレッジページの Step 2 からの手順を確認する

Managed Grafana のワークスペースにログインする

「Grafana ワークスペース URL」をクリック

 OneLogin のナレッジページの手順が完了したら、AWS のマネジメントコンソールに記載された URL で Managed Grafana のワークスペースにログインします。「Grafana ワークスペース URL」がリンクになっているので、クリックします。

Managed Grafana のマネジメントコンソール
「Grafana ワークスペース URL」がリンクになっいるので、クリックする

「Sign in with SAML」ボタンを押す

 「Sign in with SAML」ボタンを押します。

Managed Grafana のワークスペースのログイン画面
「Sign in with SAML」ボタンを押す

OneLogin の管理画面で修正

 Managed Grafana のワークスペースにログインできましたが、メニューが少なめで、設定を進められなさそうでした。管理者権限があたっていないように見受けられたので、OneLogin の管理画面に戻って確認します。

画面左メニューの項目が少ない

Managed Grafana のワークスペース
画面左メニューの項目が少ない

ユーザーに管理者権限が付与されていなかったため追加する

 OneLogin の管理画面に入り、左メニューの「Users」をクリックします。ユーザーを確認したところ「adminRole」項目が空になっていました。「true」と入力し、「save」ボタンを押します。

OneLogin の管理画面
adminRole を true にする

全てのメニューが表示される

 Managed Grafana のワークスペースをサインアウトし、サインインし直します。これで、全てのニューが表示されました。

Managed Grafana のワークスペース
全てのメニューが表示される

Managed Grafana のワークスペースでの設定

データソースを追加する

データソースを追加

 Managed Grafana のワークスペースの画面左メニューから「Apps」を選択したあと、画面右で「AWS Data Sources」を選択します。

Managed Grafana のワークスペース
「AWS Data Sources」を選択

AWS Data Sources

 次の画面で「CloudWatch」を選択します。

Managed Grafana のワークスペース
「CloudWatch」を選択

「Data Sources」 タブ

  「Data Sources」 タブを選択後、検索ボックスで東京リージョン(ap-northeast-1)を検索し、選択後「Add 1 data source」ボタンを押します。

Managed Grafana のワークスペース
「Add 1 data source」ボタンを押す

データソースの追加完了

 これで、データソースの追加が完了しました。データソース名は「Amazon CloudWatch ap-northeast-1」となっています。

Managed Grafana のワークスペース
データソースの追加完了

ダッシュボードを作成する

「Add visualization」ボタンを押す

 左メニューの「Dashboards」を選択し、画面右中央の「Add visualization」ボタンを押します。

Managed Grafana のマネジメントコンソール
「Add visualization」ボタンを押す

データソースを選択

 先ほど追加したデータソース「Amazon CloudWatch ap-northeast-1」を選択します。

Managed Grafana のマネジメントコンソール
データソース「Amazon CloudWatch ap-northeast-1」を選択

両アカウントの EC2 の CPUUtilization をグラフで確認する設定

 ダッシュボードが表示されたら、前回と同様に 2 つのアカウントの EC2 の CPUUtilization をグラフで確認したいので、画面左下の設定箇所で以下のように設定します。

Managed Grafana のマネジメントコンソール
両アカウントの EC2 の CPUUtilization をグラフで確認するための設定

設定内容
Account 
All

Namespace
AWS/EC2

Metric name
CPUUtilization

Statistic
Average

Dimensions
InstanceId = *

日時の設定

 画面中央右上あたりにある日時の設定箇所で、確認をしたい日時を選択します。

Managed Grafana のマネジメントコンソール
日時の設定をする

グラフの表示

 前回の CloudWatch のマネジメントコンソールと同じ内容のグラフが表示されました。

Managed Grafana のマネジメントコンソール
前回の CloudWatch と同じ内容のグラフが表示されている

まとめ

 今回は「【Amazon Managed Grafana】CloudWatch の クロスアカウントオブザーバビリティと SAML 認証で複数メンバーアカウントを一括モニタリングする方法」全 2 回の第 2 回として、主に OneLogin を使用して Amazon Managed Grafana でユーザー認証をするための設定と Amazon Managed Grafana で前回と同じ EC2 の CPUUtilization のグラフを表示する設定をおこないました。
 
 手順が長く 2 回に分けることになりましたが、いかがでしたでしょうか。このように管理アカウントの権限をもっていない場合でも、メンバーアカウントのみで複数のメンバーアカウントを一括でモニタリングできますので、管理アカウントの権限がなくお困りの方は、ぜひ一度お試しいただけますと幸いです。
 
 いや〜、Amazon Managed Grafana って本当にいいものですね!

坂本 知子(記事一覧)

サーバーワークスのこけしの人(@t_sakam)。2024 Japan AWS Ambassadors、2020 APN AWS Top Engineers。