Com o ALIYUN::KAFKA::Instance, crie uma instância do ApsaraMQ for Kafka.
Sintaxe
{
"Type": "ALIYUN::KAFKA::Instance",
"Properties": {
"DeployType": Integer,
"DiskType": String,
"DeployOption": Map,
"EipMax": Integer,
"SpecType": String,
"IoMax": Integer,
"IoMaxSpec": String,
"DiskSize": Integer,
"TopicQuota": Integer,
"PayType": String,
"Tags": List,
"DeletionForce": Boolean,
"OpenConnector": Boolean,
"PartitionNum": Integer,
"ServerlessConfig": Map
}
}
Propriedades
Propriedade | Tipo | Obrigatório | Editável | Descrição | Restrição |
DeployType | Integer | Sim | Não | O tipo de implantação. | Valores válidos:
|
DiskType | String | Não | Não | A categoria do disco. | Valores válidos:
|
DeployOption | Map | Não | Não | Detalhes das opções de implantação. | Para mais informações, consulte Propriedades de DeployOption. |
EipMax | Integer | Não | Sim | O tráfego da Internet. | Especifique esta propriedade quando defina o DeployType como 4. Valores válidos: 1 a 160. |
SpecType | String | Não | Sim | A edição. | Valores válidos:
|
IoMax | Integer | Não | Sim | O tráfego de pico. | Especifique a propriedade IoMax ou IoMaxSpec. Se ambas forem especifique, a propriedade IoMaxSpec terá precedência. Recomendamos que especifique apenas a propriedade IoMaxSpec. Para mais informações, consulte Billing overview. |
IoMaxSpec | String | Não | Sim | A especificação de tráfego. | Especifique a propriedade IoMax ou IoMaxSpec. Se ambas forem especifique, a propriedade IoMaxSpec terá precedência. Recomendamos que especifique apenas a propriedade IoMaxSpec. Para mais informações, consulte Billing overview. |
DiskSize | Integer | Não | Sim | O tamanho do disco. | Valores válidos: 500 a 96000. Unidade: GB. |
TopicQuota | Integer | Não | Sim | O número de tópicos. | Valores válidos: 50 a 79. |
PayType | String | Não | Não | O método de faturamento. | Valores válidos:
|
Tags | List | Não | Sim | As tags. | É possível adicionar até 20 tags. Para mais informações, consulte Propriedades de Tags. |
DeletionForce | Boolean | Não | Sim | Especifica se exclua a instância à força. | Valores válidos:
|
OpenConnector | Boolean | Não | Não | Especifica se ative o recurso de conector. | Valores válidos:
Nota Para mais informações sobre conectores, consulte Overview of connectors. |
PartitionNum | Integer | Não | Sim | O número de partições. | Aplicam-se as seguintes regras:
Para mais informações, consulte Billing overview. |
ServerlessConfig | Map | Não | Sim | Os parâmetros da instância serverless. | Especifique esta propriedade ao criar uma instância serverless do ApsaraMQ for Kafka V3. Para mais informações, consulte a seção Propriedades de ServerlessConfig neste tópico. |
Sintaxe de Tags
"Tags": [
{
"Key": String,
"Value": String
}
]
Propriedades de Tags
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Key |
String |
Sim |
Não |
A chave da tag. |
A chave da tag deve ter de 1 a 128 caracteres e não pode conter |
|
Value |
String |
Não |
Não |
O valor da tag. |
O valor da tag pode ter até 128 caracteres e não pode conter |
Sintaxe de DeployOption
"DeployOption": {
"IsEipInner": Boolean,
"VpcId": String,
"ZoneId": String,
"VSwitchId": String,
"SecurityGroup": String,
"DeployModule": String,
"Name": String,
"IsSetUserAndPassword": Boolean,
"Username": String,
"Password": String,
"ServiceVersion": String,
"Config": Map,
"Notifier": String,
"CrossZone": Boolean,
"UserPhoneNum": String,
"SelectedZones": List,
"VSwitchIds": List,
"KMSKeyId": String,
"IsForceSelectedZones": Boolean
}
Propriedades de DeployOption
Propriedade | Tipo | Obrigatório | Editável | Descrição | Restrição |
IsEipInner | Boolean | Não | Não | Especifica se a instância é compatível com endereços IP elásticos (EIPs). | Valores válidos:
O valor desta propriedade deve corresponder ao tipo de instância. O valor válido para uma instância conectada à Internet e a uma VPC é true. Para uma instância conectada apenas a uma VPC, o valor válido é false. |
DeployModule | String | Sim | Não | O modo de implantação. | Valores válidos:
|
VpcId | String | Não | Não | O ID da VPC onde a instância será implantada. | Nenhum. |
ZoneId | String | Não | Não | O ID da zona onde a instância será implantada. | Nenhum. |
VSwitchId | String | Sim | Não | O ID do vSwitch ao qual a instância a ser implantada está conectada. | Nenhum. |
SecurityGroup | String | Não | Não | O grupo de segurança ao qual a instância pertence. | Caso esta propriedade esteja vazia, o ApsaraMQ for Kafka configure automaticamente um grupo de segurança para a instância. |
Name | String | Não | Não | O nome da instância. | Nenhum. |
IsSetUserAndPassword | Boolean | Não | Não | Especifica se configure um novo nome de usuário e senha. | Compatível apenas com instâncias conectadas à Internet e a uma VPC. Valores válidos:
|
Username | String | Não | Não | O nome de usuário. | Compatível apenas com instâncias conectadas à Internet e a uma VPC. O nome de usuário deve ter de 8 a 40 caracteres e pode conter letras e dígitos. |
Password | String | Não | Não | A senha correspondente ao nome de usuário. | Compatível apenas com instâncias conectadas à Internet e a uma VPC. A senha deve ter de 8 a 40 caracteres e conter letras minúsculas, maiúsculas e dígitos. |
ServiceVersion | String | Não | Não | A versão da instância a ser implantada. | Valores válidos:
|
Config | Map | Não | Não | As configurações iniciais da instância a ser implantada. | O valor deve ser uma string JSON válida. O valor desta propriedade inclui os seguintes campos:
|
Notifier | String | Não | Não | O contato de alerta. | Nenhum. |
CrossZone | Boolean | Não | Não | Especifica se a instância será implantada em várias zonas. | Valores válidos:
Valor padrão: true. |
UserPhoneNum | String | Não | Não | O número de celular do contato de alerta. | Nenhum. |
SelectedZones | List | Não | Não | As matrizes bidimensionais que consistem nos conjuntos de candidatos para zonas primárias e secundárias. | Use códigos personalizados no formato
|
VSwitchIds | List | Não | Não | Os IDs dos vSwitches aos quais a instância a ser implantada está conectada. | Especifique esta propriedade para instâncias do ApsaraMQ for Kafka V2 ou V3. Para instâncias do ApsaraMQ for Confluent, especifique VSwitchIds ou VSwitchId. Se ambas forem especifique para o ApsaraMQ for Confluent, a propriedade VSwitchIds terá precedência. |
KMSKeyId | String | Não | Não | O ID da chave usada para criptografia de disco em cloud na região da instância. | Obtenha o ID da chave no console do Key Management Service (KMS) ou crie uma nova chave. Para mais informações, consulte Crie um CMK. Ao especificar esta propriedade, a criptografia será ativada para a instância e não poderá ser desativada. Ao usar o ALIYUN::KAFKA::Instance, o sistema verifica se a função vinculada ao service AliyunServiceRoleForAlikafkaInstanceEncryption foi criada. Caso contrário, o sistema a criará automaticamente. Para mais informações, consulte Service-linked roles for ApsaraMQ for Kafka. |
IsForceSelectedZones | Boolean | Não | Não | Especifica se a instância será implantada à força nas zonas selecionadas. | Nenhum. |
Sintaxe de ServerlessConfig
"ServerlessConfig": {
"ReservedPublishCapacity": Integer,
"ReservedSubscribeCapacity": Integer
}
Propriedades de ServerlessConfig
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
ReservedPublishCapacity |
Integer |
Sim |
Sim |
O tráfego reservado para publicação de mensagens. |
O valor deve ser um número inteiro. Valor mínimo: 60. |
|
ReservedSubscribeCapacity |
Integer |
Sim |
Sim |
O tráfego reservado para assinatura de mensagens. |
O valor deve ser um número inteiro. Valor mínimo: 20. |
Valores de retorno
Fn::GetAtt
InstanceId: o ID da instância.
OrderId: o ID do pedido.
name: o nome da instância.
SslEndpoint: o endpoint SSL no formato de endereço IP.
SaslDomainEndpoint: o endpoint do Simple Authentication and Security Layer (SASL) no formato de nome de domínio.
SslDomainEndpoint: o endpoint SSL no formato de nome de domínio.
DomainEndpoint: o endpoint padrão no formato de nome de domínio.
Endpoint: o endpoint padrão no formato de endereço IP.
Arn: o Alibaba Cloud Resource Name (ARN).
Exemplos
Formato YAML
ROSTemplateFormatVersion: '2015-09-01'
Parameters:
VpcId:
Type: String
AssociationProperty: ALIYUN::ECS::VPC::VPCId
ZoneId:
Type: String
AssociationProperty: ALIYUN::ECS::ZoneId
VSwitchId:
Type: String
AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
AssociationPropertyMetadata:
VpcId: ${VpcId}
ZoneId: ${ZoneId}
SecurityGroupId:
Type: String
AssociationProperty: ALIYUN::ECS::SecurityGroup::SecurityGroupId
AssociationPropertyMetadata:
VpcId: ${VpcId}
Resources:
Instance:
Type: ALIYUN::KAFKA::Instance
Properties:
DeployType: 5
SpecType: normal
PayType: Hour
DiskType: '1'
DeployOption:
VpcId:
Ref: VpcId
ZoneId:
Ref: ZoneId
VSwitchId:
Ref: VSwitchId
SecurityGroup:
Ref: SecurityGroupId
DeployModule: vpc
ServiceVersion: 0.10.2
Config:
kafka.log.retention.hours: '33'
DeletionForce: 'false'
DiskSize: 500
TopicQuota: 50
OpenConnector: 'false'
IoMaxSpec: alikafka.hw.2xlarge
Outputs:
InstanceId:
Description: 'Id of the instance. '
Value:
Fn::GetAtt:
- Instance
- InstanceId
OrderId:
Description: 'Id of the order. '
Value:
Fn::GetAtt:
- Instance
- OrderId
Name:
Description: Name of the instance.
Value:
Fn::GetAtt:
- Instance
- Name
Formato JSON
{
"ROSTemplateFormatVersion": "2015-09-01",
"Parameters": {
"VpcId": {
"Type": "String",
"AssociationProperty": "ALIYUN::ECS::VPC::VPCId"
},
"ZoneId": {
"Type": "String",
"AssociationProperty": "ALIYUN::ECS::ZoneId"
},
"VSwitchId": {
"Type": "String",
"AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
"AssociationPropertyMetadata": {
"VpcId": "${VpcId}",
"ZoneId": "${ZoneId}"
}
},
"SecurityGroupId": {
"Type": "String",
"AssociationProperty": "ALIYUN::ECS::SecurityGroup::SecurityGroupId",
"AssociationPropertyMetadata": {
"VpcId": "${VpcId}"
}
}
},
"Resources": {
"Instance": {
"Type": "ALIYUN::KAFKA::Instance",
"Properties": {
"DeployType": 5,
"SpecType": "normal",
"PayType": "Hour",
"DiskType": "1",
"DeployOption": {
"VpcId": {
"Ref": "VpcId"
},
"ZoneId": {
"Ref": "ZoneId"
},
"VSwitchId": {
"Ref": "VSwitchId"
},
"SecurityGroup": {
"Ref": "SecurityGroupId"
},
"DeployModule": "vpc",
"ServiceVersion": "0.10.2",
"Config": {
"kafka.log.retention.hours": "33"
}
},
"DeletionForce": "false",
"DiskSize": 500,
"TopicQuota": 50,
"OpenConnector": "false",
"IoMaxSpec": "alikafka.hw.2xlarge"
}
}
},
"Outputs": {
"InstanceId": {
"Description": "Id of the instance. ",
"Value": {
"Fn::GetAtt": [
"Instance",
"InstanceId"
]
}
},
"OrderId": {
"Description": "Id of the order. ",
"Value": {
"Fn::GetAtt": [
"Instance",
"OrderId"
]
}
},
"Name": {
"Description": "Name of the instance.",
"Value": {
"Fn::GetAtt": [
"Instance",
"Name"
]
}
}
}
}
Para mais exemplos, visite instance.yml. Os exemplos utilizam os tipos de recurso ALIYUN::KAFKA::Instance e ALIYUN::KAFKA::Topic.