你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
多云连接器的 Arc 载入解决方案会在连接的公有云中自动发现 VM,然后安装 Azure Connected Machine 代理,将 VM 载入到 Azure Arc。目前,支持 AWS 公有云环境中的 EC2 实例。
通过这种简化的体验,便可使用 Azure Monitor 等 Azure 管理服务,从而实现集中管理 Azure 和 AWS VM。
将公有云连接到 Azure 时,可以启用 Arc 载入解决方案。
Prerequisites
除了 连接公有云的一般先决条件外,请确保满足 Arc 载入 解决方案的要求。 这包括将每个 EC2 实例载入 Azure Arc 的要求。
- 须拥有公有云中的 AmazonEC2FullAccess 权限。
- EC2 实例必须满足安装 Connected Machine 代理的一般先决条件。
- EC2 实例必须安装 AWS 系统管理器 (SSM) 代理。 如果使用 受支持的 OS,则大多数 EC2 实例都预配置了此代理。
EC2 实例还必须包括以下部分中所述的权限。
所需的 AWS 权限
部署 CloudFormation 模板后,必须通过 ArcForServerSSMInstanceProfile 在每个 EC2 实例上附加ArcForServerSSMRole IAM 角色。 此角色包括 AmazonSSMManagedInstanceCore 策略,该策略使 EC2 实例上运行的 SSM 代理能够执行 Azure Arc 所需的操作,以便于发现、管理和集成到 Azure Arc 中。
ArcForServerRole IAM 角色由 Azure Arc 使用 OIDC 联合标识承担。 此角色使 Azure Arc 能够远程触发和监视 SSM 命令,以及检索 EC2 和 CloudFormation 元数据,从而允许它从 AWS 外部管理实例。 此角色包括以下权限:
| 许可 | DESCRIPTION |
|---|---|
| ssm:SendCommand | 允许向一个或多个托管实例发送命令。 用于在目标计算机上执行载入脚本。 |
| ssm:CancelCommand | 允许取消当前在托管实例上运行的命令。 用于根据需要停止载入命令。 |
| ssm:DescribeInstanceInformation | 允许查看有关托管实例的信息。 用于标识安装了 SSM 代理并由 SSM 管理的 EC2 实例,这是载入 Azure Arc 所必需的。 |
| ssm:GetCommandInvocation | 允许查看已发送的命令的详细信息和结果。 用于监视载入脚本的状态和输出。 |
| ec2:DescribeInstances | 允许检索有关 EC2 实例的信息。 用于检查实例的当前状态,以确定加入 Azure Arc 的资格。 |
| ec2:DescribeImages | 允许检索有关 Amazon Machine Images(AMIS)的信息。 用于验证实例的操作系统详细信息。 |
| cloudformation:ListStackInstances | 允许列出 AWS CloudFormation 堆栈中的所有堆栈实例。 用于标识通过 CloudFormation 创建的资源,这些资源与载入相关。 只有 AWS 组织中的帐户才需要此权限,但默认情况下,管理帐户和成员帐户均可用。 |
注释
这些权限捆绑到 ArcForServerRole IAM 角色中,并通过 CloudFormation 模板自动预配。 但是,显式拒绝策略将覆盖允许的权限,并可以阻止加入。 为了避免部署失败,请确保未实施此类拒绝策略。
可选 AWS 权限
除了 ArcForServerRole 权限,还可以选择授予自动将 SSM 实例配置文件附加到 EC2 计算机的权限。 此选项通过正确配置 SSM 代理来简化 Azure Arc 载入,而无需手动干预。 如果未启用这些权限,则必须手动将 SSM 实例配置文件附加到 EC2 计算机。
在 CloudFormation 模板中配置以下参数来控制此行为:
EC2SSMIAMRoleAutoAssignment(默认值:true:允许自动将用于 SSM 任务的 IAM 角色分配给 EC2 实例。 设置为 false 以禁用此功能并手动管理实例配置文件。EC2SSMIAMRoleAutoAssignmentSchedule(默认值::Enable控制自动分配进程是否定期运行。 将其设置为Disable以关闭计划检查。EC2SSMIAMRoleAutoAssignmentScheduleInterval(默认值:1 天):定义自动分配 Lambda 函数的运行频率(例如,15 分钟、6 小时、1 天)。EC2SSMIAMRolePolicyUpdateAllowed(默认值:true)允许系统使用缺少所需的 SSM 权限更新现有 IAM 角色。
若要支持自动实例配置文件分配,必须允许以下权限:
小窍门
如果启用了基于 Lambda 的自动分配(EC2SSMIAMRoleAutoAssignment),则会自动预配这些权限。 否则,必须手动确保 EC2 实例附加了正确的实例配置文件。
| 许可 | DESCRIPTION |
|---|---|
| ec2:DescribeInstances | 允许查看 EC2 实例。 |
| ec2:DescribeRegions | 允许检索可用的 AWS 区域。 |
| ec2:DescribeIamInstanceProfileAssociations | 允许查看现有的 IAM 实例配置文件关联。 |
| ec2:AssociateIamInstanceProfile | 允许将实例配置文件附加到 EC2 实例。 |
| ec2:DisassociateIamInstanceProfile | 允许从 EC2 实例分离实例配置文件。 |
| iam:GetInstanceProfile | 允许检索实例简介信息。 |
| iam:列出附加的角色策略 | 允许查看附加到 IAM 角色的角色策略。 |
| iam:AttachRolePolicy | 允许将策略附加到 IAM 角色。 |
| iam:PassRole | 允许将角色传递给 EC2 等服务。 |
| iam:AddRoleToInstanceProfile | 允许向实例配置文件添加角色。 |
| logs:CreateLogGroup, logs:CreateLogStream, logs:PutLogEvents | 允许将日志从 Lambda 写入 CloudWatch。 |
| ssm:GetServiceSetting | 允许获取与 SSM 服务相关的设置。 |
Azure 中的 AWS 资源表示形式
连接 AWS 云并启用 Arc 载入解决方案后,Multicloud 连接器会使用命名约定 aws_yourAwsAccountId 创建一个新资源组。
当 EC2 实例连接到 Azure Arc 时,这些计算机的表示形式会显示在此资源组中。 这些资源通过使用标准映射方案放置在 Azure 区域中。 可以筛选要为哪些 Azure 区域执行扫描。 默认扫描所有区域,但配置解决方案时可以选择排除某些区域。
aws_yourAwsAccountId 资源组继承其订阅的权限。 可以根据需要向租户中的用户帐户授予额外的访问权限,以启用特定场景。
连接方法
创建 Arc 载入解决方案时,选择 Connected Machine 代理是应通过公共终结点还是代理服务器连接到 Internet。 如果选择“代理服务器”,则需要提供 EC2 实例可以连接到的代理服务器 URL。
有关详细信息,请参阅 Connected Machine 代理网络要求。
定期同步选项
配置 Arc 载入解决方案时选择的定期同步时间决定了 AWS 帐户进行扫描和同步到 Azure 的频率。 通过启用定期同步,每当发现符合先决条件的新 EC2 实例时,都会自动安装 Arc 代理。 定期同步选项还有助于清理 Azure 中的资源。 例如,如果从 AWS 中删除 EC2 实例,也会删除在 Azure 中aws_accountId资源组中创建的相应 Arc 服务器。
如果愿意,可以在配置此解决方案时关闭定期同步。 如果执行了此操作,新的 EC2 实例不会自动载入到 Azure Arc,因为 Azure 无法扫描新实例。
EC2 筛选器选项
可以选择根据 AWS 区域或 AWS 标记筛选以扫描 EC2 实例。
可以选择特定区域来扫描 EC2 资源。 还可以按 AWS 标记进行筛选,以便只有具有匹配标记(不区分大小写)的 EC2 计算机才有资格加入 EC2。
Next steps
- 详细了解如何通过 Azure Arc 管理连接的服务器。
- 了解 Multicloud 连接器“清单”解决方案。