記事にした背景
AWS上で利用できるQuickSightのIaC(Infrastructure as Code)に関して、いくつかネット上の記事はあったものの、複数の記事を参照しないといけなく作成までに1週間程度かかってしまった。活用した記事をまとめておき、手順化させることで情報検索の手間を省けると思い、今回記事にすることとした。
※尚、今回は手動で作成したものをIaC化させるため、作成済みのダッシュボード(もしくは元となるQuicksightの分析)は予め準備が必要になる。
QuickSightのIaC化てそもそも何?
Amazon QuickSight(通称QuickSight)とはAWS上で使える可視化ツールである。ユースケース中に作成した分析やダッシュボードを運用で活用する場合もある。この場合、手動で作成したものだけに変更を加えると、微細な変更があった場合に元の状態が戻すことが困難になる。ダッシュボードをjsonやyamlでコード管理(IaC化)することで、復元することが可能になるのが運用上のメリットである。
必要な情報
今回は手動で作成したものを対象とするので、以下2つの準備が必要
・作成済みの ダッシュボードの元になった[AWS QuickSightの分析]
・作成時に使用する[QuickSight上のデータセット]
手順
①~④の順番で実行する。
① QuickSightの分析とダッシュボード作成に必要なIaC化用のtemplate作成(資料①)
→資料に記載されている"create-template.json"をもとにご自身のAWSIDと[AWS QuickSightの分析]・[QuickSight上のデータセット]を登録 AWSCLI上でテンプレートの作成とテンプレート詳細を確認
② ①で作成したtemplateを活用してダッシュボードをIaC化(資料②)
→②の資料内にあるテンプレート(yaml形式)の中でParametersのうち ”SourceTemplateArn”, ”UserPrincipal”, "DatasetARN"の3箇所を自身のAWS情報に変更 "AnalysisName"については作成したい名前に任意で変更
③AWS Cloudformation上に②で作成したyamlファイルを登録
※IAMの設定を求められるが、特に指定がなければ設定しない方がエラーの原因になりにくい
④自分が管理するQuickSight上で作成できているか?の確認
まとめ
①〜④の手順通りに実行すれば、IaC化されたQuickSightの分析とダッシュボードが30分程度で作成できる。多くの方がこの手順書を活用して、私のようなハマり方にならないことを願うばかりである。