Amazon EC2 Linux インスタンスに SSM Agent をインストールできないのはなぜですか?

最終更新日: 2021 年 6 月 7 日

Amazon Elastic Compute Cloud (Amazon EC2) Linux インスタンスに SSM Agent をインストールしようとすると、インストールが失敗します。この問題を解決するにはどうすればよいですか?

簡単な説明

SSM Agent は、以下のものを含むほとんどの Amazon Web Services (AWS) が提供する Amazon マシンイメージ (AMI) にプリインストールされています。

  • Amazon Linux
  • Amazon Linux 2
  • Amazon Linux 2 ECS に最適化ベース AMI
  • Ubuntu Server 16.04、18.04、および 20.04

ただし、RedHat、SUSE、または CentOS AMI に基づいてインスタンスを管理するには、SSM Agent を手動でインストールする必要があります。

解決方法

SSM Agent のインストールの失敗をトラブルシューティングするには、次の点を確認してください。

サポート対象外のオペレーティングシステムのバージョン

SSM Agent は、すべてのオペレーティングシステム (OS) バージョンで使用できるわけではありません。サポート対象外のバージョンの OS を実行すると、SSM Agent のインストールが失敗します。サポート対象のオペレーティングシステムのリストを確認し、ご利用の OS バージョンで SSM Agent が使用できるかどうかを確認します。

パッケージのダウンロードの失敗

SSM Agent の手動インストールプロセス中に、SSM Agent パッケージは Amazon Simple Storage Service (Amazon S3) リポジトリからダウンロードおよびインストールされます。インスタンスが S3 バケットに接続してパッケージをダウンロードできない場合、SSM Agent のインストールは失敗します。

Amazon EC2 インスタンスが S3 リポジトリにアクセスして SSM Agent パッケージをダウンロードできることを確認します。

  • インスタンスがネットワークアドレス変換 (NAT) ゲートウェイを持つプライベートサブネットにある場合は、NAT ゲートウェイを参照してください。
  • インスタンスが NAT インスタンスを持つプライベートサブネットにある場合は、NAT インスタンスを参照してください。
  • インスタンスがインターネットゲートウェイを持つパブリックサブネットにある場合は、インターネットアクセスを有効にするを参照してください。
  • インスタンスが Amazon S3 仮想プライベートクラウド (VPC) エンドポイントを持つプライベートサブネットまたはパブリックサブネットにある場合は、Amazon S3 のエンドポイントを参照してください。

パッケージのダウンロードは、次の状況でも失敗する可能性があります。

  • OS 内で設定された Domain Name System (DNS) サーバーは、Amazon S3 エンドポイントの URL を解決できません。
  • VPC の DNS 解決が無効になります。

次のコマンドを実行して、/etc/resolv.conf ファイルに DNS サーバーの正しい IP アドレスが含まれていることを確認します。その後、出力を確認し、ネームサーバーの IP アドレスが DNS サーバーの IP アドレスと一致することを確認します。

$ cat /etc/resolv.conf

SSM Agent パッケージのパブリックキーがない

SSM Agent パッケージファイルは暗号を使用して署名されています。エージェントパッケージがオリジナルであることを確認するには、パブリックキーを使用して RPM または GPG を使用してインストーラパッケージの署名を検証できます。RPM パッケージには、RPM 検証に必要な署名が既に含まれています。ただし、GPG を使用してインストーラパッケージを検証する場合は、パブリックキーを手動でインポートする必要があります。そうしないと、「amazon-ssm-agent.rpm のパブリックキーがインストールされていません」というエラーでインストールが失敗します。

詳細については、SSM Agent の署名の確認を参照してください。