[アップデート] Amazon Managed Grafanaのワークスペース作成にAWS CloudFormationが対応してました

2022.12.20

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

こんにちは。大阪オフィスの林です。

Amazon Managed Grafanaのワークスペース作成にAWS CloudFormationが対応していたので一連の作成作業を検証してみたいと思います。
これまではマネージメントコンソールからポチポチと操作が必要だったりしましたがこのアップデートによってコード化できるという嬉しみがあります。

CloudFormationのリファレンスは以下になりますので併せて参照ください。

やってみた

今回使うCloudFomationのコードです。
基本的にはリファレンスのサンプルを参考にしていますが、認証方法のみIAM Identity Centerを使う方法に変更しています。

AWSTemplateFormatVersion: '2010-09-09'
Description: Amazon Grafana workspace stack

###############################################################
# Resources
###############################################################

Resources:
  AmazonGrafanaWorkspaceIAMRole:
    Type: 'AWS::IAM::Role'
    Properties:
      ManagedPolicyArns:
        - 'arn:aws:iam::aws:policy/service-role/AmazonGrafanaAthenaAccess'
      AssumeRolePolicyDocument:
        Version: 2012-10-17
        Statement:
          - Effect: Allow
            Principal:
              Service:
                - grafana.amazonaws.com
            Action:
              - 'sts:AssumeRole'

  AmazonGrafanaWorkspace:
    Type: 'AWS::Grafana::Workspace'
    Properties:
      AccountAccessType: CURRENT_ACCOUNT
      AuthenticationProviders:
        - AWS_SSO
      Name: AmazonGrafanaWorkspace
      Description: Amazon Grafana Workspace
      PermissionType: CUSTOMER_MANAGED
      RoleArn: !GetAtt 
        - AmazonGrafanaWorkspaceIAMRole
        - Arn

Outputs:
  WorkspaceEndpoint:
    Value: !GetAtt 
      - AmazonGrafanaWorkspace
      - Endpoint
  WorkspaceStatus:
    Value: !GetAtt 
      - AmazonGrafanaWorkspace
      - Status
  WorkspaceId:
    Value: !Ref AmazonGrafanaWorkspace
  GrafanaVersion:
    Value: !GetAtt 
      - AmazonGrafanaWorkspace
      - GrafanaVersion

CloudFomationのダッシュボードから「スタック」-「新しいリソースを使用」を選択しスタックを作成します。

先程のコードをファイルとしてアップロードし次に進みます。

任意の名前を入力し次に進みます。

詳細オプションは特に変更せず次に進みます。

確認画面で送信を選択しスタックの作成を行います。

暫くするとスタックの実行が完了しました。

Amazon Managed Grafanaのダッシュボードに移動し

IAM Identity Centerを使う場合にはユーザーの割り当てまではCloudFomationで出来なさそうでしたので連携されたユーザーやグループを選択して手動で割り当ての作業を行う必要がありそうです。

まとめ

Amazon Managed Grafanaのワークスペース作成にAWS CloudFormationが対応していたので簡単ではありますが作成までの一連の作業を検証をしてみました。
この記事がどなたかの参考になりましたら幸いです。

以上、大阪オフィスの林がお送りしました!