如何在启动时在 Amazon EC2 Lunix 实例上安装 AWS Systems Manager Agent(SSM Agent)?

上次更新时间:2021 年 11 月 4 日

如何在启动时在 Amazon Elastic Compute Cloud(Amazon EC2)Linux 实例上安装 AWS Systems Manager Agent(SSM Agent)?

简短描述

日期等于或晚于 2017 年 9 月的 Amazon Linux 基本 Amazon Machine Image(AMI)已默认安装了 SSM Agent。Amazon Linux 2 AMI 和 Amazon Linux 2 ECS-优化基本 AMI 也已默认安装了 SSM Agent。最新的 Amazon EKS 优化 AMI 会自动安装 SSM Agent。

对于从其他版本的 Linux AMI 创建的 Amazon EC2 实例,您必须手动安装 SSM Agent。在启动之前,您可以通过向 Amazon EC2 Linux 实例添加用户数据来安装 SSM Agent。

安装 SSM 代理之前,请查看以下信息:

解决方法

1.    创建一个与 SSM 代理搭配使用的 IAM 实例配置文件

2.    按照使用启动实例向导启动实例中的步骤 1-5 操作。

3.    在 Configure Instance Details(配置实例详细信息)页面中的 IAM role(IAM 角色)下拉列表中,选择在步骤 1 中创建的实例配置文件。

4.    在配置实例详细信息页面上,展开高级详细信息

5.    对于 User data(用户数据),选择 As text(以文本形式)。在 User data(用户数据)框中,按照您的 Lunix 分配要求输入信息。

Amazon Linux 2、RHEL 7 和 CentOS 7(64 位)

#!/bin/bash
cd /tmp
sudo yum install -y https://s3.amazonaws.com/ec2-downloads-windows/SSMAgent/latest/linux_amd64/amazon-ssm-agent.rpm
sudo systemctl enable amazon-ssm-agent
sudo systemctl start amazon-ssm-agent

RHEL 8 和 CentOS 8

#!/bin/bash
cd /tmp
sudo dnf install -y https://s3.amazonaws.com/ec2-downloads-windows/SSMAgent/latest/linux_amd64/amazon-ssm-agent.rpm
sudo systemctl enable amazon-ssm-agent
sudo systemctl start amazon-ssm-agent

注意:为确保 SSM Agent 正常运行,必须在您的 RHEL 8 或 CentOS 8 实例上安装 Python 2 或 Python 3。要验证是否安装了 Python,请将以下命令添加到前面的命令示例中:

sudo dnf install python3

Amazon Linux、CentOS 6(64 位)

#!/bin/bash
cd /tmp
sudo yum install -y https://s3.amazonaws.com/ec2-downloads-windows/SSMAgent/latest/linux_amd64/amazon-ssm-agent.rpm
sudo start amazon-ssm-agent

Ubuntu 16(Deb 安装程序)、Debian 8 和 9

#!/bin/bash
mkdir /tmp/ssm
cd /tmp/ssm
wget https://s3.amazonaws.com/ec2-downloads-windows/SSMAgent/latest/debian_amd64/amazon-ssm-agent.deb
sudo dpkg -i amazon-ssm-agent.deb
sudo systemctl enable amazon-ssm-agent

Ubuntu 14(Deb 安装程序)

#!/bin/bash
mkdir /tmp/ssm
cd /tmp/ssm
wget https://s3.amazonaws.com/ec2-downloads-windows/SSMAgent/latest/debian_amd64/amazon-ssm-agent.deb
sudo dpkg -i amazon-ssm-agent.deb
sudo start amazon-ssm-agent

Suse 12

#!/bin/bash
mkdir /tmp/ssm
cd /tmp/ssm
wget https://s3.amazonaws.com/ec2-downloads-windows/SSMAgent/latest/linux_amd64/amazon-ssm-agent.rpm
sudo rpm --install amazon-ssm-agent.rpm
sudo systemctl enable amazon-ssm-agent
sudo systemctl start amazon-ssm-agent

有关更多信息,请参阅用户数据和控制台。

6.    完成添加其他参数,如存储、标签和安全组。

7.    启动您的实例。