SSM エージェントをインストールした覚えがないのに、Systems manager の機能が利用できた理由を教えてください

2023.01.30

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

困っていた内容

Systems manager の機能を利用するためには、SSM エージェント(AWS Systems Manager Agent)を EC2 インスタンスにインストールする必要がある認識です。
一方で、EC2 インスタンスに SSM エージェントをインストールした覚えがない段階でも、Systems manager の機能を利用することができました。
その原因を教えてください。

どう対応すればいいの?

多くの AMI で予め SSM Agent がインストールされている場合があります。
そのため、AMI に予め SSM Agent がインストールされている場合、利用者で新たに SSM Agent をインストールする必要はありません。

SSM Agent がプリインストールされた Amazon Machine Images (AMIs) - AWS Systems Manager

たとえば、次のいずれかのオペレーティングシステムで AMI から作成された Amazon Elastic Compute Cloud (Amazon EC2) インスタンスを起動すると、SSM Agent がすでにインストールされている場合があります。

・2017 年 9 月以降の Amazon Linux Base AMI
・Amazon Linux 2
・Amazon Linux 2 ECS に最適化されたベース AMIs
・Amazon EKS 最適化 Amazon Linux AMIs
・macOS 10.14.x (Mojave)、10.15.x (Catalina)、11.x (Big Sur)
・SUSE Linux Enterprise Server(SLES) 12 と 15
・Ubuntu Server 16.04、18.04、および 20.04
・2016 年 11 月以降に公開された Windows Server 2008-2012 R2 AMIs
・Windows Server 2016、2019、および 2022

以下のコマンドで SSM Agent がインストール済みであるのかを確認することができます。
OS ごとにコマンドが異なります。

# Amazon Linux	
sudo status amazon-ssm-agent

# Amazon Linux 2	
sudo systemctl status amazon-ssm-agent

# CentOS 6.x	
sudo status amazon-ssm-agent

# CentOS 7.x および CentOS 8.x	
sudo systemctl status amazon-ssm-agent

# Debian Server 8、9、10	
sudo systemctl status amazon-ssm-agent

# macOS	
/var/log/amazon/ssm/amazon-ssm-agent.log で、エージェントのログファイルを確認します。	

# Oracle Linux	
sudo systemctl status amazon-ssm-agent

# Red Hat Enterprise Linux (RHEL) 6.x	
sudo status amazon-ssm-agent

# Red Hat Enterprise Linux (RHEL) 7.x および 8.x	
sudo systemctl status amazon-ssm-agent

# SUSE Linux Enterprise Server (SLES)	
sudo systemctl status amazon-ssm-agent

# Ubuntu Server 14.04 (すべて) および 16.04 (32 ビット)	
sudo status amazon-ssm-agent

# Ubuntu Server 16.04 64 ビットインスタンス (deb パッケージのインストール)	
sudo systemctl status amazon-ssm-agent

# Ubuntu Server 16.04、18.04、20.04 LTS および 20.10 STR 64 ビット (スナップパッケージインストール)	
sudo systemctl status snap.amazon-ssm-agent.amazon-ssm-agent.service

# Windows Server	
PowerShell で実行する:
Get-Service AmazonSSMAgent

参考資料

SSM Agent がプリインストールされた Amazon Machine Images (AMIs) - AWS Systems Manager
SSM Agent ステータスの確認とエージェントの起動 - AWS Systems Manager