AWS Systems Manager 文档
AWS Systems Manager 文档 (SSM document) 定义 Systems Manager 对您的托管实例执行的操作。Systems Manager 包括 100 个预先配置的文档,您可以在运行时通过指定参数进行使用。您可以在 Systems Manager 文档控制台中找到预配置的文档,方法是选择 Owned by Amazon(Amazon 所有)选项卡,或者通过在调用 ListDocuments
API 操作时指定 Amazon Owner
筛选条件。文档使用 JavaScript 对象表示法 (JSON) 或 YAML,并包括您指定的步骤和参数。要开始使用 SSM 文档,请打开 Systems Manager 控制台
重要
在 Systems Manager 中,Amazon 拥有的 SSM 文档是由 Amazon Web Services 自己创建和管理的文档。Amazon 拥有的文档在文档名称中包含 AWS-*
之类的前缀。文档的所有者被视为 Amazon,而不是 AWS 内的特定用户账户。这些文档可供所有人公开使用。
我的组织如何从文档功能获益?
文档是 AWS Systems Manager 的一种功能,具有以下优点:
-
文档类别
为了帮助您找到所需的文档,请根据要搜索的文档类型选择一个类别。要扩大搜索范围,您可以选择同一文档类型的多个类别。不支持选择不同文档类型的类别。分类仅支持 Amazon 拥有的文档。
-
文档版本
您可以创建并保存不同版本的文档。您可以为每个文档指定默认版本。文档的默认版本可以更新到较新版本或恢复到较旧版本。当您更改文档的内容时,Systems Manager 将自动递增文档的版本。您可以通过在控制台、AWS Command Line Interface (AWS CLI) 命令或 API 调用中指定文档版本来检索或使用任何版本的文档。
-
根据您的需求自定义文档
如果您要通过文档自定义步骤和操作,可以自行创建文档。系统将文档与您的 AWS 账户 一起存储在创建其所在的 AWS 区域 中。有关如何创建 SSM 文档的更多信息,请参阅 创建 SSM 文档内容。
-
标记文档
您可以标记文档,以便根据为其分配的标签快速识别一个或多个文档。例如,您可以为特定环境、部门、用户、组或时间段的文档添加标签。此外,您还可以通过创建一个指定用户或组可访问的标签的 AWS Identity and Access Management (IAM) policy 来限制对文档的访问。
-
共享文档
您可以将文档公开,或者将它们与同一 AWS 区域 区域中的特定 AWS 账户 共享。在账户之间共享文档可能很有用,例如,如果您希望提供给客户或员工的所有 Amazon Elastic Compute Cloud (Amazon EC2) 实例都能够具有相同配置。除了保持实例上的应用程序或补丁的最新状态,您可能还希望限制客户实例执行某些活动。或者,您可能需要确保整个组织的员工账户使用的实例均被授予访问特定内部资源的访问权限。有关更多信息,请参阅 共享 SSM 文档。
谁应该使用文档?
-
任何希望使用 Systems Manager 功能大规模提高其运营效率、减少与手动干预相关的错误以及缩短解决常见问题的时间的 AWS 客户。
-
希望自动执行部署和配置任务的基础设施专家。
-
想要可靠地解决常见问题、提高故障排除效率和减少重复性操作的管理员。
-
想要自动执行通常需要手动执行的任务的用户。
SSM 文档有哪些类型?
下表介绍了不同类型的 SSM 文档及其使用。
类型 | 一起使用 | 详细信息 |
---|---|---|
ApplicationConfiguration ApplicationConfigurationSchema |
AWS AppConfig 是 AWS Systems Manager 的一项功能,可让您创建、管理以及快速部署应用程序配置。您可以通过创建使用 如果在 SSM 文档中创建配置,则必须指定对应的 JSON Schema。该 schema 使用 |
|
自动化运行手册 |
在执行常规维护和部署任务 – 如创建或更新 Amazon Machine Image (AMI)时使用自动化手册 - 使用自动化运行手册。State Manager 使用自动化运行手册应用配置。这些操作可以在实例生命周期内的任何时刻在一个或多个目标上运行。Maintenance Windows 使用自动化运行手册基于指定的计划执行常规维护和部署任务。 macOS 的 EC2 实例也支持基于 Linux 的操作系统支持的所有自动化运行手册。 |
|
更改日历文档 |
Change Calendar (AWS Systems Manager的一种功能)使用 Change Calendar 在 EC2 实例上不支持 macOS。 |
|
AWS CloudFormation 模板 |
AWS CloudFormation 模板描述您要在 CloudFormation 堆栈中调配的资源。通过将 CloudFormation 模板存储为 Systems Manager 文档,您可以受益于 Systems Manager 文档功能。其中包括创建和比较模板的多个版本,以及与同一 AWS 区域 中的其它账号共享模板。 您可以使用 Systems Manager 的一种功能 Application Manager 创建和编辑 CloudFormation 模板和堆栈。有关更多信息,请参阅 在 Application Manager 中使用 AWS CloudFormation 模板和堆栈。 |
|
命令文档 |
Run Command(AWS Systems Manager 的一种功能)使用命令文档运行命令。State Manager(AWS Systems Manager 的一种功能)使用命令文档应用配置。这些操作可以在实例生命周期内的任何时刻在一个或多个目标上运行。Maintenance Windows (AWS Systems Manager 的一种功能)使用命令文档基于指定的计划应用配置。 大多数命令文档在所有 Linux 和 Systems Manager 所支持的 Windows Server 操作系统上受支持。macOS 的 EC2 实例支持以下命令文档:
|
|
AWS Config 一致性包模板 |
AWS Config 一致性包模板是 YAML 格式的文档,用于创建包含 AWS Config 规则(托管或自定义)和修复操作列表的一致性包。 有关更多信息,请参阅一致性包。 |
|
软件包文档 |
在 Distributor (AWS Systems Manager 的一种功能)中,软件包用 SSM 文档表示。软件包文档包括附加的 ZIP 存档文件,其中包含要在托管实例上安装的软件或资产。在 Distributor 中创建软件包会创建软件包文档。 Oracle Linux 和 macOS 托管实例上不受支持 Distributor。 |
|
策略文档 |
清单(AWS Systems Manager 的一种功能) 使用 Systems Manager 清单和 |
|
事件后分析模板 |
Incident Manager 使用事件后分析模板基于 AWS 运营管理最佳实践创建分析。 使用模板创建分析,您的团队可以使用该分析来了解如何改进事件响应。 |
|
会话文档 |
Session Manager(AWS Systems Manager 的一种功能)使用会话文档确定要启动哪些类型的会话,例如端口转发会话、运行交互式命令的会话或创建 SSH 隧道的会话。 Systems Manager 支持的所有 Linux 和 Windows Server 操作系统都支持会话文档。macOS 的 EC2 实例支持以下命令文档:
|
SSM 文档配额
有关 SSM 服务配额的更多信息,请参阅《Amazon Web Services 一般参考》中的 Systems Manager Service Quotas。