你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

使用 Azure Arc 启用的多云连接器查看多云清单

多云连接器的清单解决方案显示 Azure 中来自其他公有云的资源的最新视图,提供一个单一位置来查看所有云资源。 目前,支持 AWS 公有云环境。

重要

Azure Arc 启用的多云连接器目前为预览版。 有关 beta 版本、预览版或尚未正式发布的版本的 Azure 功能所适用的法律条款,请参阅 Microsoft Azure 预览版的补充使用条款

启用清单解决方案后,来自源云中的资产的元数据包含在 Azure 中的资产表示形式中。 还可以将 Azure 标记或 Azure 策略应用于这些资源。 借助此解决方案,可通过 Azure Resource Graph 查询所有云资源,例如查询来查找具有特定标记的所有 Azure 和 AWS 资源。

清单解决方案会定期扫描源云,以更新 Azure 中表示的视图。 可以在连接公有云和配置清单解决方案时,指定查询间隔。

提示

目前,建议不要将多云连接器清单解决方案与已连接到 Azure Arc的 EC2 实例配合使用,并且驻留在与连接器资源不同的订阅中。 这样做会在 Azure 中创建 EC2 实例的重复记录。

支持的 AWS 服务

现在,与以下 AWS 服务关联的资源会被扫描并在 Azure 中表示。 创建清单解决方案时,默认情况下会选择所有可用服务,但是你可选择包括任何服务。

下表显示了已扫描的 AWS 服务、与每个服务关联的资源类型,以及对应于每种资源类型的 Azure 命名空间。

AWS 服务 AWS 资源类型 Azure 命名空间
API Gateway apiGatewayRestApis Microsoft.AwsConnector/apiGatewayRestApis
API Gateway apiGatewayStages Microsoft.AwsConnector/apiGatewayStages
Cloud Formation cloudFormationStacks Microsoft.AwsConnector/cloudFormationStacks
Cloud Formation cloudFormationStackSets Microsoft.AwsConnector/cloudFormationStackSets
Cloud Trail cloudTrailTrails Microsoft.AwsConnector/cloudTrailTrails
Cloud Watch cloudWatchAlarms Microsoft.AwsConnector/cloudWatchAlarms
Dynamo DB dynamoDBTables Microsoft.AwsConnector/dynamoDBTables
EC2 ec2Instances Microsoft.HybridCompute/machines/EC2InstanceIdMicrosoft.AwsConnector/Ec2Instances
EC2 ec2KeyPairs Microsoft.AwsConnector/ec2KeyPairs
EC2 ec2Subnets Microsoft.AwsConnector/ec2Subnets
EC2 ec2Volumes Microsoft.AwsConnector/ec2Volumes
EC2 ec2VPCs Microsoft.AwsConnector/ec2VPCs
EC2 ec2NetworkAcls Microsoft.AwsConnector/ec2NetworkAcls
EC2 ec2NetworkInterfaces Microsoft.AwsConnector/ec2NetworkInterfaces
EC2 ec2RouteTables Microsoft.AwsConnector/ec2RouteTables
EC2 ec2VPCEndpoints Microsoft.AwsConnector/ec2VPCEndpoints
EC2 ec2VPCPeeringConnections Microsoft.AwsConnector/ec2VPCPeeringConnections
EC2 ec2InstanceStatuses Microsoft.AwsConnector/ec2InstanceStatuses
EC2 ec2SecurityGroups Microsoft.AwsConnector/ec2SecurityGroups
ECR ecrRepositories Microsoft.AwsConnector/ecrRepositories
ECS ecsClusters Microsoft.AwsConnector/ecsClusters
ECS ecsServices Microsoft.AwsConnector/ecsServices
ECS ecsTaskDefinitions Microsoft.AwsConnector/ecsTaskDefinitions
EFS efsFileSystems Microsoft.AwsConnector/efsFileSystems
EFS efsMountTargets Microsoft.AwsConnector/efsMountTargets
Elastic Beanstalk elasticBeanstalkEnvironments Microsoft.AwsConnector/elasticBeanstalkEnvironments
弹性负载均衡器 V2 elasticLoadBalancingV2LoadBalancers Microsoft.AwsConnector/elasticLoadBalancingV2LoadBalancers
弹性负载均衡器 V2 elasticLoadBalancingV2Listeners Microsoft.AwsConnector/elasticLoadBalancingV2Listeners
弹性负载均衡器 V2 elasticLoadBalancingV2TargetGroups Microsoft.AwsConnector/elasticLoadBalancingV2TargetGroups
Elastic Search elasticsearchDomains Microsoft.AwsConnector/elasticsearchDomains
GuardDuty guardDutyDetectors Microsoft.AwsConnector/guardDutyDetectors
IAM iamGroups Microsoft.AwsConnector/iamGroups
IAM iamManagedPolicies Microsoft.AwsConnector/iamManagedPolicies
IAM iamServerCertificates Microsoft.AwsConnector/iamServerCertificates
IAM iamUserPolicies Microsoft.AwsConnector/iamUserPolicies
IAM iamVirtualMFADevices Microsoft.AwsConnector/iamVirtualMFADevices
KMS kmsKeys Microsoft.AwsConnector/kmsKeys
Lambda lambdaFunctions Microsoft.AwsConnector/lambdaFunctions
Lightsail lightsailInstances Microsoft.AwsConnector/lightsailInstances
Lightsail lightsailBuckets Microsoft.AwsConnector/lightsailBuckets
日志 logsLogGroups Microsoft.AwsConnector/logsLogGroups
日志 logsLogStreams Microsoft.AwsConnector/logsLogStreams
日志 logsMetricFilters Microsoft.AwsConnector/logsMetricFilters
日志 logsSubscriptionFilters Microsoft.AwsConnector/logsSubscriptionFilters
Macie macieAllowLists Microsoft.AwsConnector/macieAllowLists
网络防火墙 networkFirewallFirewalls Microsoft.AwsConnector/networkFirewallFirewalls
网络防火墙 networkFirewallFirewallPolicies Microsoft.AwsConnector/networkFirewallFirewallPolicies
网络防火墙 networkFirewallRuleGroups Microsoft.AwsConnector/networkFirewallRuleGroups
组织 organizationsAccounts Microsoft.AwsConnector/organizationsAccounts
组织 organizationsOrganizations Microsoft.AwsConnector/organizationsOrganizations
RDS rdsDBInstances Microsoft.AwsConnector/rdsDBInstances
RDS rdsDBClusters Microsoft.AwsConnector/rdsDBClusters
RDS rdsEventSubscriptions Microsoft.AwsConnector/rdsEventSubscriptions
Redshift redshiftClusters Microsoft.AwsConnector/redshiftClusters
Redshift redshiftClusterParameterGroups Microsoft.AwsConnector/redshiftClusterParameterGroups
Route 53 route53HostedZones Microsoft.AwsConnector/route53HostedZones
SageMaker sageMakerApps Microsoft.AwsConnector/sageMakerApps
SageMaker sageMakerDevices Microsoft.AwsConnector/sageMakerDevices
SageMaker sageMakerImages Microsoft.AwsConnector/sageMakerImages
S3 s3Buckets Microsoft.AwsConnector/s3Buckets
S3 s3BucketPolicies Microsoft.AwsConnector/s3BucketPolicies
S3 s3AccessPoints Microsoft.AwsConnector/s3AccessPoints
SNS snsTopics Microsoft.AwsConnector/snsTopics
SQS sqsQueues Microsoft.AwsConnector/sqsQueues

Azure 中的 AWS 资源表示形式

连接 AWS 云并启用清单解决方案后,多云连接器会使用命名约定 aws_yourAwsAccountId 创建一个新的资源组。 使用上一部分所述的 AwsConnector 命名空间值,在此资源组中创建 AWS 资源的 Azure 表示形式。 可以将 Azure 标记和策略应用于这些资源。

在 AWS 中发现并投影到 Azure 的资源将使用标准映射方案放置在 Azure 区域中。

定期同步选项

配置清单解决方案时选择的定期同步时间决定了 AWS 帐户进行扫描和同步到 Azure 的频率。 通过启用定期同步,AWS 资源的更改将反映在 Azure 中。 例如,如果在 AWS 中删除某个资源,则也会在 Azure 中删除该资源。

如果愿意,可以在配置此解决方案时关闭定期同步。 如果这样做,Azure 表示形式可能与 AWS 资源不同步,因为 Azure 无法重新扫描和检测任何更改。

在 Azure Resource Graph 中查询资源

Azure Resource Graph 是一项 Azure 服务,旨在通过提供高效、高性能的资源探索来扩展 Azure 资源管理。 跨一组给定的订阅大规模运行查询可帮助你有效地控制环境。

可以使用 Azure 门户中的 Resource Graph 资源管理器运行查询。 此处显示了常见方案的一些示例查询。

查询所有载入的多云资产清单

resources
| where subscriptionId == "<subscription ID>"
| where id contains "microsoft.awsconnector" 
| union (awsresources | where type == "microsoft.awsconnector/ec2instances" and subscriptionId =="<subscription ID>")
| extend awsTags= properties.awsTags, azureTags = ['tags']
| project subscriptionId, resourceGroup, type, id, awsTags, azureTags, properties 

查询特定连接器下的所有资源

resources
| extend connectorId = tolower(tostring(properties.publicCloudConnectorsResourceId)), resourcesId=tolower(id)
| join kind=leftouter (
    awsresources
    | extend pccId = tolower(tostring(properties.publicCloudConnectorsResourceId)), awsresourcesId=tolower(id)
    | extend parentId = substring(awsresourcesId, 0, strlen(awsresourcesId) - strlen("/providers/microsoft.awsconnector/ec2instances/default"))
) on $left.resourcesId == $right.parentId
| where connectorId =~ "yourConnectorId" or pccId =~ "yourConnectorId"
| extend resourceType = tostring(split(iif (type =~ "microsoft.hybridcompute/machines", type1, type), "/")[1])

查询 Azure 和 AWS 中的所有虚拟机及其实例大小

resources 
| where (['type'] == "microsoft.compute/virtualmachines") 
| union (awsresources | where type == "microsoft.awsconnector/ec2instances")
| extend cloud=iff(type contains "ec2", "AWS", "Azure")
| extend awsTags=iff(type contains "microsoft.awsconnector", properties.awsTags, ""), azureTags=tags
| extend size=iff(type contains "microsoft.compute", properties.hardwareProfile.vmSize, properties.awsProperties.instanceType.value)
| project subscriptionId, cloud, resourceGroup, id, size, azureTags, awsTags, properties

跨 Azure 和 AWS 查询所有函数

resources
| where (type == 'microsoft.web/sites' and ['kind'] contains 'functionapp') or type == "microsoft.awsconnector/lambdafunctionconfigurations"
| extend cloud=iff(type contains "awsconnector", "AWS", "Azure")
| extend functionName=iff(cloud=="Azure", properties.name,properties.awsProperties.functionName), state=iff(cloud=="Azure", properties.state, properties.awsProperties.state), lastModifiedTime=iff(cloud=="Azure", properties.lastModifiedTimeUtc,properties.awsProperties.lastModified), location=iff(cloud=="Azure", location,properties.awsRegion),  tags=iff(cloud=="Azure", tags, properties.awsTags)
| project cloud, functionName, lastModifiedTime, location, tags

查询具有特定标记的所有资源

resources 
| extend awsTags=iff(type contains "microsoft.awsconnector", properties.awsTags, ""), azureTags=tags 
| where awsTags contains "<yourTagValue>" or azureTags contains "<yourTagValue>" 
| project subscriptionId, resourceGroup, name, azureTags, awsTags

后续步骤