Amazon web services 无法使用CDK获取群集名称和ASG资源名称

Amazon web services 无法使用CDK获取群集名称和ASG资源名称,amazon-web-services,aws-cdk,Amazon Web Services,Aws Cdk,我对使用CDK非常陌生,我正在尝试为我的启动配置生成用户_数据。但是有问题。。。从这里获取用户数据,并尝试将其适应我的CDK模板: 这是我的密码 const asg = new autoscaling.AutoScalingGroup(this, 'ASG', { vpc: existingVpc, instanceType: ec2.InstanceType.of(ec2.InstanceClass.T3, ec2.InstanceSi

我对使用CDK非常陌生,我正在尝试为我的启动配置生成用户_数据。但是有问题。。。从这里获取用户数据,并尝试将其适应我的CDK模板:

这是我的密码

     const asg = new autoscaling.AutoScalingGroup(this, 'ASG', {
            vpc: existingVpc,
            instanceType: ec2.InstanceType.of(ec2.InstanceClass.T3, ec2.InstanceSize.XLARGE),
            machineImage: ecs.EcsOptimizedImage.amazonLinux2(),
            minCapacity: 3,
            desiredCapacity: 3,
            maxCapacity: 10,
            instanceMonitoring: autoscaling.Monitoring.DETAILED,
        });

        // Create an ECS cluster
        const cluster = new ecs.Cluster(this, 'Cluster', {
            vpc: existingVpc,
            clusterName: envName,
        });

        asg.addUserData(`
echo ECS_CLUSTER=${cluster.clusterName} >> /etc/ecs/ecs.config
yum install -y aws-cfn-bootstrap
/opt/aws/bin/cfn-signal -e $? --stack ${this.stackName} --resource ${asg} --region ${this.region}
`
        )
这将生成以下用户数据

      UserData:
        Fn::Base64:
          Fn::Join:
            - ""
            - - |-
                #!/bin/bash

                echo ECS_CLUSTER=
              - Ref: ClusterEB0386A7
              - |2
                 >> /etc/ecs/ecs.config
                yum install -y aws-cfn-bootstrap
                /opt/aws/bin/cfn-signal -e $? --stack CdkClusterStack --resource CdkClusterStack/ASG --region eu-west-1
这让我很困惑。
cluster.clusterName
根本不返回集群名称,而是对底层集群资源的引用

对于ASG,生成了以下内容,我想这里不是我当前得到的
CdkClusterStack/ASG
,而是需要
ASG46ED3070

 ASG46ED3070:
    Type: AWS::AutoScaling::AutoScalingGroup
    Properties:
      MaxSize: "10"
      MinSize: "3"
      DesiredCapacity: "3"
      .... more stuff ....


请告知

ECS群集上逻辑ID的Ref返回资源名称,在本例中为群集名称。
当您将此资源的逻辑ID传递给固有Ref函数时,Ref返回资源名称。
这是来自页面的

为了检查这一点,我将添加cluster.clusterName作为cfnOutput,并检查它是否为您提供了实际的集群名称