All Products
Search
Document Center

ApsaraDB RDS:Integration with ROS

Last Updated:Aug 06, 2024

Resource Orchestration Service (ROS) templates can be used to define cloud resources and dependencies of the resources. The ROS engine automatically creates and configures all resources based on a template to implement automated deployment and O&M. This topic describes how to use ROS to query information about an ApsaraDB RDS instance.

Supported resources

ROS is a service provided by Alibaba Cloud to simplify the management of cloud computing resources. You can create a template to describe the required cloud computing resources such as Elastic Compute Service (ECS) and ApsaraDB RDS instances, as well as the dependencies between the resources. The ROS engine automatically creates and configures all resources based on a template to implement automated deployment and O&M. For more information, see What is ROS?

You can use ROS to call ApsaraDB RDS resources. Resources that can be orchestrated by using ROS include regular resources and data resources.

Configure permissions

To use ROS, you must create an Alibaba Cloud account and obtain the AccessKey pair of the account. To ensure the security of your Alibaba Cloud account and cloud resources, do not use your Alibaba Cloud account to access ApsaraDB RDS instances. We recommend that you create a Resource Access Management (RAM) user, obtain the AccessKey of the user, and grant RDS permissions to the user.

  1. Create a RAM user.

    1. Log on to the RAM console, go to the Users page, and then click Create User.

    2. Set the Logon Name parameter to rds-test-operator and the Access Method parameter to OpenAPI Access.

    3. Click OK.

  2. Grant permissions to the RAM user.

    1. Go to the Users page, find the RAM user that you created, and then click Add Permissions in the Actions column.

    2. Attach the following policies to the RAM user:

      • AliyunRDSFullAccess: grants full permissions to query and modify RDS instances.

        Note

        You can also attach the AliyunRDSReadOnlyAccess policy that grants the permissions to query RDS instances or create a custom policy. For more information, see Create custom policies.

      • AliyunROSFullAccess: grants full permissions to manage ROS resources.

    3. Click Grant permissions.

Procedure

  1. Log on to the ROS console.

  2. In the top navigation bar, select the region in which your RDS instance resides.

  3. In the left-side navigation pane, click Stacks. On the page that appears, choose Create Stack > Use ROS.

  4. Select a template and click Next.

    In this example, a custom template is used to query information about an RDS instance. For more information about how to use a template, see Create a stack.

    1. In the Specify Template section, select Select an Existing Template.

    2. In the Template Import Method section, select Enter Template Content.

    3. In the Template Content section, click the ROS tab and enter the template code.

      The following sections show the template code in different formats. You can select a format based on your business requirements. For more information, see DATASOURCE::RDS::DBInstance.

      JSON format

      {
        "ROSTemplateFormatVersion": "2015-09-01",
        "Parameters": {
          "DBInstanceId": {
            "Type": "String",
            "Description": {
              "en": "The ID of the instance."
            },
            "Required": false
          }
        },
        "Resources": {
          "ExtensionDataSource": {
            "Type": "DATASOURCE::RDS::DBInstance",
            "Properties": {
              "DBInstanceId": {
                "Ref": "DBInstanceId"
              }
            }
          }
        },
        "Outputs": {
          "DBInstanceMemory": {
            "Description": "The memory capacity of the instance. Unit: MB.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "DBInstanceMemory"
              ]
            }
          },
          "ResourceGroupId": {
            "Description": "The resource group ID.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "ResourceGroupId"
              ]
            }
          },
          "IncrementSourceDBInstanceId": {
            "Description": "The ID of the instance from which incremental data comes. The incremental data of a disaster recovery instance or read-only instance comes from its primary instance. If this parameter is not returned, the instance is a primary instance.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "IncrementSourceDBInstanceId"
              ]
            }
          },
          "MasterZone": {
            "Description": "The zone ID of the primary instance.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "MasterZone"
              ]
            }
          },
          "Port": {
            "Description": "The port that is used to connect to the instance over an internal network.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "Port"
              ]
            }
          },
          "LatestKernelVersion": {
            "Description": "The latest minor engine version that is supported by the instance.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "LatestKernelVersion"
              ]
            }
          },
          "ConsoleVersion": {
            "Description": "The type of the proxy that is used by the instance. Valid values:\n1: shared proxy\n2: dedicated proxy",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "ConsoleVersion"
              ]
            }
          },
          "DBInstanceType": {
            "Description": "The type of the instance. Valid values:\nPrimary: primary instance\nReadonly: read-only instance\nGuard: disaster recovery instance\nTemp: temporary instance",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "DBInstanceType"
              ]
            }
          },
          "GeneralGroupName": {
            "Description": "The name of the dedicated cluster to which the instance belongs. This parameter is returned only when the instance is created in an ApsaraDB MyBase cluster that runs MySQL on Standard Edition.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "GeneralGroupName"
              ]
            }
          },
          "InstanceNetworkType": {
            "Description": "The network type of the instance. Valid values:\nClassic\nVPC",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "InstanceNetworkType"
              ]
            }
          },
          "DBInstanceClassType": {
            "Description": "The instance family to which the instance belongs. Valid values:\ns: shared instance family\nx: general-purpose instance family\nd: dedicated instance family\nh: dedicated host instance family",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "DBInstanceClassType"
              ]
            }
          },
          "AutoUpgradeMinorVersion": {
            "Description": "The method that is used to update the minor engine version of the instance. Valid values:\nAuto: automatic update.\nManual: manual update. The minor engine version of the instance is forcefully updated only when the in-use minor engine version is phased out.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "AutoUpgradeMinorVersion"
              ]
            }
          },
          "DBInstanceId": {
            "Description": "The instance ID.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "DBInstanceId"
              ]
            }
          },
          "DBInstanceStorage": {
            "Description": "The storage capacity of the instance. Unit: GB.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "DBInstanceStorage"
              ]
            }
          },
          "PGBouncerEnabled": {
            "Description": "Indicates whether PgBouncer is enabled.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "PGBouncerEnabled"
              ]
            }
          },
          "InstructionSetArch": {
            "Description": "The architecture type of the instance. Valid values:\nx86\narm",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "InstructionSetArch"
              ]
            }
          },
          "LockReason": {
            "Description": "The reason why the instance was locked.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "LockReason"
              ]
            }
          },
          "AvailabilityValue": {
            "Description": "The availability status of the instance in percentage.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "AvailabilityValue"
              ]
            }
          },
          "Engine": {
            "Description": "The database engine of the instance. Valid values:\nMySQL\nPostgreSQL\nSQLServer\nMariaDB",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "Engine"
              ]
            }
          },
          "DBInstanceDescription": {
            "Description": "The description of the instance.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "DBInstanceDescription"
              ]
            }
          },
          "IPType": {
            "Description": "The type of the IP address. Only IPv4 addresses are supported.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "IPType"
              ]
            }
          },
          "MaxIOMBPS": {
            "Description": "The maximum I/O throughput. Unit: MB/s.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "MaxIOMBPS"
              ]
            }
          },
          "DBInstanceDiskUsed": {
            "Description": "The disk usage of the instance.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "DBInstanceDiskUsed"
              ]
            }
          },
          "EngineVersion": {
            "Description": "The database engine version.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "EngineVersion"
              ]
            }
          },
          "MaxConnections": {
            "Description": "The maximum number of concurrent connections.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "MaxConnections"
              ]
            }
          },
          "DBInstanceStatus": {
            "Description": "The status of the instance.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "DBInstanceStatus"
              ]
            }
          },
          "DBInstanceClass": {
            "Description": "The instance type of the instance.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "DBInstanceClass"
              ]
            }
          },
          "AccountMaxQuantity": {
            "Description": "The maximum number of accounts that can be created on the instance.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "AccountMaxQuantity"
              ]
            }
          },
          "VSwitchId": {
            "Description": "The vSwitch ID.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "VSwitchId"
              ]
            }
          },
          "TipsLevel": {
            "Description": "The severity level of the exception that is detected on the instance. This parameter is returned only when the instance is created in an ApsaraDB MyBase cluster that runs MySQL on Standard Edition. Valid values:\n1: The instance is normal.\n2: The specifications of the read-only instances do not match the specifications of the primary instance. You must adjust the specifications of these instances based on your business requirements.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "TipsLevel"
              ]
            }
          },
          "LockMode": {
            "Description": "The lock mode of the instance. Valid values:\nUnlock: The instance is not locked.\nManualLock: The instance is manually locked.\nLockByExpiration: The instance is automatically locked due to instance expiration.\nLockByRestoration: The instance is automatically locked due to instance restoration.\nLockByDiskQuota: The instance is automatically locked due to exhausted storage space.\nLockReadInstanceByDiskQuota: The instance is a read-only instance and is automatically locked due to exhausted storage.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "LockMode"
              ]
            }
          },
          "DeletionProtection": {
            "Description": "Indicates whether the release protection feature is enabled. Valid values:\ntrue\nfalse",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "DeletionProtection"
              ]
            }
          },
          "PayType": {
            "Description": "The billing method of the instance. Valid values:\nPostpaid: pay-as-you-go\nPrepaid: subscription",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "PayType"
              ]
            }
          },
          "GuardDBInstanceId": {
            "Description": "The ID of the disaster recovery instance that is attached to the instance.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "GuardDBInstanceId"
              ]
            }
          },
          "DBClusterNodes": {
            "Description": "The information about the node in the cluster.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "DBClusterNodes"
              ]
            }
          },
          "TimeZone": {
            "Description": "The time zone of the instance.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "TimeZone"
              ]
            }
          },
          "VpcId": {
            "Description": "The virtual private cloud (VPC) ID of the instance.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "VpcId"
              ]
            }
          },
          "MasterInstanceId": {
            "Description": "The ID of the primary instance.\nNote: If this parameter is not returned, the instance is the primary instance.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "MasterInstanceId"
              ]
            }
          },
          "CurrentKernelVersion": {
            "Description": "The minor engine version of the instance.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "CurrentKernelVersion"
              ]
            }
          },
          "CreationTime": {
            "Description": "The creation time. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "CreationTime"
              ]
            }
          },
          "ConnectionMode": {
            "Description": "The connection mode of the instance. Valid values:\nStandard: standard mode\nSafe: database proxy mode",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "ConnectionMode"
              ]
            }
          },
          "VpcCloudInstanceId": {
            "Description": "The VPC ID.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "VpcCloudInstanceId"
              ]
            }
          },
          "ReadonlyInstanceSQLDelayedTime": {
            "Description": "The latency at which the system replicates data to read-only instances. The system replicates data from the primary instance to the read-only instances at the latency that is specified by the ReadonlyInstanceSQLDelayedTime parameter. Unit: seconds.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "ReadonlyInstanceSQLDelayedTime"
              ]
            }
          },
          "ProxyType": {
            "Description": "The type of the proxy that is supported by the instance. Valid values:\n0: The instance does not support database proxies.\n1: The instance supports shared proxies, with which the instance runs in multi-tenant mode.\n2: The instance supports dedicated proxies, with which the instance runs in single-tenant mode.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "ProxyType"
              ]
            }
          },
          "ConnectionString": {
            "Description": "The internal endpoint of the instance.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "ConnectionString"
              ]
            }
          },
          "ExpireTime": {
            "Description": "The expiration time. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.\nNote: Pay-as-you-go instances never expire.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "ExpireTime"
              ]
            }
          },
          "AdvancedFeatures": {
            "Description": "The advanced features that are enabled for the instance. If multiple advanced features are enabled, the advanced features are separated by commas (,). This parameter is available only to instances that run SQL Server. Valid values:\nLinkedServer\nDistributeTransaction",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "AdvancedFeatures"
              ]
            }
          },
          "DBMaxQuantity": {
            "Description": "The maximum number of databases that can be created on the instance.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "DBMaxQuantity"
              ]
            }
          },
          "Category": {
            "Description": "The RDS edition of the instance. Valid values:\nBasic: RDS Basic Edition\nHighAvailability: RDS High-availability Edition\ncluster: RDS Cluster Edition for ApsaraDB RDS for MySQL\nAlwaysOn: RDS Cluster Edition for ApsaraDB RDS for SQL Server\nFinance: RDS Enterprise Edition\nServerless_basic: RDS Basic Edition for serverless instances",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "Category"
              ]
            }
          },
          "SuperPermissionMode": {
            "Description": "Indicates whether the instance supports superuser accounts, such as the system administrator (SA) account, the Active Directory (AD) account, and the host account.\nEnable\nDisabled",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "SuperPermissionMode"
              ]
            }
          },
          "DBInstanceNetType": {
            "Description": "The type of the network over which the instance is connected. Valid values:\nInternet: Internet\nIntranet: internal network",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "DBInstanceNetType"
              ]
            }
          },
          "DedicatedHostGroupId": {
            "Description": "The ID of the dedicated cluster.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "DedicatedHostGroupId"
              ]
            }
          },
          "TempDBInstanceId": {
            "Description": "The ID of the temporary instance that is attached to the instance.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "TempDBInstanceId"
              ]
            }
          },
          "DBInstanceCPU": {
            "Description": "The number of CPU cores.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "DBInstanceCPU"
              ]
            }
          },
          "SecurityIPList": {
            "Description": "The IP addresses in the IP address whitelist.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "SecurityIPList"
              ]
            }
          },
          "ReadOnlyDBInstanceIds": {
            "Description": "The IDs of the read-only instances that are attached to the primary instance.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "ReadOnlyDBInstanceIds"
              ]
            }
          },
          "SecurityIPMode": {
            "Description": "The whitelist mode of the instance. Valid values:\nnormal: standard whitelist mode\nsafety: enhanced whitelist mode",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "SecurityIPMode"
              ]
            }
          },
          "MaintainTime": {
            "Description": "The maintenance window of the instance. The time is displayed in UTC. Take note that the maintenance window displayed in the ApsaraDB RDS console is equal to the value of this parameter plus 8 hours.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "MaintainTime"
              ]
            }
          },
          "ZoneId": {
            "Description": "The zone ID.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "ZoneId"
              ]
            }
          },
          "Collation": {
            "Description": "The character set collation of the instance.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "Collation"
              ]
            }
          },
          "DBInstanceStorageType": {
            "Description": "The storage type of the instance. Valid values:\nlocal_ssd and ephemeral_ssd: local SSD\ncloud_ssd: standard SSD\ncloud_essd: enhanced SSD (ESSD)",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "DBInstanceStorageType"
              ]
            }
          },
          "MaxIOPS": {
            "Description": "The maximum number of I/O requests per second.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "MaxIOPS"
              ]
            }
          },
          "SlaveZones": {
            "Description": "The information about the zone of the secondary instance.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "SlaveZones"
              ]
            }
          },
          "Extra": {
            "Description": "The extended information of the instance.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "Extra"
              ]
            }
          },
          "ServerlessConfig": {
            "Description": "The settings of the serverless instance.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "ServerlessConfig"
              ]
            }
          },
          "BabelfishConfig": {
            "Description": "The configuration of the Babelfish feature for the ApsaraDB RDS for PostgreSQL instance.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "BabelfishConfig"
              ]
            }
          },
          "Tips": {
            "Description": "The information about the exception that is detected on the instance. This parameter is returned only when the instance is created in an ApsaraDB MyBase cluster that runs MySQL on Standard Edition.",
            "Value": {
              "Fn::GetAtt": [
                "ExtensionDataSource",
                "Tips"
              ]
            }
          }
        }
      }
                              

      YAML format

      ROSTemplateFormatVersion: '2015-09-01'
      Parameters:
        DBInstanceId:
          Description:
            en: The ID of the instance.
          Required: false
          Type: String
      Resources:
        ExtensionDataSource:
          Properties:
            DBInstanceId:
              Ref: DBInstanceId
          Type: DATASOURCE::RDS::DBInstance
      Outputs:
        AccountMaxQuantity:
          Description: The maximum number of accounts that can be created on the instance.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - AccountMaxQuantity
        AdvancedFeatures:
          Description: 'The advanced features that are enabled for the instance. If multiple
            advanced features are enabled, the advanced features are separated by commas
            (,). This parameter is available only to instances that run SQL Server. Valid
            values:
      
            LinkedServer
      
            DistributeTransaction'
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - AdvancedFeatures
        AutoUpgradeMinorVersion:
          Description: 'The method that is used to update the minor engine version of the
            instance. Valid values:
      
            Auto: automatic update.
      
            Manual: manual update. The minor engine version of the instance is forcefully
            updated only when the in-use minor engine version is phased out.'
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - AutoUpgradeMinorVersion
        AvailabilityValue:
          Description: The availability status of the instance in percentage.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - AvailabilityValue
        BabelfishConfig:
          Description: The configuration of the Babelfish feature for the ApsaraDB RDS for
            PostgreSQL instance.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - BabelfishConfig
        Category:
          Description: 'The RDS edition of the instance. Valid values:
      
            Basic: RDS Basic Edition
      
            HighAvailability: RDS High-availability Edition
      
            cluster: RDS Cluster Edition for ApsaraDB RDS for MySQL
      
            AlwaysOn: RDS Cluster Edition for ApsaraDB RDS for SQL Server
      
            Finance: RDS Enterprise Edition
      
            Serverless_basic: RDS Basic Edition for serverless instances'
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - Category
        Collation:
          Description: The character set collation of the instance.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - Collation
        ConnectionMode:
          Description: 'The connection mode of the instance. Valid values:
      
            Standard: standard mode
      
            Safe: database proxy mode'
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - ConnectionMode
        ConnectionString:
          Description: The internal endpoint of the instance.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - ConnectionString
        ConsoleVersion:
          Description: 'The type of the proxy that is used by the instance. Valid values:
      
            1: shared proxy
      
            2: dedicated proxy'
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - ConsoleVersion
        CreationTime:
          Description: The creation time. The time follows the ISO 8601 standard in the
            yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - CreationTime
        CurrentKernelVersion:
          Description: The minor engine version of the instance.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - CurrentKernelVersion
        DBClusterNodes:
          Description: The information about the node in the cluster.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - DBClusterNodes
        DBInstanceCPU:
          Description: The number of CPU cores.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - DBInstanceCPU
        DBInstanceClass:
          Description: The instance type of the instance.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - DBInstanceClass
        DBInstanceClassType:
          Description: 'The instance family to which the instance belongs. Valid values:
      
            s: shared instance family
      
            x: general-purpose instance family
      
            d: dedicated instance family
      
            h: dedicated host instance family'
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - DBInstanceClassType
        DBInstanceDescription:
          Description: The description of the instance.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - DBInstanceDescription
        DBInstanceDiskUsed:
          Description: The disk usage of the instance.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - DBInstanceDiskUsed
        DBInstanceId:
          Description: The instance ID.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - DBInstanceId
        DBInstanceMemory:
          Description: 'The memory capacity of the instance. Unit: MB.'
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - DBInstanceMemory
        DBInstanceNetType:
          Description: 'The type of the network over which the instance is connected. Valid
            values:
      
            Internet: Internet
      
            Intranet: internal network'
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - DBInstanceNetType
        DBInstanceStatus:
          Description: The status of the instance.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - DBInstanceStatus
        DBInstanceStorage:
          Description: 'The storage capacity of the instance. Unit: GB.'
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - DBInstanceStorage
        DBInstanceStorageType:
          Description: 'The storage type of the instance. Valid values:
      
            local_ssd and ephemeral_ssd: local SSD
      
            cloud_ssd: standard SSD
      
            cloud_essd: enhanced SSD (ESSD)'
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - DBInstanceStorageType
        DBInstanceType:
          Description: 'The type of the instance. Valid values:
      
            Primary: primary instance
      
            Readonly: read-only instance
      
            Guard: disaster recovery instance
      
            Temp: temporary instance'
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - DBInstanceType
        DBMaxQuantity:
          Description: The maximum number of databases that can be created on the instance.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - DBMaxQuantity
        DedicatedHostGroupId:
          Description: The ID of the dedicated cluster.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - DedicatedHostGroupId
        DeletionProtection:
          Description: 'Indicates whether the release protection feature is enabled. Valid
            values:
      
            true
      
            false'
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - DeletionProtection
        Engine:
          Description: 'The database engine of the instance. Valid values:
      
            MySQL
      
            PostgreSQL
      
            SQLServer
      
            MariaDB'
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - Engine
        EngineVersion:
          Description: The database engine version.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - EngineVersion
        ExpireTime:
          Description: 'The expiration time. The time follows the ISO 8601 standard in the
            yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
      
            Note: Pay-as-you-go instances never expire.'
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - ExpireTime
        Extra:
          Description: The extended information of the instance.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - Extra
        GeneralGroupName:
          Description: The name of the dedicated cluster to which the instance belongs.
            This parameter is returned only when the instance is created in an ApsaraDB
            MyBase cluster that runs MySQL on Standard Edition.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - GeneralGroupName
        GuardDBInstanceId:
          Description: The ID of the disaster recovery instance that is attached to the
            instance.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - GuardDBInstanceId
        IPType:
          Description: The type of the IP address. Only IPv4 addresses are supported.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - IPType
        IncrementSourceDBInstanceId:
          Description: The ID of the instance from which incremental data comes. The incremental
            data of a disaster recovery instance or read-only instance comes from its primary
            instance. If this parameter is not returned, the instance is a primary instance.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - IncrementSourceDBInstanceId
        InstanceNetworkType:
          Description: 'The network type of the instance. Valid values:
      
            Classic
      
            VPC'
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - InstanceNetworkType
        InstructionSetArch:
          Description: 'The architecture type of the instance. Valid values:
      
            x86
      
            arm'
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - InstructionSetArch
        LatestKernelVersion:
          Description: The latest minor engine version that is supported by the instance.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - LatestKernelVersion
        LockMode:
          Description: 'The lock mode of the instance. Valid values:
      
            Unlock: The instance is not locked.
      
            ManualLock: The instance is manually locked.
      
            LockByExpiration: The instance is automatically locked due to instance expiration.
      
            LockByRestoration: The instance is automatically locked due to instance restoration.
      
            LockByDiskQuota: The instance is automatically locked due to exhausted storage
            space.
      
            LockReadInstanceByDiskQuota: The instance is a read-only instance and is automatically
            locked due to exhausted storage.'
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - LockMode
        LockReason:
          Description: The reason why the instance was locked.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - LockReason
        MaintainTime:
          Description: The maintenance window of the instance. The time is displayed in
            UTC. Take note that the maintenance window displayed in the ApsaraDB RDS console
            is equal to the value of this parameter plus 8 hours.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - MaintainTime
        MasterInstanceId:
          Description: 'The ID of the primary instance.
      
            Note: If this parameter is not returned, the instance is the primary instance.'
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - MasterInstanceId
        MasterZone:
          Description: The zone ID of the primary instance.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - MasterZone
        MaxConnections:
          Description: The maximum number of concurrent connections.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - MaxConnections
        MaxIOMBPS:
          Description: 'The maximum I/O throughput. Unit: MB/s.'
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - MaxIOMBPS
        MaxIOPS:
          Description: The maximum number of I/O requests per second.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - MaxIOPS
        PGBouncerEnabled:
          Description: Indicates whether PgBouncer is enabled.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - PGBouncerEnabled
        PayType:
          Description: 'The billing method of the instance. Valid values:
      
            Postpaid: pay-as-you-go
      
            Prepaid: subscription'
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - PayType
        Port:
          Description: The port that is used to connect to the instance over an internal
            network.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - Port
        ProxyType:
          Description: 'The type of the proxy that is supported by the instance. Valid values:
      
            0: The instance does not support database proxies.
      
            1: The instance supports shared proxies, with which the instance runs in multi-tenant
            mode.
      
            2: The instance supports dedicated proxies, with which the instance runs in
            single-tenant mode.'
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - ProxyType
        ReadOnlyDBInstanceIds:
          Description: The IDs of the read-only instances that are attached to the primary
            instance.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - ReadOnlyDBInstanceIds
        ReadonlyInstanceSQLDelayedTime:
          Description: 'The latency at which the system replicates data to read-only instances.
            The system replicates data from the primary instance to the read-only instances
            at the latency that is specified by the ReadonlyInstanceSQLDelayedTime parameter.
            Unit: seconds.'
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - ReadonlyInstanceSQLDelayedTime
        ResourceGroupId:
          Description: The resource group ID.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - ResourceGroupId
        SecurityIPList:
          Description: The IP addresses in the IP address whitelist.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - SecurityIPList
        SecurityIPMode:
          Description: 'The whitelist mode of the instance. Valid values:
      
            normal: standard whitelist mode
      
            safety: enhanced whitelist mode'
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - SecurityIPMode
        ServerlessConfig:
          Description: The settings of the serverless instance.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - ServerlessConfig
        SlaveZones:
          Description: The information about the zone of the secondary instance.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - SlaveZones
        SuperPermissionMode:
          Description: 'Indicates whether the instance supports superuser accounts, such
            as the system administrator (SA) account, the Active Directory (AD) account,
            and the host account.
      
            Enable
      
            Disabled'
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - SuperPermissionMode
        TempDBInstanceId:
          Description: The ID of the temporary instance that is attached to the instance.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - TempDBInstanceId
        TimeZone:
          Description: The time zone of the instance.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - TimeZone
        Tips:
          Description: The information about the exception that is detected on the instance.
            This parameter is returned only when the instance is created in an ApsaraDB
            MyBase cluster that runs MySQL on Standard Edition.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - Tips
        TipsLevel:
          Description: 'The severity level of the exception that is detected on the instance.
            This parameter is returned only when the instance is created in an ApsaraDB
            MyBase cluster that runs MySQL on Standard Edition. Valid values:
      
            1: The instance is normal.
      
            2: The specifications of the read-only instances do not match the specifications
            of the primary instance. You must adjust the specifications of these instances
            based on your business requirements.'
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - TipsLevel
        VSwitchId:
          Description: The vSwitch ID.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - VSwitchId
        VpcCloudInstanceId:
          Description: The VPC ID.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - VpcCloudInstanceId
        VpcId:
          Description: The virtual private cloud (VPC) ID of the instance.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - VpcId
        ZoneId:
          Description: The zone ID.
          Value:
            Fn::GetAtt:
            - ExtensionDataSource
            - ZoneId
                              
  5. Configure the parameters.

    Parameter

    Required

    Description

    Example

    Stack Name

    Yes

    The name of the stack.

    Rds_Test

    DBInstanceId

    Yes

    The ID of the RDS instance.

    rm-bp1tuz16pa5x8****

    Configure Stack Settings

    No

    The stack parameters.

    For more information, see Create a stack.

  6. Click Create.

  7. Click the Outputs tab to view the instance details.

    image