Cria uma aplicação em um cluster Kubernetes gerenciado pelo Enterprise Distributed Application Service (EDAS).
Sintaxe
{
"Type": "ALIYUN::EDAS::K8sApplication",
"Properties": {
"LogicalRegionId": String,
"NasId": String,
"Liveness": Map,
"IntranetSlbId": String,
"WebContainer": String,
"LimitCpu": Integer,
"SlsConfigs": List,
"IntranetSlbProtocol": String,
"PackageVersion": String,
"WebContainerConfig": Map,
"AppName": String,
"JDK": String,
"InternetSlbId": String,
"PreStop": Map,
"Readiness": Map,
"InternetSlbPort": Integer,
"DeployAcrossNodes": Boolean,
"RequestsMem": Integer,
"PackageType": String,
"UseBodyEncoding": Boolean,
"JavaStartUpConfig": Map,
"IsMultilingualApp": Boolean,
"RequestsCpu": Integer,
"CommandArgs": List,
"StorageType": String,
"ClusterId": String,
"Timeout": Integer,
"Envs": List,
"ImageUrl": String,
"DeployAcrossZones": Boolean,
"PostStart": Map,
"InternetTargetPort": Integer,
"Replicas": Integer,
"Namespace": String,
"ApplicationDescription": String,
"UriEncoding": String,
"IntranetTargetPort": Integer,
"MountDescs": List,
"LocalVolume": List,
"RuntimeClassName": String,
"Command": String,
"InternetSlbProtocol": String,
"EdasContainerVersion": String,
"PackageUrl": String,
"IntranetSlbPort": Integer,
"RepoId": String,
"EnableAhas": Boolean,
"LimitMem": Integer
}
}
Propriedades
|
Propriedade |
Tipo |
Obrigatória |
Editável |
Descrição |
Restrição |
|
LogicalRegionId |
String |
Não |
Não |
ID do namespace do Enterprise Distributed Application Service (EDAS). |
Especifique esta propriedade quando o namespace padrão não for utilizado. |
|
NasId |
String |
Não |
Não |
ID do sistema de arquivos Apsara File Storage NAS a ser montado na aplicação. O sistema de arquivos deve residir na mesma região do cluster. |
O sistema de arquivos NAS precisa ter cota disponível para criação de pontos de montagem ou possuir um destino de montagem no vSwitch da Virtual Private Cloud (VPC) onde a aplicação reside. Se você não especificar esta propriedade, mas definir MountDescs, um sistema de arquivos NAS será adquirido e montado no vSwitch da VPC. |
|
Liveness |
Map |
Não |
Não |
Configurações de verificação de atividade do contêiner. |
Exemplo: Se esta propriedade for definida como Para mais informações, consulte Propriedades de Liveness. |
|
IntranetSlbId |
String |
Não |
Não |
ID da instância do Server Load Balancer (SLB) voltada para a rede interna. |
Caso esta propriedade não seja especificada, o EDAS adquire uma nova instância SLB. |
|
WebContainer |
String |
Não |
Não |
Versão do contêiner Tomcat da qual o pacote de implantação depende. |
Suportado para aplicações Spring Cloud ou Dubbo implantadas com pacotes WAR. Não suportado para implantações baseadas em imagem. |
|
LimitCpu |
Integer |
Não |
Não |
Número máximo de vCPUs permitidas para cada instância da aplicação durante sua execução. |
|
|
SlsConfigs |
List |
Não |
Não |
Configurações do Logstore. |
Se esta propriedade for definida como Para mais informações, consulte Propriedades de SlsConfigs. |
|
IntranetSlbProtocol |
String |
Não |
Não |
Protocolo da instância SLB voltada para a rede interna. |
Valores válidos:
|
|
PackageVersion |
String |
Não |
Não |
Versão do pacote de implantação da aplicação. |
Esta propriedade é obrigatória quando PackageType estiver definido como WAR ou FatJar. A versão do SDK da API POP do EDAS para Java ou Python deve ser 2.44.0 ou superior. |
|
WebContainerConfig |
Map |
Não |
Não |
Configurações do contêiner Tomcat. |
Se esta propriedade for definida como Para mais informações, consulte Propriedades de WebContainerConfig. |
|
AppName |
String |
Sim |
Não |
Nome da aplicação. |
O nome pode ter até 36 caracteres e conter dígitos, letras e hífens (-). Deve começar com uma letra. |
|
JDK |
String |
Não |
Não |
Versão do Java Development Kit (JDK) da qual o pacote de implantação depende. |
Valores válidos:
Não suportado para implantações baseadas em imagem. |
|
InternetSlbId |
String |
Não |
Não |
ID da instância SLB voltada para a Internet. |
Caso esta propriedade não seja especificada, o EDAS adquire uma nova instância SLB. |
|
PreStop |
Map |
Não |
Não |
Configurações do script de pré-parada. |
Exemplo: Se esta propriedade for definida como Para mais informações, consulte Propriedades de PreStop. |
|
Readiness |
Map |
Não |
Não |
Configurações de verificação de prontidão do contêiner. |
Para mais informações, consulte Propriedades de Readiness. |
|
InternetSlbPort |
Integer |
Não |
Não |
Número da porta frontend da instância SLB voltada para a Internet. |
Valores válidos: 1 a 65535. |
|
DeployAcrossNodes |
Boolean |
Não |
Não |
Define se as instâncias da aplicação devem ser distribuídas entre nós. |
Valores válidos:
|
|
RequestsMem |
Integer |
Não |
Não |
Quantidade máxima de memória permitida para cada instância da aplicação no momento da criação. |
Unidade: MB. O valor 0 indica que não há limite para o tamanho máximo de memória. |
|
PackageType |
String |
Não |
Não |
Tipo do pacote de implantação da aplicação. |
Valores válidos:
|
|
UseBodyEncoding |
Boolean |
Não |
Não |
Define se o esquema de codificação especificado no corpo da requisição deve ser usado para parâmetros de consulta do Uniform Resource Identifier (URI). |
Valores válidos:
|
|
JavaStartUpConfig |
Map |
Não |
Não |
Parâmetros de inicialização do Java. |
Se esta propriedade for definida como Para mais informações, consulte Propriedades de JavaStartUpConfig. |
|
IsMultilingualApp |
Boolean |
Não |
Não |
Indica se a aplicação é multilíngue. |
Valores válidos:
|
|
RequestsCpu |
Integer |
Não |
Não |
Número máximo de vCPUs permitidas para cada instância da aplicação no momento da criação. |
O valor 0 indica que não há limite para o número máximo de vCPUs. |
|
CommandArgs |
List |
Não |
Não |
Argumentos do comando. |
Exemplo: Para mais informações, consulte Propriedade CommandArgs. |
|
StorageType |
String |
Não |
Não |
Categoria de armazenamento. |
Defina o valor como SSD. |
|
ClusterId |
String |
Sim |
Não |
ID do cluster Kubernetes. |
Chame a operação ListCluster para consultar o ID do cluster. |
|
Timeout |
Integer |
Não |
Não |
Tempo limite do processo de alteração. |
Unidade: segundos. |
|
Envs |
List |
Não |
Não |
Variáveis de ambiente usadas para implantar a aplicação. |
Formato do valor: Para mais informações, consulte Propriedades de Envs. |
|
ImageUrl |
String |
Não |
Não |
Endereço da imagem. |
Esta propriedade é obrigatória quando PackageType estiver definido como Image. |
|
DeployAcrossZones |
Boolean |
Não |
Não |
Define se as instâncias da aplicação devem ser distribuídas entre zonas. |
Valores válidos:
|
|
PostStart |
Map |
Não |
Não |
Configurações do script pós-inicialização. |
Exemplo: Se esta propriedade for definida como Para mais informações, consulte Propriedades de PostStart. |
|
InternetTargetPort |
Integer |
Não |
Não |
Número da porta backend da instância SLB voltada para a Internet, que também corresponde à porta de serviço da aplicação. |
Valores válidos: 1 a 65535. |
|
Replicas |
Integer |
Não |
Não |
Número de instâncias da aplicação. |
Valor padrão: 1.
|
|
Namespace |
String |
Não |
Não |
Namespace do cluster Kubernetes onde a aplicação será implantada. |
Valor padrão: default. |
|
ApplicationDescription |
String |
Não |
Sim |
Descrição da aplicação. |
Nenhuma. |
|
UriEncoding |
String |
Não |
Não |
Esquema de codificação do URI. |
Valores válidos:
Nota
Se esta propriedade não for especificada nas configurações da aplicação, o esquema de codificação de URI padrão do contêiner Tomcat será utilizado. |
|
IntranetTargetPort |
Integer |
Não |
Não |
Número da porta backend da instância SLB voltada para a rede interna, que também corresponde à porta de serviço da aplicação. |
Valores válidos: 1 a 65535. |
|
MountDescs |
List |
Não |
Não |
Configurações de montagem. |
Exemplo: Para mais informações, consulte Propriedades de MountDescs. |
|
LocalVolume |
List |
Não |
Não |
Configurações para montar arquivos do host no contêiner. |
Exemplo: Para mais informações, consulte Propriedades de LocalVolume. |
|
RuntimeClassName |
String |
Não |
Não |
Tipo de runtime do contêiner. |
Esta propriedade aplica-se apenas a clusters que executam contêineres em sandbox. |
|
Command |
String |
Não |
Não |
Comando. |
Ao especificar um valor para esta propriedade, ele substituirá o comando de inicialização da imagem durante a partida. |
|
InternetSlbProtocol |
String |
Não |
Não |
Protocolo da instância SLB voltada para a Internet. |
Valores válidos:
|
|
EdasContainerVersion |
String |
Não |
Não |
Versão do EDAS Container da qual o pacote de implantação depende. |
Não suportado para implantações baseadas em imagem. |
|
PackageUrl |
String |
Não |
Não |
Endereço do pacote de implantação. |
Esta propriedade é obrigatória ao usar um pacote FatJar ou WAR para implantar a aplicação. Nota
A versão do SDK do EDAS para Java ou Python deve ser 2.44.0 ou superior. |
|
IntranetSlbPort |
Integer |
Não |
Não |
Número da porta frontend da instância SLB voltada para a rede interna. |
Valores válidos: 1 a 65535. |
|
RepoId |
String |
Não |
Não |
ID do repositório de imagens. |
Nenhuma. |
|
EnableAhas |
Boolean |
Não |
Não |
Define se o acesso ao Application High Availability Service deve ser ativado. |
Valores válidos:
|
|
LimitMem |
Integer |
Não |
Não |
Quantidade máxima de memória permitida para cada instância da aplicação durante sua execução. |
Unidade: MB. |
Sintaxe de Liveness
"Liveness": {
"TimeoutSeconds": Integer,
"Exec": Map,
"InitialDelaySeconds": Integer,
"HttpGet": Map,
"PeriodSeconds": Integer,
"TcpSocket": Map,
"FailureThreshold": Integer,
"SuccessThreshold": Integer
}
Propriedades de Liveness
|
Propriedade |
Tipo |
Obrigatória |
Editável |
Descrição |
Restrição |
|
TimeoutSeconds |
Integer |
Não |
Não |
Tempo limite da verificação. |
Valor mínimo: 1. Unidade: segundos. |
|
Exec |
Map |
Não |
Não |
Comandos a serem executados. |
Para mais informações, consulte Propriedade Exec. |
|
InitialDelaySeconds |
Integer |
Não |
Não |
Tempo de espera após a inicialização do contêiner antes que o sistema realize a primeira verificação. |
Valor mínimo: 1. Unidade: segundos. |
|
HttpGet |
Map |
Não |
Não |
Métodos HTTP GET. |
Para mais informações, consulte Propriedades de HttpGet. |
|
PeriodSeconds |
Integer |
Não |
Não |
Intervalo de tempo entre duas verificações consecutivas. |
Valor mínimo: 1. Unidade: segundos. |
|
TcpSocket |
Map |
Não |
Não |
Números de porta para os quais o sistema envia requisições de socket TCP. |
Para mais informações, consulte Propriedades de TcpSocket. |
|
FailureThreshold |
Integer |
Não |
Não |
Número de falhas consecutivas nas verificações necessárias para que um contêiner saudável seja considerado não saudável. |
Valor mínimo: 1. |
|
SuccessThreshold |
Integer |
Não |
Não |
Número de sucessos consecutivos nas verificações necessários para que um contêiner não saudável seja considerado saudável. |
Valor mínimo: 1. |
Sintaxe de Exec
"Exec": {
"Command": List
}
Propriedade Exec
|
Propriedade |
Tipo |
Obrigatória |
Editável |
Descrição |
Restrição |
|
Command |
List |
Não |
Não |
Comandos a serem executados. |
Nenhuma. |
Sintaxe de HttpGet
"HttpGet": {
"Path": String,
"HttpHeaders": List,
"Scheme": String,
"Port": String,
"Host": String
}
Propriedades de HttpGet
|
Propriedade |
Tipo |
Obrigatória |
Editável |
Descrição |
Restrição |
|
Path |
String |
Não |
Não |
Caminho. |
Nenhuma. |
|
HttpHeaders |
List |
Não |
Não |
Cabeçalhos da requisição HTTP. |
Exemplo: Para mais informações, consulte Propriedades de HttpHeaders. |
|
Scheme |
String |
Não |
Não |
Esquema. |
Exemplo: |
|
Port |
String |
Não |
Não |
Número da porta. |
Nenhuma. |
|
Host |
String |
Não |
Não |
Host. |
Nenhuma. |
Sintaxe de HttpHeaders
"HttpHeaders": [
{
"Value": String,
"Name": String
}
]
Propriedades de HttpHeaders
|
Propriedade |
Tipo |
Obrigatória |
Editável |
Descrição |
Restrição |
|
Value |
String |
Não |
Não |
Valor. |
Nenhuma. |
|
Name |
String |
Não |
Não |
Nome. |
Nenhuma. |
Sintaxe de TcpSocket
"TcpSocket": {
"Port": String,
"Host": String
}
Propriedades de TcpSocket
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Port |
String |
Não |
Não |
Número da porta. |
Nenhuma. |
|
Host |
String |
Não |
Não |
Host. |
Nenhuma. |
Sintaxe de SlsConfigs
"SlsConfigs": [
{
"Type": String,
"LogDir": String,
"Logstore": String
}
]
Propriedades de SlsConfigs
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Type |
String |
Não |
Não |
Tipo de coleta. |
Valores válidos:
|
|
LogDir |
String |
Não |
Não |
Caminho de coleta. |
O caminho de coleta deve corresponder à seguinte expressão regular: |
|
Logstore |
String |
Não |
Não |
Nome do Logstore. |
Certifique-se de que o nome do Logstore seja exclusivo no cluster. O nome deve ter entre 3 e 63 caracteres. Deve começar e terminar com uma letra minúscula ou dígito. Pode conter letras minúsculas, dígitos, hifens (-) e sublinhados (_). Nota
Se você não especificar esta propriedade, o sistema gerará um nome para o Logstore. |
Sintaxe de WebContainerConfig
"WebContainerConfig": {
"HttpPort": Integer,
"UriEncoding": String,
"ContextPath": String,
"ContextInputType": String,
"UseBodyEncoding": Boolean,
"ServerXml": String,
"MaxThreads": Integer,
"UseAdvancedServerXml": Boolean,
"UseDefaultConfig": Boolean
}
Propriedades de WebContainerConfig
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
HttpPort |
Integer |
Não |
Não |
Número da porta HTTP. |
Valores válidos: 1024 a 65535. Valor padrão: 8080. Nota
Permissões de root são necessárias para executar operações em números de porta menores que 1024. |
|
UriEncoding |
String |
Não |
Não |
Formato de codificação para o contêiner Tomcat. |
Valores válidos:
|
|
ContextPath |
String |
Não |
Não |
Caminho personalizado. |
Esta propriedade deve ser especificada quando ContextInputType estiver definido como custom. |
|
ContextInputType |
String |
Não |
Não |
Caminho de acesso da aplicação. |
Valores válidos:
|
|
UseBodyEncoding |
Boolean |
Não |
Não |
Define se o esquema de codificação especificado no corpo da requisição deve ser usado para parâmetros de consulta URI. |
Valores válidos:
|
|
ServerXml |
String |
Não |
Não |
Conteúdo do arquivo server.xml personalizado nas configurações avançadas. |
Esta propriedade entra em vigor quando UseAdvancedServerXml está definido como true. |
|
MaxThreads |
Integer |
Não |
Não |
Número de conexões no pool de conexões. |
Valor padrão: 400. Nota
Esta propriedade afeta significativamente o desempenho da aplicação. Recomendamos consultar o suporte técnico antes de definir este valor. |
|
UseAdvancedServerXml |
Boolean |
Não |
Não |
Define se configurações avançadas devem ser usadas para personalizar o arquivo server.xml. |
Valores válidos:
Quando UseAdvancedServerXml está definido como true, é possível modificar o arquivo server.xml do contêiner Tomcat. |
|
UseDefaultConfig |
Boolean |
Não |
Não |
Define se as configurações personalizadas devem ser utilizadas. |
Valores válidos:
|
Sintaxe de PreStop
"PreStop": {
"Exec": Map,
"HttpGet": Map
}
Propriedades de PreStop
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Exec |
Map |
Não |
Não |
Comandos a serem executados. |
Nenhuma. |
|
HttpGet |
Map |
Não |
Não |
Métodos HTTP GET. |
Nenhuma. |
Sintaxe de Readiness
"Readiness": {
"TimeoutSeconds": Integer,
"Exec": Map,
"InitialDelaySeconds": Integer,
"HttpGet": Map,
"PeriodSeconds": Integer,
"TcpSocket": Map,
"FailureThreshold": Integer,
"SuccessThreshold": Integer
}
Propriedades de Readiness
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
TimeoutSeconds |
Integer |
Não |
Não |
Tempo limite. |
Unidade: segundos. Valor mínimo: 1. |
|
Exec |
Map |
Não |
Não |
Comandos a serem executados. |
Nenhuma. |
|
InitialDelaySeconds |
Integer |
Não |
Não |
Tempo de espera após a inicialização do contêiner e antes da primeira verificação pelo sistema. |
Unidade: segundos. Valor mínimo: 1. |
|
HttpGet |
Map |
Não |
Não |
Requisições HTTP GET. |
Nenhuma. |
|
PeriodSeconds |
Integer |
Não |
Não |
Intervalo de tempo entre duas verificações consecutivas. |
Unidade: segundos. Valor mínimo: 1. |
|
TcpSocket |
Map |
Não |
Não |
Números de porta para os quais o sistema envia requisições de socket TCP. |
Nenhuma. |
|
FailureThreshold |
Integer |
Não |
Não |
Número de falhas consecutivas nas verificações necessárias para que um contêiner saudável seja declarado não saudável. |
Valor mínimo: 1. |
|
SuccessThreshold |
Integer |
Não |
Não |
Número de sucessos consecutivos nas verificações necessários para que um contêiner não saudável seja declarado saudável. |
Valor mínimo: 1. |
Sintaxe de JavaStartUpConfig
"JavaStartUpConfig": {
"MaxHeapSize": Map,
"UseGCLogFileRotation": Map,
"CustomParams": Map,
"ParallelGCThreads": Map,
"InitialHeapSize": Map,
"NacosUseEndpointParsingRule": Map,
"ThreadStackSize": Map,
"SurvivorRatio": Map,
"PermSize": Map,
"NewSize": Map,
"ConcGCThreads": Map,
"NewRatio": Map,
"GCLogFileSize": Map,
"MaxNewSize": Map,
"G1HeapRegionSize": Map,
"PrintGC": Map,
"MaxDirectMemorySize": Map,
"MaxPermSize": Map,
"HeapDumpOnOutOfMemoryError": Map,
"NacosUseCloudNamespaceParsing": Map,
"HeapDumpPath": Map,
"GCLogFilePath": Map,
"PrintGCDateStamps": Map,
"YoungGarbageCollector": Map,
"OldGarbageCollector": Map
}
Propriedades de JavaStartUpConfig
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
MaxHeapSize |
Map |
Não |
Não |
Tamanho máximo da memória heap. |
Unidade: MB. Valores válidos: 0 a X. X é calculado pela fórmula: X = 0,85 × Memória disponível das instâncias do Elastic Compute Service (ECS) para a aplicação. Para mais informações, consulte Propriedades de MaxHeapSize. |
|
UseGCLogFileRotation |
Map |
Não |
Não |
Define se a rotação de arquivos de log de coleta de lixo (GC) deve ser ativada. |
Para mais informações, consulte Propriedades de UseGCLogFileRotation. |
|
CustomParams |
Map |
Não |
Não |
Parâmetros personalizados. |
Separe múltiplos parâmetros com espaços. Para mais informações, consulte Propriedades de CustomParams. |
|
ParallelGCThreads |
Map |
Não |
Não |
Número de threads usadas para GC paralelo. |
Para mais informações, consulte Propriedades de ParallelGCThreads. |
|
InitialHeapSize |
Map |
Não |
Não |
Tamanho inicial da memória heap. |
Unidade: MB. Um valor 0 indica que não há limite para o tamanho inicial. Para mais informações, consulte Propriedades de InitialHeapSize. |
|
NacosUseEndpointParsingRule |
Map |
Não |
Não |
Define se as regras de análise de endpoint devem ser ativadas. |
Para mais informações, consulte Propriedades de NacosUseEndpointParsingRule. |
|
ThreadStackSize |
Map |
Não |
Não |
Tamanho de memória da pilha de threads. |
Unidade: KB. Para mais informações, consulte Propriedades de ThreadStackSize. |
|
SurvivorRatio |
Map |
Não |
Não |
Proporção de memória Eden/Survivor. |
Para mais informações, consulte Propriedades de SurvivorRatio. |
|
PermSize |
Map |
Não |
Não |
Tamanho inicial da memória de geração permanente. |
Unidade: MB. Para mais informações, consulte Propriedades de PermSize. |
|
NewSize |
Map |
Não |
Não |
Tamanho inicial da memória heap da nova geração. |
Unidade: MB. Para mais informações, consulte Propriedades de NewSize. |
|
ConcGCThreads |
Map |
Não |
Não |
Número de threads usadas para GC concorrente. |
Para mais informações, consulte Propriedades de ConcGCThreads. |
|
NewRatio |
Map |
Não |
Não |
Proporção entre as gerações antiga e nova. |
Para mais informações, consulte Propriedades de NewRatio. |
|
GCLogFileSize |
Map |
Não |
Não |
Tamanho do arquivo de log de GC. |
Para mais informações, consulte Propriedades de GCLogFileSize. |
|
MaxNewSize |
Map |
Não |
Não |
Tamanho máximo da memória heap da nova geração. |
Unidade: MB. Um valor max_uintx indica que não há limite para o tamanho máximo. Para mais informações, consulte Propriedades de MaxNewSize. |
|
G1HeapRegionSize |
Map |
Não |
Não |
Tamanho da região G1. |
Para mais informações, consulte Propriedades de G1HeapRegionSize. |
|
PrintGC |
Map |
Não |
Não |
Define se informações resumidas de GC devem ser impressas após cada coleta. |
Para mais informações, consulte Propriedades de PrintGC. |
|
MaxDirectMemorySize |
Map |
Não |
Não |
Tamanho máximo da memória direta de I/O não bloqueante (NIO). |
Unidade: MB. Para mais informações, consulte Propriedades de MaxDirectMemorySize. |
|
MaxPermSize |
Map |
Não |
Não |
Tamanho máximo da memória de geração permanente. |
Unidade: MB. Para mais informações, consulte Propriedades de MaxPermSize. |
|
HeapDumpOnOutOfMemoryError |
Map |
Não |
Não |
Define se a memória heap deve ser despejada quando ocorrer um erro de falta de memória. |
Para mais informações, consulte Propriedades de HeapDumpOnOutOfMemoryError. |
|
NacosUseCloudNamespaceParsing |
Map |
Não |
Não |
Define se a análise automática de namespace deve ser ativada. |
Para mais informações, consulte Propriedades de NacosUseCloudNamespaceParsing. |
|
HeapDumpPath |
Map |
Não |
Não |
Caminho do arquivo de dump de heap. |
Para mais informações, consulte Propriedades de HeapDumpPath. |
|
GCLogFilePath |
Map |
Não |
Não |
Caminho do arquivo de log de GC. |
Para mais informações, consulte Propriedades de GCLogFilePath. |
|
PrintGCDateStamps |
Map |
Não |
Não |
Define se um carimbo de data/hora deve ser impresso em cada entrada de log de GC. |
Para mais informações, consulte Propriedades de PrintGCDateStamps. |
|
YoungGarbageCollector |
Map |
Não |
Não |
Coletor de lixo da geração nova. |
Para mais informações, consulte Propriedades de YoungGarbageCollector. |
|
OldGarbageCollector |
Map |
Não |
Não |
Coletor de lixo da geração antiga. |
Configure o coletor de lixo da geração nova antes de definir esta propriedade. Para mais informações, consulte Propriedades de OldGarbageCollector. |
Sintaxe de MaxHeapSize
"MaxHeapSize": {
"Original": Integer,
"Startup": String
}
Propriedades de MaxHeapSize
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Original |
Integer |
Não |
Não |
Valor de configuração. |
Nenhuma. |
|
Startup |
String |
Não |
Não |
Parâmetro de inicialização. |
Nenhuma. |
Sintaxe de UseGCLogFileRotation
"UseGCLogFileRotation": {
"Original": Boolean,
"Startup": String
}
Propriedades de UseGCLogFileRotation
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Original |
Boolean |
Não |
Não |
Valor de configuração. |
Nenhuma. |
|
Startup |
String |
Não |
Não |
Parâmetro de inicialização. |
Nenhuma. |
Sintaxe de CustomParams
"CustomParams": {
"Original": String,
"Startup": String
}
Propriedades de CustomParams
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Original |
String |
Não |
Não |
Valor de configuração. |
Nenhuma. |
|
Startup |
String |
Não |
Não |
Parâmetro de inicialização. |
Nenhuma. |
Sintaxe de ParallelGCThreads
"ParallelGCThreads": {
"Original": Integer,
"Startup": String
}
Propriedades de ParallelGCThreads
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Original |
Integer |
Não |
Não |
Valor de configuração. |
Nenhuma. |
|
Startup |
String |
Não |
Não |
Parâmetro de inicialização. |
Nenhuma. |
Sintaxe de InitialHeapSize
"InitialHeapSize": {
"Original": Integer,
"Startup": String
}
Propriedades de InitialHeapSize
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Original |
Integer |
Não |
Não |
Valor de configuração. |
Nenhuma. |
|
Startup |
String |
Não |
Não |
Parâmetro de inicialização. |
Nenhuma. |
Sintaxe de NacosUseEndpointParsingRule
"NacosUseEndpointParsingRule": {
"Original": Boolean,
"Startup": String
}
Propriedades de NacosUseEndpointParsingRule
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Original |
Boolean |
Não |
Não |
Valor de configuração. |
Nenhuma. |
|
Startup |
String |
Não |
Não |
Parâmetro de inicialização. |
Nenhuma. |
Sintaxe de ThreadStackSize
"ThreadStackSize": {
"Original": Integer,
"Startup": String
}
Propriedades de ThreadStackSize
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Original |
Integer |
Não |
Não |
Valor de configuração. |
Nenhuma. |
|
Startup |
String |
Não |
Não |
Parâmetro de inicialização. |
Nenhuma. |
Sintaxe de SurvivorRatio
"SurvivorRatio": {
"Original": Integer,
"Startup": String
}
Propriedades de SurvivorRatio
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Original |
Integer |
Não |
Não |
Valor de configuração. |
Nenhuma. |
|
Startup |
String |
Não |
Não |
Parâmetro de inicialização. |
Nenhuma. |
Sintaxe de PermSize
"PermSize": {
"Original": Integer,
"Startup": String
}
Propriedades de PermSize
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Original |
Integer |
Não |
Não |
Valor de configuração. |
Nenhuma. |
|
Startup |
String |
Não |
Não |
Parâmetro de inicialização. |
Nenhuma. |
Sintaxe de NewSize
"NewSize": {
"Original": Integer,
"Startup": String
}
Propriedades de NewSize
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Original |
Integer |
Não |
Não |
Valor de configuração. |
Nenhuma. |
|
Startup |
String |
Não |
Não |
Parâmetro de inicialização. |
Nenhuma. |
Sintaxe de ConcGCThreads
"ConcGCThreads": {
"Original": Integer,
"Startup": String
}
Propriedades de ConcGCThreads
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Original |
Integer |
Não |
Não |
Valor de configuração. |
Nenhuma. |
|
Startup |
String |
Não |
Não |
Parâmetro de inicialização. |
Nenhuma. |
Sintaxe de NewRatio
"NewRatio": {
"Original": Integer,
"Startup": String
}
Propriedades de NewRatio
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Original |
Integer |
Não |
Não |
Valor de configuração. |
Nenhuma. |
|
Startup |
String |
Não |
Não |
Parâmetro de inicialização. |
Nenhuma. |
Sintaxe de GCLogFileSize
"GCLogFileSize": {
"Original": Integer,
"Startup": String
}
Propriedades de GCLogFileSize
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Original |
Integer |
Não |
Não |
Valor de configuração. |
Nenhuma. |
|
Startup |
String |
Não |
Não |
Parâmetro de inicialização. |
Nenhuma. |
Sintaxe de MaxNewSize
"MaxNewSize": {
"Original": Integer,
"Startup": String
}
Propriedades de MaxNewSize
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Original |
Integer |
Não |
Não |
Valor de configuração. |
Nenhuma. |
|
Startup |
String |
Não |
Não |
Parâmetro de inicialização. |
Nenhuma. |
Sintaxe de G1HeapRegionSize
"G1HeapRegionSize": {
"Original": Integer,
"Startup": String
}
Propriedades de G1HeapRegionSize
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Original |
Integer |
Não |
Não |
Valor de configuração. |
Nenhuma. |
|
Startup |
String |
Não |
Não |
Parâmetro de inicialização. |
Nenhuma. |
Sintaxe de PrintGC
"PrintGC": {
"Original": Boolean,
"Startup": String
}
Propriedades de PrintGC
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Original |
Boolean |
Não |
Não |
Valor de configuração. |
Nenhuma. |
|
Startup |
String |
Não |
Não |
Parâmetro de inicialização. |
Nenhuma. |
Sintaxe de MaxDirectMemorySize
"MaxDirectMemorySize": {
"Original": Integer,
"Startup": String
}
Propriedades de MaxDirectMemorySize
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Original |
Integer |
Não |
Não |
Valor de configuração. |
Nenhuma. |
|
Startup |
String |
Não |
Não |
Parâmetro de inicialização. |
Nenhuma. |
Sintaxe de MaxPermSize
"MaxPermSize": {
"Original": Integer,
"Startup": String
}
Propriedades de MaxPermSize
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Original |
Integer |
Não |
Não |
Valor de configuração. |
Nenhuma. |
|
Startup |
String |
Não |
Não |
Parâmetro de inicialização. |
Nenhuma. |
Sintaxe de HeapDumpOnOutOfMemoryError
"HeapDumpOnOutOfMemoryError": {
"Original": Boolean,
"Startup": String
}
Propriedades de HeapDumpOnOutOfMemoryError
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Original |
Boolean |
Não |
Não |
Valor de configuração. |
Nenhuma. |
|
Startup |
String |
Não |
Não |
Parâmetro de inicialização. |
Nenhuma. |
Sintaxe de NacosUseCloudNamespaceParsing
"NacosUseCloudNamespaceParsing": {
"Original": Boolean,
"Startup": String
}
Propriedades de NacosUseCloudNamespaceParsing
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Original |
Boolean |
Não |
Não |
Valor de configuração. |
Nenhuma. |
|
Startup |
String |
Não |
Não |
Parâmetro de inicialização. |
Nenhuma. |
Sintaxe de HeapDumpPath
"HeapDumpPath": {
"Original": String,
"Startup": String
}
Propriedades de HeapDumpPath
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Original |
String |
Não |
Não |
Valor de configuração. |
Nenhuma. |
|
Startup |
String |
Não |
Não |
Parâmetro de inicialização. |
Nenhuma. |
Sintaxe de GCLogFilePath
"GCLogFilePath": {
"Original": String,
"Startup": String
}
Propriedades de GCLogFilePath
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Original |
String |
Não |
Não |
Valor de configuração. |
Nenhuma. |
|
Startup |
String |
Não |
Não |
Parâmetro de inicialização. |
Nenhuma. |
Sintaxe de PrintGCDateStamps
"PrintGCDateStamps": {
"Original": Boolean,
"Startup": String
}
Propriedades de PrintGCDateStamps
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Original |
Boolean |
Não |
Não |
Valor de configuração. |
Nenhuma. |
|
Startup |
String |
Não |
Não |
Parâmetro de inicialização. |
Nenhuma. |
Sintaxe de YoungGarbageCollector
"YoungGarbageCollector": {
"Original": String,
"Startup": String
}
Propriedades de YoungGarbageCollector
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Original |
String |
Não |
Não |
Valor de configuração. |
Nenhuma. |
|
Startup |
String |
Não |
Não |
Parâmetro de inicialização. |
Nenhuma. |
Sintaxe de OldGarbageCollector
"OldGarbageCollector": {
"Original": String,
"Startup": String
}
Propriedades de OldGarbageCollector
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Original |
String |
Não |
Não |
Valor de configuração. |
Nenhuma. |
|
Startup |
String |
Não |
Não |
Parâmetro de inicialização. |
Nenhuma. |
Sintaxe de CommandArgs
"CommandArgs": [
{
"Argument": String
}
]
Propriedade de CommandArgs
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Argument |
String |
Não |
Não |
Argumento do comando. |
Use esta propriedade em conjunto com o comando. Os argumentos de um comando formam uma matriz JSON. Exemplo de argumentos: |
Sintaxe de Envs
"Envs": [
{
"Value": String,
"Name": String
}
]
Propriedades de Envs
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Value |
String |
Não |
Não |
Valor. |
Nenhuma. |
|
Name |
String |
Não |
Não |
Nome. |
Nenhuma. |
Sintaxe de PostStart
"PostStart": {
"Exec": Map,
"HttpGet": Map
}
Propriedades de PostStart
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Exec |
Map |
Não |
Não |
Comandos a serem executados. |
Nenhuma. |
|
HttpGet |
Map |
Não |
Não |
Requisições HTTP GET. |
Nenhuma. |
Sintaxe de MountDescs
"MountDescs": [
{
"MountPath": String,
"NasPath": String
}
]
Propriedades de MountDescs
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
MountPath |
String |
Não |
Não |
Caminho onde o sistema de arquivos será montado no contêiner. |
Nenhuma. |
|
NasPath |
String |
Não |
Não |
Caminho de armazenamento do sistema de arquivos. |
Nenhuma. |
Sintaxe de LocalVolume
"LocalVolume": [
{
"MountPath": String,
"Type": String,
"NodePath": String
}
]
Propriedades de LocalVolume
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
MountPath |
String |
Não |
Não |
Caminho dentro do contêiner. |
Nenhuma. |
|
Type |
String |
Não |
Não |
Tipo de montagem. |
Nenhuma. |
|
NodePath |
String |
Não |
Não |
Caminho no host. |
Nenhuma. |
Valores de retorno
Fn::GetAtt
AppId: ID da aplicação.
ClusterId: ID do cluster Kubernetes onde a aplicação foi criada.
ChangeOrderId: ID do processo de alteração.
CsClusterId: ID do cluster Kubernetes onde a aplicação foi criada.
AppName: Nome da aplicação.
Exemplos
{
"ROSTemplateFormatVersion": "2015-09-01",
"Parameters": {
"LogicalRegionId": {
"Type": "String",
"Description": "The ID of the EDAS namespace. This parameter is required for a non-default namespace."
},
"NasId": {
"Type": "String",
"Description": "The ID of the Network Attached Storage (NAS) file system mounted to the container where the application is running. The NAS file system must be in the same region as the cluster. The NAS file system must have an available mount target, or have a mount\ntarget on the vSwitch in the virtual private cloud (VPC) where the application is located. If this parameter is not specified and the mountDescs field exists, a NAS file system is automatically purchased and mounted to the vSwitch in the VPC by default."
},
"Liveness": {
"Type": "Json",
"Description": "The liveness check on the container."
},
"IntranetSlbId": {
"Type": "String",
"Description": "The ID of the internal-facing SLB instance. If this parameter is not specified, Enterprise Distributed Application Service (EDAS) automatically purchases a new SLB instance for you."
},
"WebContainer": {
"Type": "String",
"Description": "The version of the Tomcat container on which the deployment package of the application depends. This parameter is applicable to Spring Cloud and Apache Dubbo applications that are deployed by using WAR packages. This parameter is not supported when you deploy an application by using images."
},
"LimitCpu": {
"Type": "Number",
"Description": "The maximum number of CPUs allowed for each application instance when the application\nis running. Unit: cores."
},
"SlsConfigs": {
"Type": "Json",
"Description": "The Logstore configurations."
},
"IntranetSlbProtocol": {
"Type": "String",
"Description": "The protocol of the internal-facing SLB instance. Valid values: TCP, HTTP, and HTTPS.",
"AllowedValues": [
"TCP",
"HTTP",
"HTTPS"
]
},
"PackageVersion": {
"Type": "String",
"Description": "The version of the deployment package. This parameter is required when the PackageType parameter is set to WAR or FatJar. You must specify a version.\nNote The version of SDK for Java or Python must be 2.44.0 or later."
},
"WebContainerConfig": {
"Type": "Json",
"Description": "The Tomcat container configuration."
},
"AppName": {
"Type": "String",
"Description": "The name of the application. The name must start with a letter and can contain digits,\nletters, and hyphens (-). It can be up to 36 characters in length."
},
"JDK": {
"Type": "String",
"Description": "The version of Java Development Kit (JDK) on which the deployment package of the application depends. \nValid values: Open JDK 7 and Open JDK 8. This parameter is not supported when you deploy an application by using images."
},
"InternetSlbId": {
"Type": "String",
"Description": "The ID of the Internet-facing SLB instance. If this parameter is not specified, EDAS automatically purchases a new SLB instance for you."
},
"PreStop": {
"Type": "Json",
"Description": "The pre-stop script. For example, {\"Exec\": {\"Command\": [\"ls\", \"/\"]}}."
},
"InternetSlbPort": {
"Type": "Number",
"Description": "The frontend port of the Internet-facing SLB instance. Valid values: 1 to 65535.",
"MinValue": 1,
"MaxValue": 65535
},
"Readiness": {
"Type": "Json",
"Description": "The readiness check on the container."
},
"DeployAcrossNodes": {
"Type": "Boolean",
"Description": "Specifies whether to distribute application instances to multiple nodes. The value true indicates yes, whereas other values indicate no.",
"AllowedValues": [
"True",
"true",
"False",
"false"
]
},
"RequestsMem": {
"Type": "Number",
"Description": "The maximum amount of memory allowed for each application instance when the application\nis created. Unit: MB. The value 0 indicates no limit.",
"MinValue": 0
},
"PackageType": {
"Type": "String",
"Description": "The type of the deployment package. Valid values: FatJar, WAR, and Image."
},
"UseBodyEncoding": {
"Type": "Boolean",
"Description": "Specifies whether useBodyEncodingForURI is enabled.\nNote If this parameter is not specified in application configuration, the default value\nfalse is applied.",
"AllowedValues": [
"True",
"true",
"False",
"false"
]
},
"JavaStartUpConfig": {
"Type": "Json",
"Description": "The configuration of Java startup parameters for a Java application. These startup parameters involve the memory, application, garbage collection (GC) policy, tools, service registration and discovery, and custom configurations. Proper parameter settings help reduce the GC overhead, shorten the server response time, and improve the throughput.\nThe system automatically concatenates all startup values as the configuration of Java startup parameters for the application."
},
"IsMultilingualApp": {
"Type": "Boolean",
"Description": "Specifies whether the application is a multi-language application.",
"AllowedValues": [
"True",
"true",
"False",
"false"
]
},
"RequestsCpu": {
"Type": "Number",
"Description": "The maximum number of CPUs allowed for each application instance when the application is created. Unit: cores. The value 0 indicates no limit.",
"MinValue": 0
},
"CommandArgs": {
"Type": "Json",
"Description": "The collection of commands. For example, [{\"argument\":\"-c\"},{\"argument\":\"test\"}], where -c and test are two parameters that can be set."
},
"StorageType": {
"Type": "String",
"Description": "Only SSD is supported."
},
"ClusterId": {
"Type": "String",
"Description": "The cluster ID. You can query the cluster ID by calling the ListCluster operation.\nFor more information, see ListCluster."
},
"Timeout": {
"Type": "Number",
"Description": "The timeout interval of the change process. Unit: seconds.",
"MinValue": 1
},
"Envs": {
"Type": "Json",
"Description": "The collection of deployment environment variables. For example, [{\"Name\":\"x\",\"Value\":\"y\"},{\"Name\":\"x2\",\"Value\":\"y2\"}]."
},
"ImageUrl": {
"Type": "String",
"Description": "The image URL. When PackageType is set to Image, this parameter is required."
},
"DeployAcrossZones": {
"Type": "Boolean",
"Description": "Specifies whether to distribute application instances to multiple zones. The value true indicates yes, whereas other values indicate no.",
"AllowedValues": [
"True",
"true",
"False",
"false"
]
},
"PostStart": {
"Type": "Json",
"Description": "The post-start script. For example, {\"Exec\": {\"Command\": [\"ls\", \"/\"]}}."
},
"InternetTargetPort": {
"Type": "Number",
"Description": "The backend port of the internal-facing SLB instance, which is also the service port of the application.\nValid values: 1 to 65535.",
"MinValue": 1,
"MaxValue": 65535
},
"Replicas": {
"Type": "Number",
"Description": "The number of instances for the application that you want to create. Default: 1",
"MinValue": 1,
"Default": 1
},
"Namespace": {
"Type": "String",
"Description": "The namespace of the Kubernetes cluster. This parameter determines the Kubernetes namespace where your application is deployed. By default, this parameter is set to default."
},
"ApplicationDescription": {
"Type": "String",
"Description": "The description of the application."
},
"UriEncoding": {
"Type": "String",
"Description": "The uniform resource identifier (URI) encoding scheme. Valid values: ISO-8859-1, GBK, GB2312, and UTF-8.\nNote If this parameter is not specified in application configuration, the default URI encoding\nscheme in the Tomcat container is applied."
},
"IntranetTargetPort": {
"Type": "Number",
"Description": "The backend port of the internal-facing Server Load Balancer (SLB) instance, which is also the service port of the application. Valid values: 1 to 65535."
},
"MountDescs": {
"Type": "Json",
"Description": "The description of the NAS mounting configuration. For example, the value can be [{\"NasPath\": \"/k8s\",\"MountPath\": \"/mnt\"}, {\"NasPath\": \"/files\", \"MountPath\": \"/app/files\"}]."
},
"LocalVolume": {
"Type": "Json",
"Description": "The configuration for mounting host files to the container where the application is running. For example, the value can be [{\"type\":\"\", \"nodePath\":\"/localfiles\", \"mountPath\":\"/app/files\"}, {\"type\":\"Directory\", \"nodePath\":\"/mnt\", \"mountPath\":\"/app/storage\"}]."
},
"RuntimeClassName": {
"Type": "String",
"Description": "The type of the container runtime. This parameter is applicable only to clusters that use sandboxed containers."
},
"Command": {
"Type": "String",
"Description": "The command that is specified. If it is specified, it replaces the startup command in the image when the image is started."
},
"InternetSlbProtocol": {
"Type": "String",
"Description": "The protocol of the Internet-facing SLB instance. Valid values: TCP, HTTP, and HTTPS.",
"AllowedValues": [
"TCP",
"HTTP",
"HTTPS"
]
},
"EdasContainerVersion": {
"Type": "String",
"Description": "The version of EDAS Container on which the deployment package of the application depends.\nNote This parameter is not supported when you deploy an application by using images."
},
"PackageUrl": {
"Type": "String",
"Description": "The URL of the deployment package. This parameter must be set for the applications\nthat are deployed by using FatJar or WAR packages.\nNote The version of SDK for Java or Python must be 2.44.0 or later."
},
"IntranetSlbPort": {
"Type": "Number",
"Description": "The frontend port of the internal-facing SLB instance. Valid values: 1 to 65535.",
"MinValue": 1,
"MaxValue": 65535
},
"RepoId": {
"Type": "String",
"Description": "The ID of the image repository."
},
"EnableAhas": {
"Type": "Boolean",
"Description": "Specifies whether to enable access to Application High Availability Service (AHAS).",
"AllowedValues": [
"True",
"true",
"False",
"false"
]
},
"LimitMem": {
"Type": "Number",
"Description": "The maximum amount of memory allowed for each application instance when the application is running. Unit: MB.",
"MinValue": 1
}
},
"Resources": {
"K8sApplication": {
"Type": "ALIYUN::EDAS::K8sApplication",
"Properties": {
"LogicalRegionId": {
"Ref": "LogicalRegionId"
},
"NasId": {
"Ref": "NasId"
},
"Liveness": {
"Ref": "Liveness"
},
"IntranetSlbId": {
"Ref": "IntranetSlbId"
},
"WebContainer": {
"Ref": "WebContainer"
},
"LimitCpu": {
"Ref": "LimitCpu"
},
"SlsConfigs": {
"Ref": "SlsConfigs"
},
"IntranetSlbProtocol": {
"Ref": "IntranetSlbProtocol"
},
"PackageVersion": {
"Ref": "PackageVersion"
},
"WebContainerConfig": {
"Ref": "WebContainerConfig"
},
"AppName": {
"Ref": "AppName"
},
"JDK": {
"Ref": "JDK"
},
"InternetSlbId": {
"Ref": "InternetSlbId"
},
"PreStop": {
"Ref": "PreStop"
},
"InternetSlbPort": {
"Ref": "InternetSlbPort"
},
"Readiness": {
"Ref": "Readiness"
},
"DeployAcrossNodes": {
"Ref": "DeployAcrossNodes"
},
"RequestsMem": {
"Ref": "RequestsMem"
},
"PackageType": {
"Ref": "PackageType"
},
"UseBodyEncoding": {
"Ref": "UseBodyEncoding"
},
"JavaStartUpConfig": {
"Ref": "JavaStartUpConfig"
},
"IsMultilingualApp": {
"Ref": "IsMultilingualApp"
},
"RequestsCpu": {
"Ref": "RequestsCpu"
},
"CommandArgs": {
"Ref": "CommandArgs"
},
"StorageType": {
"Ref": "StorageType"
},
"ClusterId": {
"Ref": "ClusterId"
},
"Timeout": {
"Ref": "Timeout"
},
"Envs": {
"Ref": "Envs"
},
"ImageUrl": {
"Ref": "ImageUrl"
},
"DeployAcrossZones": {
"Ref": "DeployAcrossZones"
},
"PostStart": {
"Ref": "PostStart"
},
"InternetTargetPort": {
"Ref": "InternetTargetPort"
},
"Replicas": {
"Ref": "Replicas"
},
"Namespace": {
"Ref": "Namespace"
},
"ApplicationDescription": {
"Ref": "ApplicationDescription"
},
"UriEncoding": {
"Ref": "UriEncoding"
},
"IntranetTargetPort": {
"Ref": "IntranetTargetPort"
},
"MountDescs": {
"Ref": "MountDescs"
},
"LocalVolume": {
"Ref": "LocalVolume"
},
"RuntimeClassName": {
"Ref": "RuntimeClassName"
},
"Command": {
"Ref": "Command"
},
"InternetSlbProtocol": {
"Ref": "InternetSlbProtocol"
},
"EdasContainerVersion": {
"Ref": "EdasContainerVersion"
},
"PackageUrl": {
"Ref": "PackageUrl"
},
"IntranetSlbPort": {
"Ref": "IntranetSlbPort"
},
"RepoId": {
"Ref": "RepoId"
},
"EnableAhas": {
"Ref": "EnableAhas"
},
"LimitMem": {
"Ref": "LimitMem"
}
}
}
},
"Outputs": {
"AppId": {
"Description": "The ID of the application.",
"Value": {
"Fn::GetAtt": [
"K8sApplication",
"AppId"
]
}
},
"ClusterId": {
"Description": "The cluster ID of the application.",
"Value": {
"Fn::GetAtt": [
"K8sApplication",
"ClusterId"
]
}
},
"ChangeOrderId": {
"Description": "The ID of the change process.",
"Value": {
"Fn::GetAtt": [
"K8sApplication",
"ChangeOrderId"
]
}
},
"CsClusterId": {
"Description": "The K8s cluster ID of the application.",
"Value": {
"Fn::GetAtt": [
"K8sApplication",
"CsClusterId"
]
}
},
"AppName": {
"Description": "The name of the application.",
"Value": {
"Fn::GetAtt": [
"K8sApplication",
"AppName"
]
}
}
}
}
ROSTemplateFormatVersion: '2015-09-01'
Parameters:
AppName:
Description: 'The name of the application. The name must start with a letter and
can contain digits,
letters, and hyphens (-). It can be up to 36 characters in length.'
Type: String
ApplicationDescription:
Description: The description of the application.
Type: String
ClusterId:
Description: 'The cluster ID. You can query the cluster ID by calling the ListCluster
operation.
For more information, see ListCluster.'
Type: String
Command:
Description: The command that is specified. If it is specified, it replaces the
startup command in the image when the image is started.
Type: String
CommandArgs:
Description: The collection of commands. For example, [{"argument":"-c"},{"argument":"test"}],
where -c and test are two parameters that can be set.
Type: Json
DeployAcrossNodes:
AllowedValues:
- 'True'
- 'true'
- 'False'
- 'false'
Description: Specifies whether to distribute application instances to multiple
nodes. The value true indicates yes, whereas other values indicate no.
Type: Boolean
DeployAcrossZones:
AllowedValues:
- 'True'
- 'true'
- 'False'
- 'false'
Description: Specifies whether to distribute application instances to multiple
zones. The value true indicates yes, whereas other values indicate no.
Type: Boolean
EdasContainerVersion:
Description: 'The version of EDAS Container on which the deployment package of
the application depends.
Note This parameter is not supported when you deploy an application by using
images.'
Type: String
EnableAhas:
AllowedValues:
- 'True'
- 'true'
- 'False'
- 'false'
Description: Specifies whether to enable access to Application High Availability
Service (AHAS).
Type: Boolean
Envs:
Description: The collection of deployment environment variables. For example,
[{"Name":"x","Value":"y"},{"Name":"x2","Value":"y2"}].
Type: Json
ImageUrl:
Description: The image URL. When PackageType is set to Image, this parameter is
required.
Type: String
InternetSlbId:
Description: The ID of the Internet-facing SLB instance. If this parameter is
not specified, EDAS automatically purchases a new SLB instance for you.
Type: String
InternetSlbPort:
Description: 'The frontend port of the Internet-facing SLB instance. Valid values:
1 to 65535.'
MaxValue: 65535
MinValue: 1
Type: Number
InternetSlbProtocol:
AllowedValues:
- TCP
- HTTP
- HTTPS
Description: 'The protocol of the Internet-facing SLB instance. Valid values:
TCP, HTTP, and HTTPS.'
Type: String
InternetTargetPort:
Description: 'The backend port of the internal-facing SLB instance, which is also
the service port of the application.
Valid values: 1 to 65535.'
MaxValue: 65535
MinValue: 1
Type: Number
IntranetSlbId:
Description: The ID of the internal-facing SLB instance. If this parameter is
not specified, Enterprise Distributed Application Service (EDAS) automatically
purchases a new SLB instance for you.
Type: String
IntranetSlbPort:
Description: 'The frontend port of the internal-facing SLB instance. Valid values:
1 to 65535.'
MaxValue: 65535
MinValue: 1
Type: Number
IntranetSlbProtocol:
AllowedValues:
- TCP
- HTTP
- HTTPS
Description: 'The protocol of the internal-facing SLB instance. Valid values:
TCP, HTTP, and HTTPS.'
Type: String
IntranetTargetPort:
Description: 'The backend port of the internal-facing Server Load Balancer (SLB)
instance, which is also the service port of the application. Valid values: 1
to 65535.'
Type: Number
IsMultilingualApp:
AllowedValues:
- 'True'
- 'true'
- 'False'
- 'false'
Description: Specifies whether the application is a multi-language application.
Type: Boolean
JDK:
Description: "The version of Java Development Kit (JDK) on which the deployment\
\ package of the application depends. \nValid values: Open JDK 7 and Open JDK\
\ 8. This parameter is not supported when you deploy an application by using\
\ images."
Type: String
JavaStartUpConfig:
Description: 'The configuration of Java startup parameters for a Java application.
These startup parameters involve the memory, application, garbage collection
(GC) policy, tools, service registration and discovery, and custom configurations.
Proper parameter settings help reduce the GC overhead, shorten the server response
time, and improve the throughput.
The system automatically concatenates all startup values as the configuration
of Java startup parameters for the application.'
Type: Json
LimitCpu:
Description: 'The maximum number of CPUs allowed for each application instance
when the application
is running. Unit: cores.'
Type: Number
LimitMem:
Description: 'The maximum amount of memory allowed for each application instance
when the application is running. Unit: MB.'
MinValue: 1
Type: Number
Liveness:
Description: The liveness check on the container.
Type: Json
LocalVolume:
Description: The configuration for mounting host files to the container where
the application is running. For example, the value can be [{"type":"", "nodePath":"/localfiles",
"mountPath":"/app/files"}, {"type":"Directory", "nodePath":"/mnt", "mountPath":"/app/storage"}].
Type: Json
LogicalRegionId:
Description: The ID of the EDAS namespace. This parameter is required for a non-default
namespace.
Type: String
MountDescs:
Description: 'The description of the NAS mounting configuration. For example,
the value can be [{"NasPath": "/k8s","MountPath": "/mnt"}, {"NasPath": "/files",
"MountPath": "/app/files"}].'
Type: Json
Namespace:
Description: The namespace of the Kubernetes cluster. This parameter determines
the Kubernetes namespace where your application is deployed. By default, this
parameter is set to default.
Type: String
NasId:
Description: 'The ID of the Network Attached Storage (NAS) file system mounted
to the container where the application is running. The NAS file system must
be in the same region as the cluster. The NAS file system must have an available
mount target, or have a mount
target on the vSwitch in the virtual private cloud (VPC) where the application
is located. If this parameter is not specified and the mountDescs field exists,
a NAS file system is automatically purchased and mounted to the vSwitch in the
VPC by default.'
Type: String
PackageType:
Description: 'The type of the deployment package. Valid values: FatJar, WAR, and
Image.'
Type: String
PackageUrl:
Description: 'The URL of the deployment package. This parameter must be set for
the applications
that are deployed by using FatJar or WAR packages.
Note The version of SDK for Java or Python must be 2.44.0 or later.'
Type: String
PackageVersion:
Description: 'The version of the deployment package. This parameter is required
when the PackageType parameter is set to WAR or FatJar. You must specify a version.
Note The version of SDK for Java or Python must be 2.44.0 or later.'
Type: String
PostStart:
Description: 'The post-start script. For example, {"Exec": {"Command": ["ls",
"/"]}}.'
Type: Json
PreStop:
Description: 'The pre-stop script. For example, {"Exec": {"Command": ["ls", "/"]}}.'
Type: Json
Readiness:
Description: The readiness check on the container.
Type: Json
Replicas:
Default: 1
Description: 'The number of instances for the application that you want to create.
Default: 1'
MinValue: 1
Type: Number
RepoId:
Description: The ID of the image repository.
Type: String
RequestsCpu:
Description: 'The maximum number of CPUs allowed for each application instance
when the application is created. Unit: cores. The value 0 indicates no limit.'
MinValue: 0
Type: Number
RequestsMem:
Description: 'The maximum amount of memory allowed for each application instance
when the application
is created. Unit: MB. The value 0 indicates no limit.'
MinValue: 0
Type: Number
RuntimeClassName:
Description: The type of the container runtime. This parameter is applicable only
to clusters that use sandboxed containers.
Type: String
SlsConfigs:
Description: The Logstore configurations.
Type: Json
StorageType:
Description: Only SSD is supported.
Type: String
Timeout:
Description: 'The timeout interval of the change process. Unit: seconds.'
MinValue: 1
Type: Number
UriEncoding:
Description: 'The uniform resource identifier (URI) encoding scheme. Valid values:
ISO-8859-1, GBK, GB2312, and UTF-8.
Note If this parameter is not specified in application configuration, the default
URI encoding
scheme in the Tomcat container is applied.'
Type: String
UseBodyEncoding:
AllowedValues:
- 'True'
- 'true'
- 'False'
- 'false'
Description: 'Specifies whether useBodyEncodingForURI is enabled.
Note If this parameter is not specified in application configuration, the default
value
false is applied.'
Type: Boolean
WebContainer:
Description: The version of the Tomcat container on which the deployment package
of the application depends. This parameter is applicable to Spring Cloud and
Apache Dubbo applications that are deployed by using WAR packages. This parameter
is not supported when you deploy an application by using images.
Type: String
WebContainerConfig:
Description: The Tomcat container configuration.
Type: Json
Resources:
K8sApplication:
Properties:
AppName:
Ref: AppName
ApplicationDescription:
Ref: ApplicationDescription
ClusterId:
Ref: ClusterId
Command:
Ref: Command
CommandArgs:
Ref: CommandArgs
DeployAcrossNodes:
Ref: DeployAcrossNodes
DeployAcrossZones:
Ref: DeployAcrossZones
EdasContainerVersion:
Ref: EdasContainerVersion
EnableAhas:
Ref: EnableAhas
Envs:
Ref: Envs
ImageUrl:
Ref: ImageUrl
InternetSlbId:
Ref: InternetSlbId
InternetSlbPort:
Ref: InternetSlbPort
InternetSlbProtocol:
Ref: InternetSlbProtocol
InternetTargetPort:
Ref: InternetTargetPort
IntranetSlbId:
Ref: IntranetSlbId
IntranetSlbPort:
Ref: IntranetSlbPort
IntranetSlbProtocol:
Ref: IntranetSlbProtocol
IntranetTargetPort:
Ref: IntranetTargetPort
IsMultilingualApp:
Ref: IsMultilingualApp
JDK:
Ref: JDK
JavaStartUpConfig:
Ref: JavaStartUpConfig
LimitCpu:
Ref: LimitCpu
LimitMem:
Ref: LimitMem
Liveness:
Ref: Liveness
LocalVolume:
Ref: LocalVolume
LogicalRegionId:
Ref: LogicalRegionId
MountDescs:
Ref: MountDescs
Namespace:
Ref: Namespace
NasId:
Ref: NasId
PackageType:
Ref: PackageType
PackageUrl:
Ref: PackageUrl
PackageVersion:
Ref: PackageVersion
PostStart:
Ref: PostStart
PreStop:
Ref: PreStop
Readiness:
Ref: Readiness
Replicas:
Ref: Replicas
RepoId:
Ref: RepoId
RequestsCpu:
Ref: RequestsCpu
RequestsMem:
Ref: RequestsMem
RuntimeClassName:
Ref: RuntimeClassName
SlsConfigs:
Ref: SlsConfigs
StorageType:
Ref: StorageType
Timeout:
Ref: Timeout
UriEncoding:
Ref: UriEncoding
UseBodyEncoding:
Ref: UseBodyEncoding
WebContainer:
Ref: WebContainer
WebContainerConfig:
Ref: WebContainerConfig
Type: ALIYUN::EDAS::K8sApplication
Outputs:
AppId:
Description: The ID of the application.
Value:
Fn::GetAtt:
- K8sApplication
- AppId
AppName:
Description: The name of the application.
Value:
Fn::GetAtt:
- K8sApplication
- AppName
ChangeOrderId:
Description: The ID of the change process.
Value:
Fn::GetAtt:
- K8sApplication
- ChangeOrderId
ClusterId:
Description: The cluster ID of the application.
Value:
Fn::GetAtt:
- K8sApplication
- ClusterId
CsClusterId:
Description: The K8s cluster ID of the application.
Value:
Fn::GetAtt:
- K8sApplication
- CsClusterId