更新时间:2024-04-17 GMT+08:00

RDS.PostgreSQL

模型说明

关系型数据库(Relational Database Service,以下简称RDS)是一种基于云计算平台的即开即用、稳定可靠、弹性伸缩、便捷管理的在线关系型数据库服务。

RDS具有完善的性能监控体系和多重安全防护措施,并提供专业的数据库管理平台, 让用户能够在云中轻松设置、操作和扩展关系型数据库。通过RDS控制台,用户几乎可以执行所有必需任务而无需编程,简化运营流程,减少日常运维工作量,从而专注于应用开发和业务发展。

模型属性

表1 模型定义属性说明

属性

是否必选

描述

dbPort

访问实例的端口

参数类型:integer

取值说明:[2100, 9500],该字段目前无效。

默认值:5432

取值约束:{u'in_range': [2100, 9500]}

使用建议:按需在端口范围内填写

backupStrategy

实例备份策略

参数类型:RDS.BackupStrategy

默认值:{u'keepDays': 0, u'endTime': u'02:00', u'startTime': u'01:00'}

取值约束:用户按规格选择定义

name

实例名称

参数类型:string

取值说明:用户自定义

默认值:""

取值约束:1. 4位到64位之间,必须以字母开头,不区分大小写可以包含字母、数字、中划线或者下划线,不能包含其他的特殊字符。 2. 同一租户下,同类型的实例名唯一。

使用建议:用户自定义

paramsGroupId

实例的参数组Id

参数类型:HuaweiCloud.RDS.ParamsGroup.Id

使用建议:建议设置成get_input形式,从下拉列表中选择;也支持填写一个默认参数组Id,默认值需要从RDS页面获取

securityGroupId

实例所属的安全组ID

参数类型:HuaweiCloud.VPC.SecurityGroup.Id

取值说明:到VPC服务获取安全组ID或通过连线VPC.SecurityGroup自动生成。

使用建议:1. 将该字段通过get_input函数传入,通过在AOS界面创建堆栈填写输入参数时可自动选择 2. 通过get_reference获取由本堆栈创建的VPC.SecurityGroup,使用设计器建立依赖关系时会自动指定 3. 在VPC服务界面中获取已创建好的安全组的ID,参见https://console-intl.huaweicloud.com/vpc/

dbRootPassword

实例的root用户密码

参数类型:password

取值说明:用户自定义

取值约束:1. 参数必须写入inputs内,通过get_input的方式传入 2. 参数非空,由大小写字母、数字和特殊符号~!@#%^*-_=+?组成,长度8~32位,非弱密码。

使用建议:建议定义为get_input方式获取,以保证安全性,避免明文密码

volume

实例使用的数据盘信息

参数类型:RDS.Volume

默认值:{u'volumetype': u'COMMON', u'size': 100}

使用建议:在“组成部分”中选择 volume 字段根据提示的字段进行扩充填写

slaveAvailabilityZone

HA实例备机所属的可用区

参数类型:HuaweiCloud.ECS.AvailabilityZone.Name

取值说明:待创建云服务器所在的可用区,需要指定可用区(AZ)的名称,例如cn-north-1a。

取值约束:根据所属区域选择。

使用建议:1. 将该字段通过get_input函数传入,通过在AOS界面创建堆栈填写输入参数时可自动选择 2. 各Region的可用区请参见:https://developer.huaweicloud.com/intl/zh-cn/endpoint。

subnetId

实例所属的子网ID

参数类型:HuaweiCloud.VPC.Subnet.Id

取值说明:使用已有或创建的子网ID。如果使用新建的,需在模板中定义子网对象并建立依赖关系。建议通过连线VPC.Subnet来自动生成

取值约束:所填子网必须为与VPC关联对应

使用建议:1. 将该字段通过get_input函数传入,通过在AOS界面创建堆栈填写输入参数时可自动选择 2. 通过get_reference获取由本堆栈创建的VPC.Subnet,使用设计器建立依赖关系时会自动指定 3. 在VPC服务界面中获取已创建好的子网的ID,参见https://console-intl.huaweicloud.com/vpc/

timeZone

所在地时区(只支持包周期堆栈,按需堆栈暂不支持该属性设置)

参数类型:string

取值约束:{u'valid_values': [u'UTC-12:00', u'UTC-11:00', u'UTC-10:00', u'UTC-09:00', u'UTC-08:00', u'UTC-07:00', u'UTC-06:00', u'UTC-05:00', u'UTC-04:00', u'UTC-03:00', u'UTC-02:00', u'UTC-01:00', u'UTC', u'UTC+01:00', u'UTC+02:00', u'UTC+03:00', u'UTC+04:00', u'UTC+05:00', u'UTC+06:00', u'UTC+07:00', u'UTC+08:00', u'UTC+09:00', u'UTC+10:00', u'UTC+11:00', u'UTC+12:00']}

使用建议:将该字段通过get_input函数传入,通过在AOS界面创建堆栈填写输入参数时可自动选择

dataStore

数据库信息

参数类型:PostgreSQL.DataStore

默认值:{u'dbtype': u'PostgreSQL', u'version': u'11'}

使用建议:在“组成部分”中选择 dataStore 字段根据提示的字段进行扩充填写

HA

实例的高可用配置

参数类型:RDS.HA.PostgreSQL

默认值:{u'replicationMode': u'sync', u'enable': u'unset'}

使用建议:在“组成部分”中选择 HA 字段根据提示的字段进行扩充填写

vpcId

实例所属的VPC ID

参数类型:HuaweiCloud.VPC.VPC.Id

取值说明:支持使用已有或新建私有云ID。 如果使用新建的,需在模板中定义vpc对象并建立依赖关系。建议通过拖拽到VPC内自动生成。

取值约束:满足uuid的生成规则

使用建议:1. 将该字段通过get_input函数传入,通过在AOS界面创建堆栈填写输入参数时可自动选择 2. 通过get_reference获取由本堆栈创建的VPC.VPC元素,使用设计器建立依赖关系时会自动指定 3. 在VPC服务界面获取已经创建好的VPC的ID,参见https://console-intl.huaweicloud.com/vpc/

flavor

实例规格

参数类型:HuaweiCloud.RDS.Flavor.Id

取值说明:待创建的数据库实例的规格,根据实例规格及用户project生成。

取值约束:不同Project所获取的FlavorID不一致,同时需要与所用的数据库类型、版本配套,资源规格编码。 例如:rds.mysql.m1.xlarge。 其中,rds代表RDS产品,mysql代表数据库引擎,m1.xlarge代表性能规格,为高内存类型。带"rr"的表示只读实例规格,反之表示单实例和HA实例规格。

使用建议:建议通过RDS API先获取,参考:https://support.huaweicloud.com/intl/zh-cn/api-rds/rds_06_0002.html

availabilityZone

实例所属的可用区

参数类型:HuaweiCloud.ECS.AvailabilityZone.Name

取值说明:待创建云服务器所在的可用区,需要指定可用区(AZ)的名称,例如cn-north-1a。 请参考地区和终端节点获取。

取值约束:根据所属区域选择

使用建议:1. 将该字段通过get_input函数传入,通过在AOS界面创建堆栈填写输入参数时可自动选择 2. 各Region的可用区请参见:https://developer.huaweicloud.com/intl/zh-cn/endpoint。

关联关系

表2 关联关系说明

关系说明

关联节点

关联关系

VPC.Subnet

关联关系

VPC.SecurityGroup

被包含关系

VPC.VPC

输出

属性

参数类型

描述

refIP

string

关系型数据库PostgreSQL的访问IP地址

chargeMode

string

关系型数据库PostgreSQL的包周期类型

refPort

integer

关系型数据库PostgreSQL的访问端口

refID

string

关系型数据库PostgreSQL实例的ID

refName

string

关系型数据库PostgreSQL实例的名称

blueprint样例

tosca_definitions_version: huaweicloud_tosca_version_1_0
node_templates:
  rdsps24w:
    type: HuaweiCloud.RDS.PostgreSQL
    properties:
      dbPort: 3306
      vpcId:
        get_input: rdsps24w_vpcId
      securityGroupId:
        get_input: rdsps24w_securityGroupId
      dbRootPassword:
        get_input: rdsps24w_dbRootPassword
      volume:
        volumetype: COMMON
        size: 100
      backupStrategy:
        keepDays: 0
        endTime: '02:00'
        startTime: '01:00'
      subnetId:
        get_input: rdsps24w_subnetId
      dataStore:
        dbtype: PostgreSQL
        version: '10.0'
      HA:
        replicationMode: sync
        enable:
          get_input: rdsps24w_HA_enable
      flavor:
        get_input: rdsps24w_flavor
      availabilityZone:
        get_input: rdsps24w_availabilityZone
inputs:
  rdsps24w_vpcId:
    description: 实例所属的VPC ID
    label: ''
  rdsps24w_securityGroupId:
    description: 实例所属的安全组ID
    label: ''
  rdsps24w_dbRootPassword:
    description: 实例的root用户密码
    label: ''
  rdsps24w_subnetId:
    description: 实例所属的子网ID
    label: ''
  rdsps24w_HA_enable:
    description: 是否高可用
    label: ''
  rdsps24w_flavor:
    description: 实例规格
    label: ''
  rdsps24w_availabilityZone:
    description: 实例所属的可用分区
    label: ''