如何更改云形成模板中的ElastiCache节点DNS记录?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (47)

需要为ElastiCache群集创建CNAME记录。但是构建redis集群并且只有一个节点。据我发现Redis集群没有ConfigurationEndpoint.Address。是否有机会更改群集中节点的DNS名称以及如何操作?

目前模板看起来像:

  "ElastiCahceDNSRecord" : {
  "Type" : "AWS::Route53::RecordSetGroup",
  "Properties" : {
    "HostedZoneName" : "example.com.",
    "Comment" : "Targered to ElastiCache",
    "RecordSets" : [{
    "Name" : "elche01.example.com.",
    "Type" : "CNAME",
    "TTL" : "300",
    "ResourceRecords" :  [
        {
            "Fn::GetAtt": [ "myelasticache", "ConfigurationEndpoint.Address" ]
        }
    ]

    }]

  }

}

提问于
用户回答回答于

现在可以通过AWS::ElastiCache::CacheCluster

用户回答回答于

可以直接从CFN中获取Redis端点。

CFN示例(不包括其他位):

Resources:
  DnsRedis:
    Type: 'AWS::Route53::RecordSetGroup'
    Properties:
      HostedZoneName: 'a.hosted.zone.name.'
      RecordSets:
        - Name: 'a.record.set.name'
          Type: CNAME
          TTL: '300'
          ResourceRecords:
            - !GetAtt
              - RedisCacheCluster
              - RedisEndpoint.Address  
    DependsOn: RedisCacheCluster

  RedisCacheCluster:
    Type: 'AWS::ElastiCache::CacheCluster'
    Properties:
      ClusterName: cluster-name-redis
      AutoMinorVersionUpgrade: 'true'
      AZMode: single-az
      CacheNodeType: cache.t2.small
      Engine: redis
      EngineVersion: 3.2.4
      NumCacheNodes: 1
      CacheSubnetGroupName: !Ref ElastiCacheSubnetGroupId
      VpcSecurityGroupIds:
        - !GetAtt
          - elasticacheSecGrp
          - GroupId

扫码关注云+社区

领取腾讯云代金券