Quick SetupのDistributorライブラリを使ってOrganizations環境下のアカウントにCloudWatch Agentのインストールや更新をおこなう

2022.09.26

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

はじめに

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

先日、Systems Manager Quick Setup内のDistributorのライブラリを使って、CloudWatch Agentのインストールや更新を簡単に行えるようになりました。

上記のエントリは単一アカウントに対してセットアップをおこなう内容となっていますが、Organizations環境下のアカウントに対してセットアップを検証する機会がありましたので内容をまとめておきたいと思います。

やってみた

管理アカウントにログインしSystems Managerの「高速セットアップ」-「ライブラリ」を選択します。(Distributorのライブラリには委任アカウントの設定項目が無かったので管理アカウントにログインして操作を進めます)

「Distributor」から「作成」を選択します。

「Amazon CloudWatch agent」を選択します。更新頻度はデフォルトの「30日ごと」とします。

今回Organizationsの「組織全体」ではなく、特定のターゲット(OU)に対してセットアップを進めていくため「カスタム」を選択しOUを指定(今回は「dev」OUを指定)します。

ターゲットのリージョンを指定します。今回は東京リージョン(ap-northeast-1)のみを指定します。

対象のEC2には予め「AmazonSSMManagedInstanceCore」のロールをアタッチしているので、インスタンスプロファイルのオプションはデフォルト(チェックオフ)のままで「作成」を選択します。

セットアップが始まるので暫く待ちます。

セットアップ中、裏では対象アカウントでCloudFormationが実行されているようでした。

デプロイタイプが「組織」となっておりデプロイのステータスが「SUCCEEDED」となっていることを確認します。

セットアップの中で指定したOUに所属するアカウント内の東京リージョンで作成したEC2で状態を確認するとCloudWatch Agentがインストールされていることが確認出来ます。

[ec2-user@ip-172-31-0-245 ~]$ cat /opt/aws/amazon-cloudwatch-agent/bin/CWAGENT_VERSION
1.247355.0b252062
[ec2-user@ip-172-31-0-245 ~]$

なお、インストール直後は「停止状態」でした。

[ec2-user@ip-172-31-0-245 ~]$ sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a status
{
  "status": "stopped",
  "starttime": "",
  "configstatus": "not configured",
  "cwoc_status": "stopped",
  "cwoc_starttime": "",
  "cwoc_configstatus": "not configured",
  "version": "1.247355.0b252062"
}
[ec2-user@ip-172-31-0-245 ~]$

まとめ

単一アカウントのみならず、Organizations環境下のアカウントに対してもDistributorのライブラリを使って、CloudWatch Agentのインストールを行うことが出来ました。
Systems Manager Quick Setupでは、下記のとおりHost ManagementでもCloudWatch Agentのインストールや更新は設定できるようなので、別の機会に違いを見比べてみたいと思います。

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