ALIYUN::GPDB::DBInstance类型用于创建存储预留模式的AnalyticDB for PostgreSQL实例。

语法

{
  "Type": "ALIYUN::GPDB::DBInstance",
  "Properties": {
    "EngineVersion": String,
    "ZoneId": String,
    "VSwitchId": String,   
    "DBInstanceClass": String,
    "DBInstanceGroupCount": Integer,
    "VPCId": String,
    "SecurityIPList": String,   
    "DBInstanceDescription": String,
    "PayType": String,
    "Period": Integer,
    "PeriodUnit": String
  }
}

属性

属性名称 类型 必须 允许更新 描述 约束
EngineVersion String 引擎版本 取值示例:
  • 6.0:6.0标准版。
  • 6.0x:6.0向量增强版。
ZoneId String 可用区ID 取值示例:cn-hangzhou-h。

关于可用区ID的更多信息,请参见DescribeRegions

VSwitchId String 交换机ID 取值示例:vsw-bp183p93qs667muql****。
DBInstanceClass String 实例规格 取值示例:gpdb.group.segsdx2。

关于实例规格的更多信息,请参见实例规格表

DBInstanceGroupCount Integer AnalyticDB for PostgreSQL计算组的数量 取值示例:2。
VPCId String 专有网络ID 取值示例:vpc-bp1m6fww66xbntjyc****。
SecurityIPList String IP地址白名单 默认值:127.0.0.1。
DBInstanceDescription String 实例描述 取值示例:AnalyticDB PostgreSQL DB Instance。

长度不超过256个字符。

PayType String 付费类型 取值:
  • Postpaid(默认值):按量付费。
  • Prepaid:包年包月。
Period Integer 购买资源的时长 取值范围:
  • 当PeriodUnit取值为Month时:1~11。
  • 当PeriodUnit取值为Year时:1~3。
PeriodUnit String 购买资源的时长单位 取值:
  • Month(默认值):月。
  • Year:年。

返回值

Fn::GetAtt

  • DBInstanceId:实例ID。
  • Port:端口。
  • OrderId:订单编号。
  • ConnectionString:连接地址。

示例

JSON格式

{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Parameters": {
    "ZoneId": {
      "Type": "String"
    },
    "VpcId": {
      "Type": "String",
      "AssociationProperty": "ALIYUN::ECS::VPC::VPCId"
    },
    "VSwitchId": {
      "Type": "String",
      "AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
      "AssociationPropertyMetadata": {
        "ZoneId": "ZoneId",
        "VpcId": "VpcId"
      }
    }
  },
  "Resources": {
    "DBInstance": {
      "Type": "ALIYUN::GPDB::DBInstance",
      "Properties": {
        "ZoneId": {
          "Ref": "ZoneId"
        },
        "VPCId": {
          "Ref": "VpcId"
        },
        "VSwitchId": {
          "Ref": "VSwitchId"
        },
        "DBInstanceGroupCount": 2,
        "EngineVersion": "6.0",
        "DBInstanceClass": "gpdb.group.segsdx2",
        "DBInstanceDescription": "AnalyticDB PostgreSQL DB Instance"
      }
    }
  },
  "Outputs": {
    "OrderId": {
      "Value": { "Fn::GetAtt": ["DBInstance", "OrderId"] }
    },
    "ConnectionString": {
      "Value": { "Fn::GetAtt": ["DBInstance", "ConnectionString"] }
    },
    "DBInstanceId": {
      "Value": { "Fn::GetAtt": ["DBInstance", "DBInstanceId"] }
    },
    "Port": {
      "Value": { "Fn::GetAtt": ["DBInstance", "Port"] }
    }
  }
}

YAML格式

ROSTemplateFormatVersion: '2015-09-01'
Parameters:
  ZoneId:
    Type: String
  VpcId:
    Type: String
    AssociationProperty: 'ALIYUN::ECS::VPC::VPCId'
  VSwitchId:
    Type: String
    AssociationProperty: 'ALIYUN::ECS::VSwitch::VSwitchId'
    AssociationPropertyMetadata:
      ZoneId: ZoneId
      VpcId: VpcId
Resources:
  DBInstance:
    Type: 'ALIYUN::GPDB::DBInstance'
    Properties:
      ZoneId:
        Ref: ZoneId
      VPCId:
        Ref: VpcId
      VSwitchId:
        Ref: VSwitchId
      DBInstanceGroupCount: 2
      EngineVersion: '6.0'
      DBInstanceClass: gpdb.group.segsdx2
      DBInstanceDescription: AnalyticDB PostgreSQL DB Instance
Outputs:
  OrderId:
    Value:
      'Fn::GetAtt':
        - DBInstance
        - OrderId
  ConnectionString:
    Value:
      'Fn::GetAtt':
        - DBInstance
        - ConnectionString
  DBInstanceId:
    Value:
      'Fn::GetAtt':
        - DBInstance
        - DBInstanceId
  Port:
    Value:
      'Fn::GetAtt':
        - DBInstance
        - Port