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

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

AWS Systems Manager Distributor

AWS Systems Manager Distributor 允许您打包自己的软件,并查找 AWS提供的代理软件包(如 AmazonCloudWatchAgent )或要在托管实例上安装的第三方软件包(如 Trend AWS Systems ManagerMicro)。 会将软件包等资源Distributor发布到AWS Systems Manager托管实例。发布软件包会将软件包文档的特定版本 (在 中添加软件包时创建的Systems Manager文档Distributor) 公布到由托管实例 IDs、AWS账户 IDs、标签或 AWS 区域标识的托管实例。

在 中创建软件包Distributor(这会创建 AWS Systems Manager 文档)后,您可以通过以下方式之一安装软件包:

重要

Distributor 不保证您安装的第三方软件包没有任何潜在的恶意软件。我们鼓励您执行自己的额外努力,以确保符合您的内部安全控制。安全性是 AWS 和您的共同责任。这称为责任共担模型。要了解更多信息,请参阅 责任共担模型

我的组织如何从 Distributor 获益?

Distributor 具备下列优势:

  • 一个软件包,多个平台

    一个文档可以附加在不同操作系统(如 Windows、、 Ubuntu Server或 )上安装的 Debian Server.zip 文件Red Hat Enterprise Linux。有关支持的平台的更多信息,请参阅 支持的软件包平台和架构.

  • 跨托管实例组控制软件包访问权限

    您可以使用 Run Command 或 状态管理器 控制哪些托管实例能够获取软件包以及获取软件包的哪个版本。托管实例可以按实例 IDs、AWS账号、标签或AWS区域分组。您可以使用 状态管理器 关联向不同的实例组提供不同版本的软件包。

  • 包含众多 AWS 代理软件包并且随时可用

    Distributor 包含许多可供您随时部署到托管实例的 AWS 代理软件包。您可以在 Distributor 的 Packages (软件包) 列表页面中找到 Amazon. 发布的软件包,示例包括 AmazonCloudWatchAgentAWSPVDriver

  • 自动部署

    要使您的环境保持最新,请使用 状态管理器 计划在首次启动目标实例时要在其上自动部署的软件包。

谁应该使用 Distributor?

  • 需要创建新软件包或将现有软件包(包括 AWS 发布的软件包)同时部署到多个 AWS 托管实例的任何 AWS Systems Manager 客户。

  • 创建软件包的软件开发人员。

  • 负责确保 AWS Systems Manager 托管实例始终使用最新软件包的管理员。

具有哪些功能?Distributor?

  • 将软件包部署到 Windows 和 Linux 实例

    Distributor 可让您将软件包部署到适用于 Linux 和 的 EC2 实例Windows Server。有关支持的实例操作系统类型的列表,请参阅支持的软件包平台和架构.

    注意

    Distributor macOS 操作系统当前不支持 。

  • 一次性或按计划自动部署软件包

    您可以选择一次性、定期或每当默认软件包版本更改为其他版本时部署软件包。

  • 完全重新安装软件包或执行就地更新

    要安装新的软件包版本,您可以根据您提供的更新脚本完全卸载当前版本并在其位置安装新版本,或者仅使用新组件和更新组件更新当前版本。软件包应用程序在重新安装期间不可用,但在就地更新期间保持可用。对于安全监控应用程序或需要避免应用程序停机的其他情况,就地更新是特别有用的。

  • 控制台PowerShell、CLI、 和开发工具包对 Distributor 功能的访问

    您可以通过 Distributor 控制台、AWS Systems Manager、AWS CLI或您选择的 适用于 PowerShell 的 AWS 工具 开发工具包来使用 AWS

  • IAM 访问控制

    通过使用 IAM 策略,您可以控制组织的哪些成员能够创建、更新、部署或删除软件包或软件包版本。例如,您可能需要授予管理员部署软件包但不能更改软件包或创建新软件包版本的权限。

  • 支持日志记录和审计功能

    您可以通过与其他 Distributor 服务集成来审计和记录您的 AWS 账户中的 AWS 用户操作。有关更多信息,请参阅审计和记录 Distributor 活动.

什么是软件包?

软件包是包含以下内容的可安装软件或资产的集合。

  • 每个目标操作系统平台的软件 .zip 文件。每个 .zip 文件必须包含以下内容。

    • installuninstall 脚本Windows Server。基于 的实例需要PowerShell脚本(名为 install.ps1 和 的脚本uninstall.ps1)。基于 Linux 的实例需要 Shell 脚本(名为 install.shuninstall.sh 的脚本)。SSM 代理 读取并执行 installuninstall 脚本中的指令。

    • 可执行文件。SSM 代理 必须找到此可执行文件才能在目标实例上安装软件包。

  • 用于描述软件包内容的 JSON 格式的清单文件。清单不包含在 .zip 文件中,而是存储在与构成软件包的 .zip 文件相同的 Amazon S3 存储桶中。清单指定软件包版本,并将软件包中的 .zip 文件映射到目标实例属性,例如操作系统版本或架构。有关如何创建清单的信息,请参阅步骤 2:创建 JSON 软件包清单.

当您在控制台中选择 SimpleDistributor package creation (简单软件包创建) 时, 将根据软件可执行文件名称和目标平台和架构为您Distributor生成安装和卸载脚本、文件哈希以及 JSON 软件包清单。

支持的软件包平台和架构

Distributor 支持将软件包分发到作为 Systems Manager 托管实例支持的以下平台的任何分发版。版本值必须与您设定为目标的操作系统 AMI 的版本完全匹配。有关确定此版本的更多信息,请参阅的步骤 4。步骤 2:创建 JSON 软件包清单.

平台 清单文件中的代码值 架构

Windows Server

windows

x86_64386

Debian Server

debian

x86_64386

Ubuntu Server

ubuntu

x86_64386

arm64 (Ubuntu Server 16 及更高版本,A1 实例类型)

Red Hat Enterprise Linux (RHEL)

redhat

x86_64386

arm64 (RHEL 7.6 及更高版本,A1 实例类型)

CentOS

centos

x86_64386

Amazon Linux 和 Amazon Linux 2

amazon

x86_64386

arm64 (Amazon Linux 2,A1 实例类型)

SUSE Linux Enterprise Server (SLES)

suse

x86_64386

openSUSE

opensuse

x86_64386

openSUSE 平放

opensuseleap

x86_64386

Oracle Linux

oracle

x86_64