Azure Arc tarafından etkinleştirilen çoklu bulut bağlayıcısı ile çoklu bulut envanterini görüntüleme

Çoklu bulut bağlayıcısının Envanter çözümü, Azure'daki diğer genel bulutlardaki kaynaklarınızın güncel bir görünümünü gösterir ve size tüm bulut kaynaklarınızı görmek için tek bir yer sağlar.

Şu anda, çoklu bulut bağlayıcısı şu genel bulutlardan kaynakları bağlamak için destek sağlar:

  • Amazon Web Services (AWS)
  • Google Cloud Platform (GCP) (önizleme)

Envanter çözümünü etkinleştirdikten sonra, kaynak buluttaki varlıklardaki meta veriler Azure'daki varlık gösterimlerine eklenir. Ayrıca bu kaynaklara Azure etiketleri veya Azure ilkeleri uygulayabilirsiniz. Bu çözüm, belirli bir etikete sahip tüm Azure, AWS ve GCP kaynaklarını bulmak için sorgulama gibi azure kaynak grafı aracılığıyla tüm bulut kaynaklarınızı sorgulamanıza olanak tanır.

Envanter çözümü, Azure'da temsil edilen görünümü güncelleştirmek için kaynak bulutunuzu düzenli olarak tarar. Genel bulutunuzu bağlayıp Stok çözümünü yapılandırırken sorgu aralığını belirtebilirsiniz.

Desteklenen hizmetler

Bugün, aşağıdaki AWS ve GCP hizmetleriyle ilişkili kaynaklar tarandı ve Azure'da temsil edildi. Stok çözümünü oluşturduğunuzda, tüm kullanılabilir hizmetler varsayılan olarak seçilir, ancak isteğe bağlı olarak tüm hizmetleri dahil edebilirsiniz.

Aşağıdaki tabloda taranan AWS hizmetleri, her hizmetle ilişkili kaynak türleri ve her kaynak türüne karşılık gelen Azure ad alanı gösterilmektedir.

AWS hizmeti AWS kaynak türü Azure ad alanı
Access Çözümleyicisi accessAnalyzerAnalyzers Microsoft.AwsConnector/accessAnalyzerAnalyzers
API Ağ Geçidi apiGatewayRestApis Microsoft.AwsConnector/apiGatewayRestApis
API Ağ Geçidi apiGatewayStages Microsoft.AwsConnector/apiGatewayStages
Uygulama Eşitleme appSyncGraphQLApis Microsoft.AwsConnector/appSyncGraphQLApis
Otomatik ölçeklendirme autoScalingAutoScalingGroups Microsoft.AwsConnector/autoScalingAutoScalingGroups
Bulut Oluşumu cloudFormationStacks Microsoft.AwsConnector/cloudFormationStacks
Bulut Oluşumu cloudFormationStackSets Microsoft.AwsConnector/cloudFormationStackSets
CloudFront cloudFront Microsoft.AwsConnector/cloudFrontDistributions
Bulut İzi cloudTrailTrails Microsoft.AwsConnector/cloudTrailTrails
Cloud Watch (Bulut İzleme) cloudWatchAlarms Microsoft.AwsConnector/cloudWatchAlarms
Kod Derleme codeBuildProjects Microsoft.AwsConnector/codeBuildProjects
Kod Derleme codeBuildSourceCredentialsInfos Microsoft.AwsConnector/codeBuildSourceCredentialsInfos
Yapılandırma configServiceConfigurationRecorders Microsoft.AwsConnector/configServiceConfigurationRecorders
Yapılandırma configServiceConfigurationRecorderStatuses Microsoft.AwsConnector/configServiceConfigurationRecorderStatuses
Yapılandırma configServiceDeliveryChannels Microsoft.AwsConnector/configServiceDeliveryChannels
DAX daxClusters Microsoft.AwsConnector/daxClusters
Belge Yönetim Sistemi databaseMigrationServiceReplicationInstances Microsoft.AwsConnector/databaseMigrationServiceReplicationInstances
Dynamo DB dynamoDBContinuousBackupsDescriptions Microsoft.AwsConnector/dynamoDBContinuousBackupsDescriptions
Dynamo DB dynamoDBTables Microsoft.AwsConnector/dynamoDBTables
EC2 ec2Instances Microsoft.HybridCompute/machines/EC2InstanceId/providers/Microsoft.AwsConnector/Ec2Instances
EC2 ec2AccountAttributes Microsoft.AwsConnector/ec2AccountAttributes
EC2 ec2Addresses Microsoft.AwsConnector/ec2Addresses
EC2 ec2FlowLogs Microsoft.AwsConnector/ec2FlowLogs
EC2 ec2Images Microsoft.AwsConnector/ec2Images
EC2 ec2Ipams Microsoft.AwsConnector/ec2Ipams
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
EC2 ec2Snapshots Microsoft.AwsConnector/ec2Snapshots
ECR ecrImageDetails Microsoft.AwsConnector/ecrImageDetails
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
EKS eksClusters Microsoft.Kubernetes/connectedclusters/clusterName_region/providers/Microsoft.AwsConnector/eksClusters
EKS eksNodegroups Microsoft.AwsConnector/eksNodegroups
Elastic Beanstalk elasticBeanstalkApplications Microsoft.AwsConnector/elasticBeanstalkApplications
Elastic Beanstalk elasticBeanstalkConfigurationTemplates Microsoft.AwsConnector/elasticBeanstalkConfigurationTemplates
Elastic Beanstalk elasticBeanstalkEnvironments Microsoft.AwsConnector/elasticBeanstalkEnvironments
Elastik Yük Dengeleyici V2 elasticLoadBalancingV2LoadBalancers Microsoft.AwsConnector/elasticLoadBalancingV2LoadBalancers
Elastik Yük Dengeleyici V2 elasticLoadBalancingV2Listeners Microsoft.AwsConnector/elasticLoadBalancingV2Listeners
Elastik Yük Dengeleyici V2 elasticLoadBalancingV2TargetGroups Microsoft.AwsConnector/elasticLoadBalancingV2TargetGroups
Elastik Yük Dengeleyici V2 elasticLoadBalancingV2TargetHealthDescriptions Microsoft.AwsConnector/elasticLoadBalancingV2TargetHealthDescriptions
EMR emrClusters Microsoft.AwsConnector/emrClusters
GuardDuty guardDutyDetectors Microsoft.AwsConnector/guardDutyDetectors
IAM iamAccessKeyLastUseds Microsoft.AwsConnector/iamAccessKeyLastUseds
IAM iamAccessKeyMetaData Microsoft.AwsConnector/iamAccessKeyMetaData
IAM iamMFADevices Microsoft.AwsConnector/iamMFADevices
IAM iamPasswordPolicies Microsoft.AwsConnector/iamPasswordPolicies
IAM iamPolicyVersions Microsoft.AwsConnector/iamPolicyVersions
IAM iamRoles Microsoft.AwsConnector/iamRoles
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
Günlükler logsLogGroups Microsoft.AwsConnector/logsLogGroups
Günlükler logsLogStreams Microsoft.AwsConnector/logsLogStreams
Günlükler logsMetricFilters Microsoft.AwsConnector/logsMetricFilters
Günlükler logsSubscriptionFilters Microsoft.AwsConnector/logsSubscriptionFilters
Macie macieAllowLists Microsoft.AwsConnector/macieAllowLists
Macie2 macie2JobSummaries Microsoft.AwsConnector/macie2JobSummaries
Ağ Güvenlik Duvarları networkFirewallFirewalls Microsoft.AwsConnector/networkFirewallFirewalls
Ağ Güvenlik Duvarları networkFirewallFirewallPolicies Microsoft.AwsConnector/networkFirewallFirewallPolicies
Ağ Güvenlik Duvarları networkFirewallRuleGroups Microsoft.AwsConnector/networkFirewallRuleGroups
Açık Arama Hizmeti openSearchDomainStatuses Microsoft.AwsConnector/openSearchDomainStatuses
Kuruluş organizationsAccounts Microsoft.AwsConnector/organizationsAccounts
Kuruluş organizationsOrganizations Microsoft.AwsConnector/organizationsOrganizations
RDS rdsDBInstances Microsoft.AwsConnector/rdsDBInstances
RDS rdsDBClusters Microsoft.AwsConnector/rdsDBClusters
RDS rdsEventSubscriptions Microsoft.AwsConnector/rdsEventSubscriptions
RDS rdsDBSnapshots Microsoft.AwsConnector/rdsDBSnapshots
RDS rdsDBSnapshotAttributesResults Microsoft.AwsConnector/rdsDBSnapshotAttributesResults
RDS rdsEventSubscriptions Microsoft.AwsConnector/rdsEventSubscriptions
Kızıl Kayma redshiftClusters Microsoft.AwsConnector/redshiftClusters
Kızıl Kayma redshiftClusterParameterGroups Microsoft.AwsConnector/redshiftClusterParameterGroups
Yol 53 route53DomainsDomainSummaries Microsoft.AwsConnector/route53DomainsDomainSummaries
Yol 53 route53HostedZones Microsoft.AwsConnector/route53HostedZones
SageMaker sageMakerApps Microsoft.AwsConnector/sageMakerApps
SageMaker sageMakerDevices Microsoft.AwsConnector/sageMakerDevices
SageMaker sageMakerImages Microsoft.AwsConnector/sageMakerImages
SageMaker sageMakerNotebookInstanceSummaries Microsoft.AwsConnector/sageMakerNotebookInstanceSummaries
Gizli Bilgi Yöneticisi secretsManagerResourcePolicies Microsoft.AwsConnector/secretsManagerResourcePolicies
Gizli Bilgi Yöneticisi secretsManagerSecrets Microsoft.AwsConnector/secretsManagerSecrets
Gizli Bilgi Yöneticisi secretsManagerSecrets Microsoft.AwsConnector/secretsManagerSecrets
S3 s3Buckets Microsoft.AwsConnector/s3Buckets
S3 s3AccessControlPolicies Microsoft.AwsConnector/s3AccessControlPolicies
S3 s3ControlMultiRegionAccessPointPolicyDocuments Microsoft.AwsConnector/s3ControlMultiRegionAccessPointPolicyDocuments
S3 s3BucketPolicies Microsoft.AwsConnector/s3BucketPolicies
S3 s3AccessPoints Microsoft.AwsConnector/s3AccessPoints
Sosyal Ağ Hizmetleri (SNS) snsTopics Microsoft.AwsConnector/snsTopics
Sosyal Ağ Hizmetleri (SNS) snsSubscriptions Microsoft.AwsConnector/snsSubscriptions
SQS sqsQueues Microsoft.AwsConnector/sqsQueues
SSM ssmInstanceInformations Microsoft.AwsConnector/ssmInstanceInformations
SSM ssmParameters Microsoft.AwsConnector/ssmParameters
SSM ssmResourceComplianceSummaryItems Microsoft.AwsConnector/ssmResourceComplianceSummaryItems
WAF wafWebACLSummaries Microsoft.AwsConnector/wafWebACLSummaries
WAFv2 wafv2LoggingConfigurations Microsoft.AwsConnector/wafv2LoggingConfigurations

Azure'da kaynak gösterimi

Bulutunuzu bağlayıp Stok çözümünü etkinleştirdikten sonra, çoklu bulut bağlayıcısı adlandırma kuralını <PublicCloud>_<AccountID>kullanarak yeni bir kaynak grubu oluşturur. Kaynaklarınızın Azure gösterimleri, önceki bölümde açıklanan AwsConnector veya GcpConnector ad alanı değerleri kullanılarak bu kaynak grubunda oluşturulur. Bu kaynaklara Azure etiketleri ve ilkeleri uygulayabilirsiniz.

Azure'da bulunan ve yansıtılan kaynaklar , standart eşleme düzeni kullanılarak Azure bölgelerine yerleştirilir.

Not

Daha önce Azure Arc'a bağlı EC2 örnekleriniz veya GCP VM'leriniz varsa, Arc makinesinin bulunduğu abonelikte önkoşullar karşılandıysa bağlayıcı ilgili envanter kaynağını Microsoft.HybridCompute/machines alt kaynağı olarak oluşturur. Aksi takdirde Stok kaynağı oluşturulmaz.

İzin seçenekleri

  1. Genel Okuma: AWS hesabı veya GCP Kuruluşu/Projesi'ndeki tüm kaynaklara salt okunur erişim sağlar. Yeni hizmetler sunulduğunda bağlayıcı, AWS'de güncelleştirilmiş cloudformation şablonuna veya GCP'de Terraform şablonuna gerek kalmadan bu kaynakları tarar.

  2. En Az Ayrıcalık Erişimi: Yalnızca seçili hizmetler altındaki kaynaklara okuma erişimi sağlar. Gelecekte daha fazla kaynak taramayı seçerseniz yeni bir şablon yüklemeniz gerekir.

Düzenli eşitleme seçenekleri

Envanter çözümünü yapılandırırken seçtiğiniz düzenli eşitleme süresi, kaynak bulutunuzun (AWS veya GCP) ne sıklıkta tarandığını ve Azure ile eşitleneceğini belirler. Düzenli eşitleme etkinleştirildiğinde kaynak bulut kaynaklarınızdaki değişiklikler Azure'a yansıtılır. Örneğin, kaynak bulutunuzda bir kaynak silinirse bu kaynak Azure'da da silinir.

İsterseniz bu çözümü yapılandırırken düzenli eşitlemeyi kapatabilirsiniz. Bunu yaparsanız Azure gösteriminiz kaynak bulut kaynaklarınızla eşitlenmemiş olabilir çünkü Azure değişiklikleri yeniden tarayamaz ve algılayamaz.

Azure Kaynak Grafı kaynakları sorgulama

Azure Kaynak Grafı, verimli ve performanslı kaynak keşfi sağlayarak Azure Kaynak Yönetimi'nin kapsamını genişletmek için tasarlanmış bir Azure hizmetidir. Belirli bir abonelik kümesinde uygun ölçekte sorgu çalıştırmak, ortamınızı etkili bir şekilde yönetmenize yardımcı olur.

Azure portalında Kaynak Grafı Gezgini'ni kullanarak sorgu çalıştırabilirsiniz. Yaygın senaryolar için bazı örnek sorgular burada gösterilmiştir.

Eklenen tüm çoklu bulut varlık envanterlerini sorgulama

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

Belirli bir bağlayıcı altındaki tüm kaynakları sorgulama

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 ve AWS'deki tüm sanal makineleri ve bunların örnek boyutunu sorgulama

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 ve AWS genelindeki tüm işlevleri sorgulama

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

Belirli bir etikete sahip tüm kaynakları sorgulama

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

Sonraki adımlar