AWS Systems Manager
用户指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

配置 SSM 代理以使用代理

您可以将 http_proxyhttps_proxyno_proxy 设置添加到 amazon-ssm-agent.override 配置文件中,从而将 SSM 代理配置为通过 HTTP 通信。如果您安装 SSM 代理的较新或较早版本,覆盖文件还会保留代理设置。本节包含适用于 upstartsystemd 环境的过程。

注意

从 Amazon Linux AMI 创建的使用代理的实例必须运行 Python requests 模块的最新版本,才能支持 Patch Manager 操作。有关更多信息,请参阅 在使用代理服务器的 Amazon Linux 实例上升级 Python Requests 模块

配置 SSM 代理以使用代理 (Upstart)

  1. 连接到已安装 SSM 代理的实例。

  2. 打开一个简单编辑器 (例如 VIM) 并指定以下设置:

    env http_proxy=http://hostname:port env https_proxy=http(s)://hostname:port env no_proxy=169.254.169.254

    注意

    您必须添加 no_proxy 设置到文件并指定此处列出的 IP 地址。它是 Systems Manager 的实例元数据终端节点。如果没有此 IP 地址,对 Systems Manager 的调用将失败。

  3. 将文件另存为以下位置中的 amazon-ssm-agent.override/etc/init/

  4. 使用以下命令停止和重新启动 SSM 代理:

    sudo stop amazon-ssm-agent sudo start amazon-ssm-agent

注意

有关在 Upstart 环境中使用 .override 文件的更多信息,请参阅 init: Upstart init daemon job configuration

配置 SSM 代理以使用代理 (systemd)

以下过程中的步骤介绍了如何配置 SSM 代理 以在 systemd 环境中使用代理。此过程中的某些步骤包含适用于 Ubuntu Server 实例(通过使用 Snap 安装)的明确说明。

  1. 连接到已安装 SSM 代理的实例。

  2. 运行以下命令:

    systemctl edit amazon-ssm-agent

    对于通过使用 Snap 安装的 Ubuntu Server 实例,请运行以下命令:

    systemctl edit snap.amazon-ssm-agent.amazon-ssm-agent
  3. 指定以下设置:

    [Service] Environment="http_proxy=http://hostname:port" Environment="https_proxy=http(s)://hostname:port" Environment="no_proxy=169.254.169.254"

    注意

    您必须添加 no_proxy 设置到文件并指定此处列出的 IP 地址。它是 Systems Manager 的实例元数据终端节点。如果没有此 IP 地址,对 Systems Manager 的调用将失败。

  4. 保存您的更改。系统在实例的 etc/systemd/system/amazon-ssm-agent.service.d 文件夹中创建一个名为 amazon-ssm-agent.override(在 Amazon Linux 2 上为 override.conf)的文件。

  5. 使用以下命令重新启动 SSM 代理:

    sudo systemctl stop amazon-ssm-agent sudo systemctl daemon-reload

    对于通过使用 Snap 安装的 Ubuntu Server 实例,使用以下命令重新启动 SSM 代理:

    systemctl start snap.amazon-ssm-agent.amazon-ssm-agent

注意

有关在系统化环境中使用 .override 文件的更多信息,请参阅修改现有 Unit 文件