Updated on 2023-12-13 GMT+08:00

DDS.CommunityReplicaSetOrSingle

Element Description

The DDS.CommunityReplicaSetOrSingle element is used to create a replica set instance or a single-node instance.

A replica set consists of three nodes: primary, secondary, and hidden. The three-node architecture is automatically set up, and the three nodes automatically synchronize data with each other to ensure data reliability. The single-node architecture contains only one node. The node can be directly accessed.

Element Properties

Table 1 Property Description

Property

Required

Descripiton

backupStrategy

Yes

Backup policy of the instance

Type: DDS.BackupStrategy

Default: {u'endTime': u'02:00', u'startTime': u'01:00'}

Value Constraint: Set the value based on specifications.

name

No

Instance name

Type: string

Value Description: Supports customization.

Default: ''

Value Constraint: 1. The value must contain 4 to 64 characters and start with a letter. It is case-insensitive, and can only contain letters, digits, hyphens (-), and underscores (_). 2. The instance name of the same type under the same tenant must be unique.

Suggestion: Customize the value.

securityGroupId

Yes

ID of the security group to which the instance belongs

Type: HuaweiCloud.VPC.SecurityGroup.Id

Value Description: Obtains the security group ID from the VPC service or connects to the VPC.SecurityGroup to automatically generate the security group ID.

Value Constraint: None

Suggestion: 1. Use the get_input function to import this field. The value can be automatically selected on the AOS page. 2. Use the get_reference function to obtain the VPC.SecurityGroup created by the stack. The element is automatically specified when you use the designer to establish the dependency relationship. 3. Obtain the created security group ID on the VPC page.see https://console.huaweicloud.com/vpc/?locale=en-us

dbRootPassword

Yes

Password of the root user of the instance. The value is not empty. It contains 8-32 characters and is not a weak password. It contains letters, digits, and the following special characters: ~!@#%^*-_=+?

Type: password

Value Description: Supports customization.

Value Constraint: 1. The parameter must be written into inputs and imported using the get_input function. 2. The value is not empty. It contains 8-32 characters and is not a weak password. It contains letters, digits, and the following special characters: ~!@#%^*-_=+? suggestion: 'You are advised to use the get_input function to obtain the value and avoid plaintext passwords to ensure security.'

availabilityZone

Yes

AZ where the instance is located

Type: HuaweiCloud.ECS.AvailabilityZone.Name

Value Description: Indicates the AZ where the to-be-created ECS is located. The name of the AZ needs to be specified, for example, cn-north-1a.

Value Constraint: The value varies depending on the belonged region.

Suggestion: 1. Use the get_input function to import this field. The value can be automatically selected when creating stack to fill in input parameters on the AOS page. 2. For details about the AZ of each region, visit http://developer.huaweicloud.com/en-us/endpoint.

mode

Yes

Database instance type

Type: string

Value Description: ReplicaSet or Single

Default: ReplicaSet

Value Constraint: The value can only be ReplicaSet or Single.

Suggestion: Set the value based on specifications and requirements.

subnetId

Yes

ID of the subnet to which the instance belongs

Type: HuaweiCloud.VPC.Subnet.Id

Value Description: Supports the use of an existing or new subnet ID. To use a new subnet ID, you need to define the subnet object in the template and establish the dependency relationship. You are advised to connect the VPC.Subnet to automatically establish the dependency relationship.

Value Constraint: The subnet must correspond to the VPC.

Suggestion: 1. Use the get_input function to import this field. The value is automatically selected on the AOS page. 2. Use the get_reference function to obtain the VPC.Subnet element created by the stack. The element is automatically specified when you use the designer to establish the dependency relationship. 3. Obtain the created subnet ID on the VPC page. See https://console.huaweicloud.com/vpc

dataStore

Yes

Database information

Type: DDS.DDSCommunity.DataStore

Default: {u'storageEngine': u'wiredTiger', u'dbtype': u'DDS-Community', u'version': u'4.0'}

Suggestion: Select the dataStore field in the component part, and then fill in the field based on prompts.

vpcId

Yes

ID of the VPC to which the instance belongs

Type: HuaweiCloud.VPC.VPC.Id

Value Description: Supports the use of an existing or new VPC ID. To use a new VPC ID, you need to define the VPC object in the template and establish the dependency relationship. You are advised to drag the object to the VPC to automatically establish the dependency relationship.

Value Constraint: The value must satisfy the UUID generation rule.

Suggestion: 1. Use the get_input function to import this field. The value can be automatically selected on the AOS page. 2. Use the get_reference function to obtain the VPC.VPC element created by the stack. The element is automatically specified when you use the designer to establish the dependency relationship. 3. Obtain the created VPC ID on the VPC page. See https://console.huaweicloud.com/vpc

flavor

Yes

instance specifications information

Type: DDS.CommunityReplicaSetOrSingleMode.Flavor

Default: {u'nodeOneset': {u'nodeType': u'replica', u'num': 1, u'storage': u'ULTRAHIGH', u'specCode': u'unset', u'size': 10}}

Suggestion: Select the flavor field in the component part, and then fill in the field based on prompts.

Relationships Between Elements

Table 2 Relationship description

Description

Target

Connected

VPC.Subnet

Connected

VPC.SecurityGroup

ContainedIn

VPC.VPC

Return Value

Property

Type

Description

chargeMode

string

Billing mode of the DDS-Community ReplicaSet or Single instance

refName

string

Name of the DDS-Community ReplicaSet or Single instance

refID

string

ID of the DDS-Community ReplicaSet or Single instance

Blueprint Example

tosca_definitions_version: huaweicloud_tosca_version_1_0
node_templates:
  my-dds:
    type: HuaweiCloud.DDS.CommunityReplicaSetOrSingle
    properties:
      availabilityZone:
        get_input: my_az
      securityGroupId:
        get_input: my_securityGroupId
      dbRootPassword:
        get_input: my_password
      backupStrategy:
        endTime: '02:00'
        startTime: '01:00'
      mode: ReplicaSet
      subnetId:
        get_input: my-subnetid
      dataStore:
        dbtype: DDS-Community
        storageEngine: wiredTiger
        version: 4.0
      vpcId:
        get_input: my_vpcid
      flavor:
        nodeOneset:
          nodeType: replica
          num: 1
          storage: ULTRAHIGH
          specCode:
            get_input: my_speccode
          size: 10
inputs:
  my_az:
    description: AZ to which the instance belongs
  my_securityGroupId:
    description: ID of the security group to which the instance belongs
  my_password:
    description: password of user root of the instance
  my-subnetid:
    description: ID of the subnet to which the instance belongs
  my_vpcid:
    description: ID of the VPC to which the instance belongs
  my_speccode:
    description: instance specifications