如何使用 AWS Systems Manager 将正在运行的 EC2 Windows 实例加入 AWS Directory Service 域?
上次更新日期:2020 年 12 月 18 日
我想使用 AWS Systems Manager 将正在运行的 Amazon Elastic Compute Cloud (Amazon EC2) 实例加入 AWS Directory Service 域。我该如何操作?
简短描述
您可以使用 AWS Systems Manager 自动将正在运行的实例加入域。您可以使用适用于 Microsoft Active Directory 的 AWS Directory Service 或 Simple AD 在 AWS Directory Service 上托管域。该域也可以位于使用 AD Connector 目录网关的本地网络上。
解决方法
你可以结合使用 Run Command 和 AWS 提供的文档 AWS-JoinDirectoryServiceDomain 将正在运行的 Windows EC2 实例加入 AWS Directory Service 目录。
先决条件
- AWS Directory Service 目录
- Windows EC2 实例
- Systems Manager 先决条件
- AWS Identity and Access Management (IAM) 实例配置文件角色附加了以下权限策略,以便 Systems Manager 和目录加入访问:
AmazonSSMManagedInstanceCore
AmazonSSMDirectoryServiceAccess
注意:如果您为 Systems Manager 使用 Amazon Virtual Private Cloud (Amazon VPC) 终端节点,则将 EC2 实例加入 AWS Directory Service 域的请求将失败。有关更多信息,请参阅 VPC 终端节点限制。
将 Amazon EC2 Windows 实例加入 AWS Directory Service 目录
重要提示:目标实例将会自动重启,以完成加入域。在开始之前,请确保重启实例对于您的基础设施来说是安全的。
- 打开 Amazon EC2 控制台,选择您所在的区域,然后从导航窗格中选择实例。
- 选择您的目标实例。在描述选项卡上,对于 IAM 角色,请确认已附加针对 Systems Manager 和目录加入访问配置的角色。有关更多详细信息,请参阅为 Systems Manager 创建 IAM 实例配置文件。
注意:要更新附加的 IAM 角色,请选择操作、实例设置、附加/替换 IAM 角色。 - 打开 AWS Systems Manager 控制台,选择您所在的区域,然后从导航窗格中选择 Run Command。
- 选择运行命令。
- 搜索文档 AWS-JoinDirectoryServiceDomain。然后从搜索结果中选择 AWS-JoinDirectoryServiceDomain。
- 对于命令参数,请输入以下内容:
对于目录 Id,请输入 AWS Directory Service 目录的 ID。
对于域名,请输入目录的 DNS 名称。
(可选)对于 Dns Ip 地址,请输入目录中的 DNS 服务器的 IP 地址,每行一个。如果已在 DHCP 选项集中配置了域 DNS 服务器,则此步骤不是必需的。
注意:要查找第 6 步中用于您的目录的值,请打开 AWS Directory Service 控制台,然后从导航窗格中选择 Directories(目录)。选择您的目录的目录 ID 链接,然后在目录详细信息部分找到相应的值。 - 对于 Targets(目标),请选择 Choose instances manually(手动选择实例),然后选择想要加入域的实例。
- 选择 Run(运行)。
- 当 Command status(命令状态)报告 Success(成功)时,在Targets and outputs(目标和输出)部分选择 Instance Id(实例 Id)。您可以查看命令输出,并验证实例是否已成功加入域。
问题排查
如果实例无法加入目录域,则验证该实例是否能够使用 DirectoryServicePortTest 应用程序与 Directory Service 通信。
有关使用 AWS Systems Manager 代理和其他问题排查步骤的更多信息,请参阅 AWS Systems Manager 托管实例。
有关更多问题排查策略,请参阅 Microsoft 网站上的如何解决将基于 Windows 的计算机加入域时发生的错误。