启用虚拟机载入(AWS CLI)
要使用 AWS CLI 启用虚拟机载入,请创建针对云连接器的 State Manager 关联。该命令需要使用以下角色:
aws ssm create-association \ --association-name "AWSSSMAzureConnector-CLOUD_CONNECTOR_ID" \ --name "AWS-InstallSSMAgentOnAzure" \ --automation-target-parameter-name "AzureVmResourceId" \ --association-dispatch-assume-role "arn:aws:iam::ACCOUNT_ID:role/service-role/DISPATCH_ROLE_NAME" \ --parameters '{ "AutomationAssumeRole": ["arn:aws:iam::ACCOUNT_ID:role/service-role/ASSUME_ROLE_NAME"], "ManagedInstanceIamRole": ["service-role/AmazonEC2RunCommandRoleForManagedInstances"], "CloudConnector": ["CLOUD_CONNECTOR_ID"] }' \ --targets 'Key=CloudConnector,Values=["{\"CloudConnectorId\":\"CLOUD_CONNECTOR_ID\",\"SsmManagedNodeFilter\":\"UNMANAGED\"}"]' \ --schedule-expression "rate(48 hours)" \ --max-concurrency "50"
要针对特定的 Azure 区域,请将 CloudProviderRegions 字段添加到目标值中:
--targets 'Key=CloudConnector,Values=["{\"CloudConnectorId\":\"CLOUD_CONNECTOR_ID\",\"SsmManagedNodeFilter\":\"UNMANAGED\",\"CloudProviderRegions\":[\"eastus\",\"westus2\"]}"]'
要在载入期间向托管实例添加自定义标签,请包含 ManagedInstanceTags 参数:
--parameters '{ "AutomationAssumeRole": ["arn:aws:iam::ACCOUNT_ID:role/service-role/ASSUME_ROLE_NAME"], "ManagedInstanceIamRole": ["service-role/AmazonEC2RunCommandRoleForManagedInstances"], "CloudConnector": ["CLOUD_CONNECTOR_ID"], "ManagedInstanceTags": ["{\"Key\":\"Environment\",\"Value\":\"Production\"}","{\"Key\":\"Team\",\"Value\":\"DevOps\"}"] }'