ALIYUN::EDAS::K8sApplication類型用於在Kubernetes叢集中建立應用。
文法
{
"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
}
}屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
LogicalRegionId | String | 否 | 否 | EDAS命名空間對應的ID。 | 非預設命名空間須指定該參數。 |
NasId | String | 否 | 否 | 掛載的NAS ID,必須與叢集在同一個地區。 | NAS ID必須有可用的掛載點建立額度,或者掛載點已經在VPC內的交換器上。 如果不指定NasId,但指定了mountDescs參數,預設將自動購買一個NAS並掛載到VPC內的交換器上。 |
Liveness | Map | 否 | 否 | 容器存活狀態監測。 | 格式: 設定為 更多資訊,請參見Liveness屬性。 |
IntranetSlbId | String | 否 | 否 | 私網SLB ID。 | 如果不指定該參數,EDAS會自動為使用者新購SLB。 |
WebContainer | String | 否 | 否 | 部署套件依賴的Tomcat版本。 | 適用於通過WAR包部署的Spring Cloud和Dubbo應用,鏡像不支援該參數。 |
LimitCpu | Integer | 否 | 否 | 應用運行過程中,應用執行個體的CPU限額。 | 單位:核心數。 |
SlsConfigs | List | 否 | 否 | Logstore配置。 | 設定為 更多資訊,請參見SlsConfigs屬性。 |
IntranetSlbProtocol | String | 否 | 否 | 私網SLB協議。 | 取值:
|
PackageVersion | String | 否 | 否 | 部署套件的版本號碼。 | PackageType取值為WAR或FatJar時必須指定該參數。 EDAS POP API的Java或者Python SDK需要2.44.0或以上版本。 |
WebContainerConfig | Map | 否 | 否 | Tomcat容器配置。 | 設定為 更多資訊,請參見WebContainerConfig屬性。 |
AppName | String | 是 | 否 | 應用程式名稱。 | 最多支援36個字元。必須以英文字母開頭,可包含數字、英文字母和短劃線(-)。 |
JDK | String | 否 | 否 | 部署的包依賴的JDK版本。 | 取值:
鏡像不支援該參數。 |
InternetSlbId | String | 否 | 否 | 公網SLB ID。 | 如果不指定該參數,EDAS會自動為使用者新購SLB。 |
PreStop | Map | 否 | 否 | 應用停止前的執行指令碼。 | 格式: 設定為 更多資訊,請參見PreStop屬性。 |
Readiness | Map | 否 | 否 | 容器業務狀態檢查。 | 更多資訊,請參見Readiness屬性。 |
InternetSlbPort | Integer | 否 | 否 | 公網SLB前端連接埠。 | 取值範圍:1~65,535。 |
DeployAcrossNodes | Boolean | 否 | 否 | 是否將應用執行個體分布到多個節點。 | 取值:
|
RequestsMem | Integer | 否 | 否 | 應用建立時,每個應用執行個體允許的最大記憶體限額。 | 單位:MB。 設定為0表示沒有限制。 |
PackageType | String | 否 | 否 | 應用程式套件類型。 | 取值:
|
UseBodyEncoding | Boolean | 否 | 否 | 是否啟用BodyEncoding for URL。 | 取值:
|
JavaStartUpConfig | Map | 否 | 否 | 用於在Java應用啟動時配置啟動參數。 | 置為 更多資訊,請參見JavaStartUpConfig屬性。 |
IsMultilingualApp | Boolean | 否 | 否 | 是否為多語言應用。 | 取值:
|
RequestsCpu | Integer | 否 | 否 | 應用建立時,應用執行個體的CPU限額。 | 單位:核心數。 設定為0時表示不限額。 |
CommandArgs | List | 否 | 否 | 命令集合。 | 取值樣本: 更多資訊,請參見CommandArgs屬性。 |
StorageType | String | 否 | 否 | 儲存類型。 | 取值:SSD。 |
ClusterId | String | 是 | 否 | 叢集ID。 | 您可以調用ListCluster - 擷取叢集列表介面查詢叢集ID。 |
Timeout | Integer | 否 | 否 | 變更流程逾時時間。 | 單位:秒。 |
Envs | List | 否 | 否 | 部署環境變數的集合。 | 格式: 更多資訊,請參見Envs屬性。 |
ImageUrl | String | 否 | 否 | 鏡像地址。 | 當PackageType取值為Image時,必須指定該參數。 |
DeployAcrossZones | Boolean | 否 | 否 | 是否將應用執行個體分布到多可用性區域。 | 取值:
|
PostStart | Map | 否 | 否 | 應用啟動後的指令碼。 | 格式: 設定為 更多資訊,請參見PostStart屬性。 |
InternetTargetPort | Integer | 否 | 否 | 公網SLB後端連接埠,也是應用的服務連接埠。 | 取值範圍:1~65,535。 |
Replicas | Integer | 否 | 否 | 應用執行個體個數。 | 預設值:1。 單位:個。 |
Namespace | String | 否 | 否 | 應用程式部署的Kubernetes叢集的命名空間。 | 預設值:default。 |
ApplicationDescription | String | 否 | 是 | 應用程式的描述。 | 無 |
UriEncoding | String | 否 | 否 | 統一資源識別項(URI)編碼方案。 | 取值:
說明 如果在應用程式配置中未指定該參數,則使用Tomcat容器中的預設URI編碼方案。 |
IntranetTargetPort | Integer | 否 | 否 | 私網SLB後端連接埠,也是應用的服務連接埠。 | 取值範圍:1~65,535。 |
MountDescs | List | 否 | 否 | 掛載配置描述。 | 格式: 更多資訊,請參見MountDescs屬性。 |
LocalVolume | List | 否 | 否 | 宿主機檔案掛載到容器內的配置。 | 格式: 更多資訊,請參見LocalVolume屬性。 |
RuntimeClassName | String | 否 | 否 | 容器運行時的類型。 | 該參數僅適用於使用安全沙箱容器的叢集。 |
Command | String | 否 | 否 | 命令。 | 如果指定該參數,將在鏡像啟動時替代鏡像中的啟動命令。 |
InternetSlbProtocol | String | 否 | 否 | 公網SLB協議。 | 取值:
|
EdasContainerVersion | String | 否 | 否 | 應用程式的部署套件所依賴的EDAS容器的版本。 | 使用鏡像部署時不支援該參數。 |
PackageUrl | String | 否 | 否 | 部署套件地址。 | 通過FatJar或WAR包部署的應用需要配置部署套件地址。 說明 Java或Python的SDK版本必須為2.44.0或更高版本。 |
IntranetSlbPort | Integer | 否 | 否 | 私網SLB前端連接埠。 | 取值範圍:1~65,535。 |
RepoId | String | 否 | 否 | 鏡像的倉庫ID。 | 無 |
EnableAhas | Boolean | 否 | 否 | 是否接入應用高可用服務AHAS。 | 取值:
|
LimitMem | Integer | 否 | 否 | 應用運行過程中,應用執行個體的記憶體限額。 | 單位:MB。 |
Liveness文法
"Liveness": {
"TimeoutSeconds": Integer,
"Exec": Map,
"InitialDelaySeconds": Integer,
"HttpGet": Map,
"PeriodSeconds": Integer,
"TcpSocket": Map,
"FailureThreshold": Integer,
"SuccessThreshold": Integer
}Liveness屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
TimeoutSeconds | Integer | 否 | 否 | 探測逾時時間。 | 最小值:1。 單位:秒。 |
Exec | Map | 否 | 否 | 執行命令。 | 更多資訊,請參見Exec屬性。 |
InitialDelaySeconds | Integer | 否 | 否 | 容器啟動後第一次執行探測時需要等待時間。 | 最小值:1。 單位:秒。 |
HttpGet | Map | 否 | 否 | HTTP Get方法。 | 更多資訊,請參見HttpGet屬性。 |
PeriodSeconds | Integer | 否 | 否 | 探測的時間間隔。 | 最小值:1。 單位:秒。 |
TcpSocket | Map | 否 | 否 | TCP Socket連接埠。 | 更多資訊,請參見TcpSocket屬性。 |
FailureThreshold | Integer | 否 | 否 | 不健康閾值。 | 最小值:1。 |
SuccessThreshold | Integer | 否 | 否 | 健康閾值。 | 最小值:1。 |
Exec文法
"Exec": {
"Command": List
}Exec屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Command | List | 否 | 否 | 執行命令。 | 無 |
HttpGet文法
"HttpGet": {
"Path": String,
"HttpHeaders": List,
"Scheme": String,
"Port": String,
"Host": String
}HttpGet屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Path | String | 否 | 否 | 路徑。 | 無 |
HttpHeaders | List | 否 | 否 | HTTP要求標頭。 | 格式: 更多資訊,請參見HttpHeaders屬性。 |
Scheme | String | 否 | 否 | 方式。 | 格式: |
Port | String | 否 | 否 | 連接埠。 | 無 |
Host | String | 否 | 否 | 主機。 | 無 |
HttpHeaders文法
"HttpHeaders": [
{
"Value": String,
"Name": String
}
]HttpHeaders屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Value | String | 否 | 否 | 取值。 | 無 |
Name | String | 否 | 否 | 名稱。 | 無 |
TcpSocket文法
"TcpSocket": {
"Port": String,
"Host": String
}TcpSocket屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Port | String | 否 | 否 | 連接埠。 | 無 |
Host | String | 否 | 否 | 主機。 | 無 |
SlsConfigs文法
"SlsConfigs": [
{
"Type": String,
"LogDir": String,
"Logstore": String
}
]SlsConfigs屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Type | String | 否 | 否 | 採集類型。 | 取值:
|
LogDir | String | 否 | 否 | 採集路徑。 | 採集路徑可包含: |
Logstore | String | 否 | 否 | 日誌庫名稱。 | 請確保Logstore名稱在同一個叢集中不重複。 長度為3~63個字元。必須以小寫英文字母或數字開頭和結尾。可包含小寫英文字母、數字、短劃線(-)和底線(_)。 說明 如果不指定該參數,則由系統自動組建記錄檔庫名稱。 |
WebContainerConfig文法
"WebContainerConfig": {
"HttpPort": Integer,
"UriEncoding": String,
"ContextPath": String,
"ContextInputType": String,
"UseBodyEncoding": Boolean,
"ServerXml": String,
"MaxThreads": Integer,
"UseAdvancedServerXml": Boolean,
"UseDefaultConfig": Boolean
}WebContainerConfig屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
HttpPort | Integer | 否 | 否 | HTTP連接埠。 | 取值範圍:1024~65,535。 預設值:8080。 說明 小於1024的連接埠需要具備Root許可權。 |
UriEncoding | String | 否 | 否 | Tomcat的編碼格式。 | 取值:
|
ContextPath | String | 否 | 否 | 自訂路徑。 | 當ContextInputType取值為custom時,必須指定該參數。 |
ContextInputType | String | 否 | 否 | 應用的訪問路徑。 | 取值:
|
UseBodyEncoding | Boolean | 否 | 否 | 是否啟用BodyEncoding for URL。 | 取值:
|
ServerXml | String | 否 | 否 | 進階配置中自訂設定的server.xml文字檔內容。 | 當UseAdvancedServerXml取值為true時該參數生效。 |
MaxThreads | Integer | 否 | 否 | 配置串連池的串連數大小。 | 預設值:400。 說明 此項配置對應用效能有很大影響,請由專業人士配置。 |
UseAdvancedServerXml | Boolean | 否 | 否 | 是否使用進階配置自訂設定server.xml檔案。 | 取值:
UseAdvancedServerXml取值為true時,您可以直接對Tomcat的server.xml檔案進行編輯。 |
UseDefaultConfig | Boolean | 否 | 否 | 是否使用自訂配置。 | 取值:
|
PreStop文法
"PreStop": {
"Exec": Map,
"HttpGet": Map
}PreStop屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Exec | Map | 否 | 否 | 執行命令。 | 無 |
HttpGet | Map | 否 | 否 | HTTP Get方法。 | 無 |
Readiness文法
"Readiness": {
"TimeoutSeconds": Integer,
"Exec": Map,
"InitialDelaySeconds": Integer,
"HttpGet": Map,
"PeriodSeconds": Integer,
"TcpSocket": Map,
"FailureThreshold": Integer,
"SuccessThreshold": Integer
}Readiness屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
TimeoutSeconds | Integer | 否 | 否 | 逾時時間。 | 單位:秒。 最小值:1。 |
Exec | Map | 否 | 否 | 執行命令。 | 無 |
InitialDelaySeconds | Integer | 否 | 否 | 初始延遲。 | 單位:秒。 最小值:1。 |
HttpGet | Map | 否 | 否 | HTTP GET請求。 | 無 |
PeriodSeconds | Integer | 否 | 否 | 周期。 | 單位:秒。 最小值:1。 |
TcpSocket | Map | 否 | 否 | TCP Socket連接埠。 | 無 |
FailureThreshold | Integer | 否 | 否 | 失敗閾值。 | 最小值:1。 |
SuccessThreshold | Integer | 否 | 否 | 成功閾值。 | 最小值:1。 |
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
}JavaStartUpConfig屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
MaxHeapSize | Map | 否 | 否 | 最大堆記憶體大小。 | 單位:MB。 取值範圍:0~(0.85×應用程式的ECS執行個體的可用記憶體)。 更多資訊,請參見MaxHeapSize屬性。 |
UseGCLogFileRotation | Map | 否 | 否 | 使用GCLog檔案輪換。 | 更多資訊,請參見UseGCLogFileRotation屬性。 |
CustomParams | Map | 否 | 否 | 使用自訂參數。 | 多個參數之間用空格( )分隔。 更多資訊,請參見CustomParams屬性。 |
ParallelGCThreads | Map | 否 | 否 | 記憶體回收(GC)將使用的並行線程數。 | 更多資訊,請參見ParallelGCThreads屬性。 |
InitialHeapSize | Map | 否 | 否 | 初始堆的記憶體大小。 | 單位:MB。 取值為0表示大小不受限制。 更多資訊,請參見InitialHeapSize屬性。 |
NacosUseEndpointParsingRule | Map | 否 | 否 | 是否啟用規則解析。 | 更多資訊,請參見NacosUseEndpointParsingRule屬性。 |
ThreadStackSize | Map | 否 | 否 | 線程堆的記憶體大小。 | 單位:KB。 更多資訊,請參見ThreadStackSize屬性。 |
SurvivorRatio | Map | 否 | 否 | Eden/Survivor記憶體大小比。 | 更多資訊,請參見SurvivorRatio屬性。 |
PermSize | Map | 否 | 否 | 初始化持久堆記憶體大小。 | 單位:MB。 更多資訊,請參見PermSize屬性。 |
NewSize | Map | 否 | 否 | 新一代初始堆的記憶體大小。 | 單位:MB。 更多資訊,請參見NewSize屬性。 |
ConcGCThreads | Map | 否 | 否 | 並發GC將使用的線程數。 | 更多資訊,請參見ConcGCThreads屬性。 |
NewRatio | Map | 否 | 否 | Old/Young記憶體大小比。 | 更多資訊,請參見NewRatio屬性。 |
GCLogFileSize | Map | 否 | 否 | GC記錄檔大小。 | 更多資訊,請參見GCLogFileSize屬性。 |
MaxNewSize | Map | 否 | 否 | 新一代堆的最大規模。 | 單位:MB。 取值為max_uintx表示沒有為記憶體使用量指定上限。 更多資訊,請參見MaxNewSize屬性。 |
G1HeapRegionSize | Map | 否 | 否 | G1地區的大小。 | 更多資訊,請參見G1HeapRegionSize屬性。 |
PrintGC | Map | 否 | 否 | 列印GC。 | 更多資訊,請參見PrintGC屬性。 |
MaxDirectMemorySize | Map | 否 | 否 | NIO直接記憶體的最大記憶體。 | 單位:MB。 更多資訊,請參見MaxDirectMemorySize屬性。 |
MaxPermSize | Map | 否 | 否 | 持久堆的最大記憶體。 | 單位:MB。 更多資訊,請參見MaxPermSize屬性。 |
HeapDumpOnOutOfMemoryError | Map | 否 | 否 | 是否在記憶體溢出報錯時,將記憶體清零。 | 更多資訊,請參見HeapDumpOnOutOfMemoryError屬性。 |
NacosUseCloudNamespaceParsing | Map | 否 | 否 | 是否啟用自動名稱空間解析。 | 更多資訊,請參見NacosUseCloudNamespaceParsing屬性。 |
HeapDumpPath | Map | 否 | 否 | 轉儲檔案路徑。 | 更多資訊,請參見HeapDumpPath屬性。 |
GCLogFilePath | Map | 否 | 否 | GC日誌目錄。 | 更多資訊,請參見GCLogFilePath屬性。 |
PrintGCDateStamps | Map | 否 | 否 | 列印GC時間戳記。 | 更多資訊,請參見PrintGCDateStamps屬性。 |
YoungGarbageCollector | Map | 否 | 否 | 配置新一代垃圾收集器。 | 更多資訊,請參見YoungGarbageCollector屬性。 |
OldGarbageCollector | Map | 否 | 否 | 配置舊式垃圾收集器。 | 您必須先配置新一代垃圾收集器(YoungGarbageCollector)。 更多資訊,請參見OldGarbageCollector屬性。 |
MaxHeapSize文法
"MaxHeapSize": {
"Original": Integer,
"Startup": String
}MaxHeapSize屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Original | Integer | 否 | 否 | 配置值。 | 無 |
Startup | String | 否 | 否 | 啟動參數。 | 無 |
UseGCLogFileRotation文法
"UseGCLogFileRotation": {
"Original": Boolean,
"Startup": String
}UseGCLogFileRotation屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Original | Boolean | 否 | 否 | 配置值。 | 無 |
Startup | String | 否 | 否 | 啟動參數。 | 無 |
CustomParams文法
"CustomParams": {
"Original": String,
"Startup": String
}CustomParams屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Original | String | 否 | 否 | 配置值。 | 無 |
Startup | String | 否 | 否 | 啟動參數。 | 無 |
ParallelGCThreads文法
"ParallelGCThreads": {
"Original": Integer,
"Startup": String
}ParallelGCThreads屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Original | Integer | 否 | 否 | 配置值。 | 無 |
Startup | String | 否 | 否 | 啟動參數。 | 無 |
InitialHeapSize文法
"InitialHeapSize": {
"Original": Integer,
"Startup": String
}InitialHeapSize屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Original | Integer | 否 | 否 | 配置值。 | 無 |
Startup | String | 否 | 否 | 啟動參數。 | 無 |
NacosUseEndpointParsingRule文法
"NacosUseEndpointParsingRule": {
"Original": Boolean,
"Startup": String
}NacosUseEndpointParsingRule屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Original | Boolean | 否 | 否 | 配置值。 | 無 |
Startup | String | 否 | 否 | 啟動參數。 | 無 |
ThreadStackSize文法
"ThreadStackSize": {
"Original": Integer,
"Startup": String
}ThreadStackSize屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Original | Integer | 否 | 否 | 配置值。 | 無 |
Startup | String | 否 | 否 | 啟動參數。 | 無 |
SurvivorRatio文法
"SurvivorRatio": {
"Original": Integer,
"Startup": String
}SurvivorRatio屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Original | Integer | 否 | 否 | 配置值。 | 無 |
Startup | String | 否 | 否 | 啟動參數。 | 無 |
PermSize文法
"PermSize": {
"Original": Integer,
"Startup": String
}PermSize屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Original | Integer | 否 | 否 | 配置值。 | 無 |
Startup | String | 否 | 否 | 啟動參數。 | 無 |
NewSize文法
"NewSize": {
"Original": Integer,
"Startup": String
}NewSize屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Original | Integer | 否 | 否 | 配置值。 | 無 |
Startup | String | 否 | 否 | 啟動參數。 | 無 |
ConcGCThreads文法
"ConcGCThreads": {
"Original": Integer,
"Startup": String
}ConcGCThreads屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Original | Integer | 否 | 否 | 配置值。 | 無 |
Startup | String | 否 | 否 | 啟動參數。 | 無 |
NewRatio文法
"NewRatio": {
"Original": Integer,
"Startup": String
}NewRatio屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Original | Integer | 否 | 否 | 配置值。 | 無 |
Startup | String | 否 | 否 | 啟動參數。 | 無 |
GCLogFileSize文法
"GCLogFileSize": {
"Original": Integer,
"Startup": String
}GCLogFileSize屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Original | Integer | 否 | 否 | 配置值。 | 無 |
Startup | String | 否 | 否 | 啟動參數。 | 無 |
MaxNewSize文法
"MaxNewSize": {
"Original": Integer,
"Startup": String
}MaxNewSize屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Original | Integer | 否 | 否 | 配置值。 | 無 |
Startup | String | 否 | 否 | 啟動參數。 | 無 |
G1HeapRegionSize文法
"G1HeapRegionSize": {
"Original": Integer,
"Startup": String
}G1HeapRegionSize屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Original | Integer | 否 | 否 | 配置值。 | 無 |
Startup | String | 否 | 否 | 啟動參數。 | 無 |
PrintGC文法
"PrintGC": {
"Original": Boolean,
"Startup": String
}PrintGC屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Original | Boolean | 否 | 否 | 參數值。 | 無 |
Startup | String | 否 | 否 | 啟動參數。 | 無 |
MaxDirectMemorySize文法
"MaxDirectMemorySize": {
"Original": Integer,
"Startup": String
}MaxDirectMemorySize屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Original | Integer | 否 | 否 | 配置值。 | 無 |
Startup | String | 否 | 否 | 啟動參數。 | 無 |
MaxPermSize文法
"MaxPermSize": {
"Original": Integer,
"Startup": String
}MaxPermSize屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Original | Integer | 否 | 否 | 配置值。 | 無 |
Startup | String | 否 | 否 | 啟動參數。 | 無 |
HeapDumpOnOutOfMemoryError文法
"HeapDumpOnOutOfMemoryError": {
"Original": Boolean,
"Startup": String
}HeapDumpOnOutOfMemoryError屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Original | Boolean | 否 | 否 | 配置值。 | 無 |
Startup | String | 否 | 否 | 啟動參數。 | 無 |
NacosUseCloudNamespaceParsing文法
"NacosUseCloudNamespaceParsing": {
"Original": Boolean,
"Startup": String
}NacosUseCloudNamespaceParsing屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Original | Boolean | 否 | 否 | 配置值。 | 無 |
Startup | String | 否 | 否 | 啟動參數。 | 無 |
HeapDumpPath文法
"HeapDumpPath": {
"Original": String,
"Startup": String
}HeapDumpPath屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Original | String | 否 | 否 | 配置值。 | 無 |
Startup | String | 否 | 否 | 啟動參數。 | 無 |
GCLogFilePath文法
"GCLogFilePath": {
"Original": String,
"Startup": String
}GCLogFilePath屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Original | String | 否 | 否 | 配置值。 | 無 |
Startup | String | 否 | 否 | 啟動參數。 | 無 |
PrintGCDateStamps文法
"PrintGCDateStamps": {
"Original": Boolean,
"Startup": String
}PrintGCDateStamps屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Original | Boolean | 否 | 否 | 配置值。 | 無 |
Startup | String | 否 | 否 | 啟動參數。 | 無 |
YoungGarbageCollector文法
"YoungGarbageCollector": {
"Original": String,
"Startup": String
}YoungGarbageCollector屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Original | String | 否 | 否 | 配置值。 | 無 |
Startup | String | 否 | 否 | 啟動參數。 | 無 |
OldGarbageCollector文法
"OldGarbageCollector": {
"Original": String,
"Startup": String
}OldGarbageCollector屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Original | String | 否 | 否 | 配置值。 | 無 |
Startup | String | 否 | 否 | 啟動參數。 | 無 |
CommandArgs文法
"CommandArgs": [
{
"Argument": String
}
]CommandArgs屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Argument | String | 否 | 否 | 命令的參數。 | 與命令組合使用,命令的參數是JsonArray字串,格式為: |
Envs文法
"Envs": [
{
"Value": String,
"Name": String
}
]Envs屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Value | String | 否 | 否 | 取值。 | 無 |
Name | String | 否 | 否 | 名稱。 | 無 |
PostStart文法
"PostStart": {
"Exec": Map,
"HttpGet": Map
}PostStart屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Exec | Map | 否 | 否 | 執行命令。 | 無 |
HttpGet | Map | 否 | 否 | HTTP GET請求。 | 無 |
MountDescs文法
"MountDescs": [
{
"MountPath": String,
"NasPath": String
}
]MountDescs屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
MountPath | String | 否 | 否 | 掛載到容器內的路徑。 | 無 |
NasPath | String | 否 | 否 | 檔案儲存路徑。 | 無 |
LocalVolume文法
"LocalVolume": [
{
"MountPath": String,
"Type": String,
"NodePath": String
}
]LocalVolume屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
MountPath | String | 否 | 否 | 容器內的路徑。 | 無 |
Type | String | 否 | 否 | 掛載類型。 | 無 |
NodePath | String | 否 | 否 | 宿主機路徑。 | 無 |
傳回值
Fn::GetAtt
AppId:應用程式的ID。
ClusterId:應用程式的叢集ID。
ChangeOrderId:更改過程的ID。
CsClusterId:應用程式的Kubernetes叢集ID。
AppName:應用程式的名稱。
樣本
{
"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