Cria uma instância do DTS para migração de dados, sincronização ou rastreamento de alterações.
Use os novos tipos de recurso em substituição aos anteriores.
ALIYUN::DTS::MigrationJob (anterior) = ALIYUN::DTS::MigrationJob2 (novo) + ALIYUN::DTS::Instance (novo)
ALIYUN::DTS::SynchronizationJob (anterior) = ALIYUN::DTS::SynchronizationJob2 (novo) + ALIYUN::DTS::Instance (novo)
ALIYUN::DTS::SubscriptionInstance (anterior) = ALIYUN::DTS::SubscriptionJob2 (novo) + ALIYUN::DTS::Instance (novo)
Sintaxe
{
"Type": "ALIYUN::DTS::Instance",
"Properties": {
"ResourceGroupId": String,
"FeeType": String,
"ComputeUnit": Integer,
"Period": String,
"DestinationRegion": String,
"InstanceClass": String,
"SourceEndpointEngineName": String,
"PayType": String,
"AutoPay": Boolean,
"DestinationEndpointEngineName": String,
"SourceRegion": String,
"Du": Integer,
"Type": String,
"DatabaseCount": Integer,
"InsightModule": Boolean,
"UsedTime": Integer,
"AutoStart": Boolean,
"JobId": String,
"SyncArchitecture": String,
"MaxDu": Integer,
"MinDu": Integer
}
}
Propriedades
|
Propriedade |
Tipo |
Obrigatório |
Atualização permitida |
Descrição |
Restrições |
|
ResourceGroupId |
String |
Não |
Não |
ID do grupo de recursos. |
Nenhuma |
|
FeeType |
String |
Não |
Não |
Tipo de faturamento da instância de rastreamento de alterações. |
Valores válidos:
|
|
ComputeUnit |
Integer |
Não |
Não |
Especificações da tarefa ETL. |
A unidade é compute units (CUs). Uma CU equivale a 1 vCPU e 4 GB de memória. O valor deve ser um número inteiro maior ou igual a 2. Nota
Se você especificar este parâmetro, poderá configurar uma tarefa ETL no modo DAG para limpar e transformar dados. |
|
Period |
String |
Não |
Sim |
Unidade do período de assinatura. |
Valores válidos:
Nota
Este parâmetro é obrigatório e tem efeito somente quando o parâmetro PayType está definido como PrePaid. |
|
DestinationRegion |
String |
Não |
Não |
Região da instância de destino. |
Para mais informações, consulte Lista de regiões suportadas. Nota
Especifique este parâmetro ou JobId. |
|
InstanceClass |
String |
Sim |
Sim |
Classe da instância de migração ou sincronização de dados. |
Valores válidos:
Nota
Para mais informações sobre o desempenho de cada classe de instância, consulte Especificações de instâncias de migração de dados e Especificações de instâncias de sincronização de dados. |
|
PayType |
String |
Sim |
Sim |
Método de faturamento. |
Valores válidos:
|
|
Type |
String |
Sim |
Não |
Tipo da instância do DTS. |
Valores válidos:
|
|
AutoPay |
Boolean |
Não |
Não |
Defina se a renovação automática está ativada para a instância de assinatura. |
Valores válidos:
|
|
DestinationEndpointEngineName |
String |
Não |
Não |
Mecanismo de banco de dados da instância de destino. |
Valores válidos:
Para bancos de dados de origem e destino suportados, consulte Visão geral dos cenários de sincronização de dados e Visão geral dos cenários de migração de dados. Nota
Especifique este parâmetro ou JobId. |
|
SourceEndpointEngineName |
String |
Não |
Não |
Mecanismo de banco de dados da instância de origem. |
Valores válidos:
Nota
Especifique este parâmetro ou JobId. Para bancos de dados de origem e destino suportados, consulte Visão geral da solução de sincronização e Visão geral da solução de migração. |
|
InsightModule |
Boolean |
Não |
Não |
Defina se o módulo insight está ativado. |
Nenhuma |
|
SourceRegion |
String |
Não |
Não |
Região da instância de origem. |
Para mais informações, consulte Lista de regiões suportadas. Nota
Especifique este parâmetro ou JobId. |
|
Du |
Integer |
Não |
Não |
Número de unidades DTS (DUs) atribuídas a uma tarefa do DTS em um cluster dedicado. |
O valor deve ser um número inteiro de 1 a 100. Nota
O valor deve estar dentro do intervalo de DUs disponíveis para o cluster dedicado do DTS. Para mais informações, consulte O que é um cluster dedicado do DTS?. |
|
DatabaseCount |
Integer |
Não |
Não |
Número de instâncias personalizadas privadas do ApsaraDB RDS em uma instância do PolarDB-X 1.0. |
Valor padrão: 1. Nota
Especifique este parâmetro somente se o parâmetro SourceEndpointEngineName estiver definido como drds. |
|
UsedTime |
Integer |
Não |
Sim |
Duração da assinatura. |
Valores válidos:
Nota
Este parâmetro é obrigatório e tem efeito somente quando o parâmetro PayType está definido como PrePaid. Defina o parâmetro Period para especificar a unidade da duração da assinatura. |
|
AutoStart |
Boolean |
Não |
Não |
Defina se a tarefa inicia automaticamente após a criação da instância. |
Valores válidos:
|
|
JobId |
String |
Não |
Não |
ID da tarefa. |
Se você especificar este parâmetro, não será necessário especificar |
|
SyncArchitecture |
String |
Não |
Não |
Topologia de sincronização. |
Valores válidos:
|
|
MaxDu |
Integer |
Não |
Não |
Número máximo de DUs para a instância Serverless. |
Aplica-se apenas a instâncias Serverless. |
|
MinDu |
Integer |
Não |
Não |
Número mínimo de DUs para a instância Serverless. |
Aplica-se apenas a instâncias Serverless. |
Valores de retorno
Fn::GetAtt
InstanceId: ID da instância do DTS.
JobId: ID da tarefa.
Exemplos
ROSTemplateFormatVersion: '2015-09-01'
Parameters:
AutoPay:
Type: Boolean
Description:
en: 'Specifies whether to automatically renew the DTS instance when it expires.
Valid values:
- **true**: enables auto-renewal.
- **false**: disables auto-renewal. This is the default value.'
AutoStart:
Type: Boolean
Description:
en: 'Specifies whether to automatically start the task after the DTS instance
is created. Valid values:
- **true**: automatically starts the task.
- **false**: does not automatically start the task. This is the default value.'
ComputeUnit:
Type: Number
Description:
en: The specifications of the extract, transform, and load (ETL) instance. The
unit is compute unit (CU). One CU is equivalent to 1 vCPU and 4 GB of memory.
The value must be an integer that is greater than or equal to 2.
DatabaseCount:
Type: Number
Description:
en: 'The number of private custom ApsaraDB RDS instances in a PolarDB-X 1.0 instance.
Default value: **1**.
**Note**: You must specify this parameter only if the **SourceEndpointEngineName**
parameter is set to **drds**.'
DestinationEndpointEngineName:
Type: String
Description:
en: 'The database engine of the destination instance. Valid values:
- **MySQL** (default): an ApsaraDB RDS for MySQL instance or a self-managed MySQL database
- **PolarDB**: a PolarDB for MySQL cluster
- **polardb_o**: a PolarDB for Oracle cluster
- **polardb_pg**: a PolarDB for PostgreSQL cluster
- **Redis**: a Tair instance or a self-managed Redis database
- **DRDS**: a PolarDB-X 1.0 or 2.0 instance
- **PostgreSQL**: a self-managed PostgreSQL database
- **odps**: a MaxCompute project
- **oracle**: a self-managed Oracle database
- **mongodb**: an ApsaraDB for MongoDB instance or a self-managed MongoDB database
- **tidb**: a TiDB database
- **ADS**: an AnalyticDB for MySQL 2.0 cluster
- **ADB30**: an AnalyticDB for MySQL 3.0 cluster
- **Greenplum**: an AnalyticDB for PostgreSQL instance
- **MSSQL**: an ApsaraDB RDS for SQL Server instance or a self-managed SQL Server database
- **kafka**: an ApsaraMQ for Kafka instance or a self-managed Kafka cluster
- **DataHub**: a DataHub project
- **DB2**: a self-managed Db2 for LUW database
- **as400**: an AS/400 server
- **Tablestore**: a Tablestore instance
**Note**: You must specify either this parameter or the **JobId** parameter.'
DestinationRegion:
Type: String
Description:
en: 'The ID of the region in which the destination instance resides.
**Note**: You must specify either this parameter or the **JobId** parameter.'
Du:
Type: Number
MinValue: 1
MaxValue: 100
Description:
en: 'The number of DTS units (DUs) that are assigned to a DTS task that runs
on a DTS dedicated cluster. Valid values: 1 to 100.
**Note**: The value of this parameter must be within the range of the number
of DUs available for the DTS dedicated cluster.'
FeeType:
Type: String
Description:
en: 'The billing type of the change tracking instance. Valid values:
- **ONLY_CONFIGURATION_FEE**: charges only for the configuration and waives data traffic fees.
- **CONFIGURATION_FEE_AND_DATA_FEE**: charges for both the configuration and data traffic.'
InsightModule:
Type: Boolean
Description:
en: 'Specifies whether to enable the insight module.'
InstanceClass:
Type: String
AllowedValues:
- xxlarge
- xlarge
- large
- medium
- small
- micro
Description:
en: 'The instance class of a data migration or data synchronization instance.
- For a data migration instance, the valid values are **xxlarge**, **xlarge**, **large**, **medium**, and **small**.
- For a data synchronization instance, the valid values are **large**, **medium**, **small**, and **micro**.
**Note**: The instance class can be changed after the instance is created. However, the instance downgrade feature is in canary release and is available only to specific users.'
JobId:
Type: String
Description:
en: 'The ID of the task.
**Note**: If you specify this parameter, you do not need to specify the `SourceRegion`, `DestinationRegion`, `SourceEndpointEngineName`, or `DestinationEndpointEngineName` parameter. The value of the `JobId` parameter takes precedence even if these other parameters are specified.'
MaxDu:
Type: Number
Description:
en: 'The maximum number of DUs for the Serverless instance. This parameter applies only to Serverless instances.'
MinDu:
Type: Number
Description:
en: 'The minimum number of DUs for the Serverless instance. This parameter applies only to Serverless instances.'
PayType:
Type: String
AllowedValues:
- PayAsYouGo
- PostPaid
- PayOnDemand
- Postpaid
- PostPay
- Postpay
- POSTPAY
- POST
- Subscription
- PrePaid
- Prepaid
- PrePay
- Prepay
- PREPAY
- PRE
Description:
en: 'The billing method. Valid values:
- **PrePaid**: subscription
- **PostPaid**: pay-as-you-go'
Period:
Type: String
AllowedValues:
- Year
- Month
Description:
en: 'The unit of the subscription duration for a subscription instance. Valid values: **Year** and **Month**.
**Note**: This parameter is required and takes effect only if the **PayType** parameter is set to **PrePaid**.'
ResourceGroupId:
Type: String
Description:
en: The ID of the resource group.
SourceEndpointEngineName:
Type: String
Description:
en: 'The database engine of the source instance. Valid values:
- **MySQL** (default): an ApsaraDB RDS for MySQL instance or a self-managed MySQL database
- **PolarDB**: a PolarDB for MySQL cluster
- **polardb_o**: a PolarDB for Oracle cluster
- **polardb_pg**: a PolarDB for PostgreSQL cluster
- **Redis**: a Tair instance or a self-managed Redis database
- **DRDS**: a PolarDB-X 1.0 or 2.0 instance
- **PostgreSQL**: a self-managed PostgreSQL database
- **odps**: a MaxCompute project
- **oracle**: a self-managed Oracle database
- **mongodb**: an ApsaraDB for MongoDB instance or a self-managed MongoDB database
- **tidb**: a TiDB database
- **ADS**: an AnalyticDB for MySQL 2.0 cluster
- **ADB30**: an AnalyticDB for MySQL 3.0 cluster
- **Greenplum**: an AnalyticDB for PostgreSQL instance
- **MSSQL**: an ApsaraDB RDS for SQL Server instance or a self-managed SQL Server database
- **kafka**: an ApsaraMQ for Kafka instance or a self-managed Kafka cluster
- **DataHub**: a DataHub project
- **DB2**: a self-managed Db2 for LUW database
- **as400**: an AS/400 server
- **Tablestore**: a Tablestore instance
**Note**: You must specify either this parameter or the **JobId** parameter.'
SourceRegion:
Type: String
Description:
en: 'The ID of the region in which the source instance resides.
**Note**: You must specify either this parameter or the **JobId** parameter.'
SyncArchitecture:
Type: String
AllowedValues:
- oneway
- bidirectional
Description:
en: 'The synchronization topology. Valid values:
- **oneway** (default): one-way synchronization
- **bidirectional**: two-way synchronization'
Type:
Type: String
AllowedValues:
- MIGRATION
- SYNC
- SUBSCRIBE
Description:
en: 'The type of the DTS instance. Valid values:
- **MIGRATION**: data migration instance
- **SYNC**: data synchronization instance
- **SUBSCRIBE**: change tracking instance'
UsedTime:
Type: Number
AllowedValues:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
Description:
en: 'The subscription duration.
- If the **Period** parameter is set to **Month**, the valid values are 1, 2, 3, 4, 5, 6, 7, 8, and 9.
- If the **Period** parameter is set to **Year**, the valid values are 1, 2, 3, and 5.
**Note**: This parameter is required and takes effect only if the **PayType** parameter is set to **PrePaid**. You can set the **Period** parameter to specify the unit of the subscription duration.'
Resources:
Instance:
Type: ALIYUN::DTS::Instance
Properties:
AutoPay:
Ref: AutoPay
AutoStart:
Ref: AutoStart
ComputeUnit:
Ref: ComputeUnit
DatabaseCount:
Ref: DatabaseCount
DestinationEndpointEngineName:
Ref: DestinationEndpointEngineName
DestinationRegion:
Ref: DestinationRegion
Du:
Ref: Du
FeeType:
Ref: FeeType
InsightModule:
Ref: InsightModule
InstanceClass:
Ref: InstanceClass
JobId:
Ref: JobId
MaxDu:
Ref: MaxDu
MinDu:
Ref: MinDu
PayType:
Ref: PayType
Period:
Ref: Period
ResourceGroupId:
Ref: ResourceGroupId
SourceEndpointEngineName:
Ref: SourceEndpointEngineName
SourceRegion:
Ref: SourceRegion
SyncArchitecture:
Ref: SyncArchitecture
Type:
Ref: Type
UsedTime:
Ref: UsedTime
Outputs:
InstanceId:
Description: The ID of the DTS instance.
Value:
Fn::GetAtt:
- Instance
- InstanceId
JobId:
Description: The ID of the task.
Value:
Fn::GetAtt:
- Instance
- JobId
{
"ROSTemplateFormatVersion": "2015-09-01",
"Parameters": {
"AutoPay": {
"Type": "Boolean",
"Description": {
"en": "Specifies whether to automatically renew the DTS instance when it expires.\nValid values:\n- **true**: enables auto-renewal.\n- **false**: disables auto-renewal. This is the default value."
}
},
"AutoStart": {
"Type": "Boolean",
"Description": {
"en": "Specifies whether to automatically start the task after the DTS instance is created.\nValid values:\n- **true**: automatically starts the task.\n- **false**: does not automatically start the task. This is the default value."
}
},
"ComputeUnit": {
"Type": "Number",
"Description": {
"en": "The specifications of the extract, transform, and load (ETL) instance. The unit is compute unit (CU). One CU is equivalent to 1 vCPU and 4 GB of memory. The value must be an integer that is greater than or equal to 2."
}
},
"DatabaseCount": {
"Type": "Number",
"Description": {
"en": "The number of private custom ApsaraDB RDS instances in a PolarDB-X 1.0 instance. Default value: **1**.\n**Note**: You must specify this parameter only if the **SourceEndpointEngineName** parameter is set to **drds**."
}
},
"DestinationEndpointEngineName": {
"Type": "String",
"Description": {
"en": "The database engine of the destination instance. Valid values:\n- **MySQL** (default): an ApsaraDB RDS for MySQL instance or a self-managed MySQL database\n- **PolarDB**: a PolarDB for MySQL cluster\n- **polardb_o**: a PolarDB for Oracle cluster\n- **polardb_pg**: a PolarDB for PostgreSQL cluster\n- **Redis**: a Tair instance or a self-managed Redis database\n- **DRDS**: a PolarDB-X 1.0 or 2.0 instance\n- **PostgreSQL**: a self-managed PostgreSQL database\n- **odps**: a MaxCompute project\n- **oracle**: a self-managed Oracle database\n- **mongodb**: an ApsaraDB for MongoDB instance or a self-managed MongoDB database\n- **tidb**: a TiDB database\n- **ADS**: an AnalyticDB for MySQL 2.0 cluster\n- **ADB30**: an AnalyticDB for MySQL 3.0 cluster\n- **Greenplum**: an AnalyticDB for PostgreSQL instance\n- **MSSQL**: an ApsaraDB RDS for SQL Server instance or a self-managed SQL Server database\n- **kafka**: an ApsaraMQ for Kafka instance or a self-managed Kafka cluster\n- **DataHub**: a DataHub project\n- **DB2**: a self-managed Db2 for LUW database\n- **as400**: an AS/400 server\n- **Tablestore**: a Tablestore instance\n**Note**: You must specify either this parameter or the **JobId** parameter."
}
},
"DestinationRegion": {
"Type": "String",
"Description": {
"en": "The ID of the region in which the destination instance resides.\n**Note**: You must specify either this parameter or the **JobId** parameter."
}
},
"Du": {
"Type": "Number",
"MinValue": 1,
"MaxValue": 100,
"Description": {
"en": "The number of DTS units (DUs) that are assigned to a DTS task that runs on a DTS dedicated cluster. Valid values: 1 to 100.\n**Note**: The value of this parameter must be within the range of the number of DUs available for the DTS dedicated cluster."
}
},
"FeeType": {
"Type": "String",
"Description": {
"en": "The billing type of the change tracking instance. Valid values:\n- **ONLY_CONFIGURATION_FEE**: charges only for the configuration and waives data traffic fees.\n- **CONFIGURATION_FEE_AND_DATA_FEE**: charges for both the configuration and data traffic."
}
},
"InsightModule": {
"Type": "Boolean",
"Description": {
"en": "Specifies whether to enable the insight module."
}
},
"InstanceClass": {
"Type": "String",
"AllowedValues": [
"xxlarge",
"xlarge",
"large",
"medium",
"small",
"micro"
],
"Description": {
"en": "The instance class of a data migration or data synchronization instance.\n- For a data migration instance, the valid values are **xxlarge**, **xlarge**, **large**, **medium**, and **small**.\n- For a data synchronization instance, the valid values are **large**, **medium**, **small**, and **micro**.\n**Note**: The instance class can be changed after the instance is created. However, the instance downgrade feature is in canary release and is available only to specific users."
}
},
"JobId": {
"Type": "String",
"Description": {
"en": "The ID of the task.\n**Note**: If you specify this parameter, you do not need to specify the `SourceRegion`, `DestinationRegion`, `SourceEndpointEngineName`, or `DestinationEndpointEngineName` parameter. The value of the `JobId` parameter takes precedence even if these other parameters are specified."
}
},
"MaxDu": {
"Type": "Number",
"Description": {
"en": "The maximum number of DUs for the Serverless instance. This parameter applies only to Serverless instances."
}
},
"MinDu": {
"Type": "Number",
"Description": {
"en": "The minimum number of DUs for the Serverless instance. This parameter applies only to Serverless instances."
}
},
"PayType": {
"Type": "String",
"AllowedValues": [
"PayAsYouGo",
"PostPaid",
"PayOnDemand",
"Postpaid",
"PostPay",
"Postpay",
"POSTPAY",
"POST",
"Subscription",
"PrePaid",
"Prepaid",
"PrePay",
"Prepay",
"PREPAY",
"PRE"
],
"Description": {
"en": "The billing method. Valid values:\n- **PrePaid**: subscription\n- **PostPaid**: pay-as-you-go"
}
},
"Period": {
"Type": "String",
"AllowedValues": [
"Year",
"Month"
],
"Description": {
"en": "The unit of the subscription duration for a subscription instance. Valid values: **Year** and **Month**.\n**Note**: This parameter is required and takes effect only if the **PayType** parameter is set to **PrePaid**."
}
},
"ResourceGroupId": {
"Type": "String",
"Description": {
"en": "The ID of the resource group."
}
},
"SourceEndpointEngineName": {
"Type": "String",
"Description": {
"en": "The database engine of the source instance. Valid values:\n- **MySQL** (default): an ApsaraDB RDS for MySQL instance or a self-managed MySQL database\n- **PolarDB**: a PolarDB for MySQL cluster\n- **polardb_o**: a PolarDB for Oracle cluster\n- **polardb_pg**: a PolarDB for PostgreSQL cluster\n- **Redis**: a Tair instance or a self-managed Redis database\n- **DRDS**: a PolarDB-X 1.0 or 2.0 instance\n- **PostgreSQL**: a self-managed PostgreSQL database\n- **odps**: a MaxCompute project\n- **oracle**: a self-managed Oracle database\n- **mongodb**: an ApsaraDB for MongoDB instance or a self-managed MongoDB database\n- **tidb**: a TiDB database\n- **ADS**: an AnalyticDB for MySQL 2.0 cluster\n- **ADB30**: an AnalyticDB for MySQL 3.0 cluster\n- **Greenplum**: an AnalyticDB for PostgreSQL instance\n- **MSSQL**: an ApsaraDB RDS for SQL Server instance or a self-managed SQL Server database\n- **kafka**: an ApsaraMQ for Kafka instance or a self-managed Kafka cluster\n- **DataHub**: a DataHub project\n- **DB2**: a self-managed Db2 for LUW database\n- **as400**: an AS/400 server\n- **Tablestore**: a Tablestore instance\n**Note**: You must specify either this parameter or the **JobId** parameter."
}
},
"SourceRegion": {
"Type": "String",
"Description": {
"en": "The ID of the region in which the source instance resides.\n**Note**: You must specify either this parameter or the **JobId** parameter."
}
},
"SyncArchitecture": {
"Type": "String",
"AllowedValues": [
"oneway",
"bidirectional"
],
"Description": {
"en": "The synchronization topology. Valid values:\n- **oneway** (default): one-way synchronization\n- **bidirectional**: two-way synchronization"
}
},
"Type": {
"Type": "String",
"AllowedValues": [
"MIGRATION",
"SYNC",
"SUBSCRIBE"
],
"Description": {
"en": "The type of the DTS instance. Valid values:\n- **MIGRATION**: data migration instance\n- **SYNC**: data synchronization instance\n- **SUBSCRIBE**: change tracking instance"
}
},
"UsedTime": {
"Type": "Number",
"AllowedValues": [
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"Description": {
"en": "The subscription duration.\n- If the **Period** parameter is set to **Month**, the valid values are 1, 2, 3, 4, 5, 6, 7, 8, and 9.\n- If the **Period** parameter is set to **Year**, the valid values are 1, 2, 3, and 5.\n**Note**: This parameter is required and takes effect only if the **PayType** parameter is set to **PrePaid**. You can set the **Period** parameter to specify the unit of the subscription duration."
}
}
},
"Resources": {
"Instance": {
"Type": "ALIYUN::DTS::Instance",
"Properties": {
"AutoPay": {
"Ref": "AutoPay"
},
"AutoStart": {
"Ref": "AutoStart"
},
"ComputeUnit": {
"Ref": "ComputeUnit"
},
"DatabaseCount": {
"Ref": "DatabaseCount"
},
"DestinationEndpointEngineName": {
"Ref": "DestinationEndpointEngineName"
},
"DestinationRegion": {
"Ref": "DestinationRegion"
},
"Du": {
"Ref": "Du"
},
"FeeType": {
"Ref": "FeeType"
},
"InsightModule": {
"Ref": "InsightModule"
},
"InstanceClass": {
"Ref": "InstanceClass"
},
"JobId": {
"Ref": "JobId"
},
"MaxDu": {
"Ref": "MaxDu"
},
"MinDu": {
"Ref": "MinDu"
},
"PayType": {
"Ref": "PayType"
},
"Period": {
"Ref": "Period"
},
"ResourceGroupId": {
"Ref": "ResourceGroupId"
},
"SourceEndpointEngineName": {
"Ref": "SourceEndpointEngineName"
},
"SourceRegion": {
"Ref": "SourceRegion"
},
"SyncArchitecture": {
"Ref": "SyncArchitecture"
},
"Type": {
"Ref": "Type"
},
"UsedTime": {
"Ref": "UsedTime"
}
}
}
},
"Outputs": {
"InstanceId": {
"Description": "The ID of the DTS instance.",
"Value": {
"Fn::GetAtt": [
"Instance",
"InstanceId"
]
}
},
"JobId": {
"Description": "The ID of the task.",
"Value": {
"Fn::GetAtt": [
"Instance",
"JobId"
]
}
}
}
}