【问题标题】:Enable Aurora Data Api from CloudFormation从 CloudFormation 启用 Aurora 数据 API
【发布时间】:2019-07-22 17:08:23
【问题描述】:

我有一个 CloudFormation 模板,它使用 aurora serverless 创建我的 RDS 集群。我希望在启用数据 API 的情况下创建集群。

该选项存在于 Web 控制台上: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/data-api.html

但我在 CloudFormation 文档中找不到它。 如何从模板中打开此选项?

【问题讨论】:

标签: amazon-web-services amazon-cloudformation amazon-aurora


【解决方案1】:

the EnableHttpEndpoint property 设置为true,例如:

AWSTemplateFormatVersion: '2010-09-09'
Description: Aurora PostgreSQL Serverless Cluster
Resources:
  ServerlessWithDataAPI:
    Type: AWS::RDS::DBCluster
    Properties:
      Engine: aurora-postgresql
      EngineMode: serverless
      EnableHttpEndpoint: true
      ScalingConfiguration:
        ...

【讨论】:

    【解决方案2】:

    您可以通过创建自定义资源支持的 lambda 从 CloudFormation 启用数据 API,并使用任何可用的 SDK 启用它。

    我使用 boto3 (python),所以 lambda 的代码类似于以下:

    import boto3
    
    client = boto3.client('rds')
    
    response = client.modify_db_cluster(
        DBClusterIdentifier='string',
        EnableHttpEndpoint=True|False
    ) 
    

    显然,您需要处理不同的自定义资源请求类型,并从 lambda 成功或失败返回。但要回答您的问题,这是目前通过 CloudFormation 设置数据 API 的最佳方式,恕我直言。

    更多关于函数(Boto3)的信息: https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/rds.html#RDS.Client.modify_db_cluster

    【讨论】:

      【解决方案3】:

      目前只能在网络控制台中启用数据 API。此功能仍处于测试阶段,因此 CloudFormation 支持和 us-east-1 之外的可用性等问题仍待定,在生产中使用数据 API 时应谨慎,因为它可能仍会发生变化。

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-01-23
      • 2020-09-24
      • 2019-04-18
      • 2020-10-17
      • 1970-01-01
      • 2022-06-19
      • 1970-01-01
      • 2017-03-10
      相关资源
      最近更新 更多