K8sApplicationProps
Properties for defining a K8sApplication
.
See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-edas-k8sapplication
Initializer
using AlibabaCloud.SDK.ROS.CDK.Edas;
new K8sApplicationProps {
object AppName,
object ClusterId,
object ApplicationDescription = null,
object Command = null,
object CommandArgs = null,
object DeployAcrossNodes = null,
object DeployAcrossZones = null,
object EdasContainerVersion = null,
object EnableAhas = null,
object Envs = null,
object ImageUrl = null,
object InternetSlbId = null,
object InternetSlbPort = null,
object InternetSlbProtocol = null,
object InternetTargetPort = null,
object IntranetSlbId = null,
object IntranetSlbPort = null,
object IntranetSlbProtocol = null,
object IntranetTargetPort = null,
object IsMultilingualApp = null,
object JavaStartUpConfig = null,
object Jdk = null,
object LimitCpu = null,
object LimitMem = null,
object Liveness = null,
object LocalVolume = null,
object LogicalRegionId = null,
object MountDescs = null,
object Namespace = null,
object NasId = null,
object PackageType = null,
object PackageUrl = null,
object PackageVersion = null,
object PostStart = null,
object PreStop = null,
object Readiness = null,
object Replicas = null,
object RepoId = null,
object RequestsCpu = null,
object RequestsMem = null,
object RuntimeClassName = null,
object SlsConfigs = null,
object StorageType = null,
object Timeout = null,
object UriEncoding = null,
object UseBodyEncoding = null,
object WebContainer = null,
object WebContainerConfig = null
};
Properties
Name | Type | Description |
---|---|---|
AppName |
object |
Property appName: The name of the application. |
ClusterId |
object |
Property clusterId: The cluster ID. |
ApplicationDescription |
object |
Property applicationDescription: The description of the application. |
Command |
object |
Property command: The command that is specified. |
CommandArgs |
object |
Property commandArgs: The collection of commands. |
DeployAcrossNodes |
object |
Property deployAcrossNodes: Specifies whether to distribute application instances to multiple nodes. |
DeployAcrossZones |
object |
Property deployAcrossZones: Specifies whether to distribute application instances to multiple zones. |
EdasContainerVersion |
object |
Property edasContainerVersion: The version of EDAS Container on which the deployment package of the application depends. |
EnableAhas |
object |
Property enableAhas: Specifies whether to enable access to Application High Availability Service (AHAS). |
Envs |
object |
Property envs: The collection of deployment environment variables. |
ImageUrl |
object |
Property imageUrl: The image URL. |
InternetSlbId |
object |
Property internetSlbId: The ID of the Internet-facing SLB instance. |
InternetSlbPort |
object |
Property internetSlbPort: The frontend port of the Internet-facing SLB instance. |
InternetSlbProtocol |
object |
Property internetSlbProtocol: The protocol of the Internet-facing SLB instance. |
InternetTargetPort |
object |
Property internetTargetPort: The backend port of the internal-facing SLB instance, which is also the service port of the application. |
IntranetSlbId |
object |
Property intranetSlbId: The ID of the internal-facing SLB instance. |
IntranetSlbPort |
object |
Property intranetSlbPort: The frontend port of the internal-facing SLB instance. |
IntranetSlbProtocol |
object |
Property intranetSlbProtocol: The protocol of the internal-facing SLB instance. |
IntranetTargetPort |
object |
Property intranetTargetPort: The backend port of the internal-facing Server Load Balancer (SLB) instance, which is also the service port of the application. |
IsMultilingualApp |
object |
Property isMultilingualApp: Specifies whether the application is a multi-language application. |
JavaStartUpConfig |
object |
Property javaStartUpConfig: The configuration of Java startup parameters for a Java application. |
Jdk |
object |
Property jdk: The version of Java Development Kit (JDK) on which the deployment package of the application depends. |
LimitCpu |
object |
Property limitCpu: The maximum number of CPUs allowed for each application instance when the application is running. |
LimitMem |
object |
Property limitMem: The maximum amount of memory allowed for each application instance when the application is running. |
Liveness |
object |
Property liveness: The liveness check on the container. |
LocalVolume |
object |
Property localVolume: The configuration for mounting host files to the container where the application is running. |
LogicalRegionId |
object |
Property logicalRegionId: The ID of the EDAS namespace. |
MountDescs |
object |
Property mountDescs: The description of the NAS mounting configuration. |
Namespace |
object |
Property namespace: The namespace of the Kubernetes cluster. |
NasId |
object |
Property nasId: The ID of the Network Attached Storage (NAS) file system mounted to the container where the application is running. |
PackageType |
object |
Property packageType: The type of the deployment package. |
PackageUrl |
object |
Property packageUrl: The URL of the deployment package. |
PackageVersion |
object |
Property packageVersion: The version of the deployment package. |
PostStart |
object |
Property postStart: The post-start script. |
PreStop |
object |
Property preStop: The pre-stop script. |
Readiness |
object |
Property readiness: The readiness check on the container. |
Replicas |
object |
Property replicas: The number of instances for the application that you want to create. |
RepoId |
object |
Property repoId: The ID of the image repository. |
RequestsCpu |
object |
Property requestsCpu: The maximum number of CPUs allowed for each application instance when the application is created. |
RequestsMem |
object |
Property requestsMem: The maximum amount of memory allowed for each application instance when the application is created. |
RuntimeClassName |
object |
Property runtimeClassName: The type of the container runtime. |
SlsConfigs |
object |
Property slsConfigs: The Logstore configurations. |
StorageType |
object |
Property storageType: Only SSD is supported. |
Timeout |
object |
Property timeout: The timeout interval of the change process. |
UriEncoding |
object |
Property uriEncoding: The uniform resource identifier (URI) encoding scheme. |
UseBodyEncoding |
object |
Property useBodyEncoding: Specifies whether useBodyEncodingForURI is enabled. |
WebContainer |
object |
Property webContainer: The version of the Tomcat container on which the deployment package of the application depends. |
WebContainerConfig |
object |
Property webContainerConfig: The Tomcat container configuration. |
AppName
Required
public object AppName { get; set; }
- Type: object
Property appName: 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.
ClusterId
Required
public object ClusterId { get; set; }
- Type: object
Property clusterId: The cluster ID.
You can query the cluster ID by calling the ListCluster operation. For more information, see ListCluster.
ApplicationDescription
Optional
public object ApplicationDescription { get; set; }
- Type: object
Property applicationDescription: The description of the application.
Command
Optional
public object Command { get; set; }
- Type: object
Property command: The command that is specified.
If it is specified, it replaces the startup command in the image when the image is started.
CommandArgs
Optional
public object CommandArgs { get; set; }
- Type: object
Property commandArgs: The collection of commands.
For example, [{"argument":"-c"},{"argument":"test"}], where -c and test are two parameters that can be set.
DeployAcrossNodes
Optional
public object DeployAcrossNodes { get; set; }
- Type: object
Property deployAcrossNodes: Specifies whether to distribute application instances to multiple nodes.
The value true indicates yes, whereas other values indicate no.
DeployAcrossZones
Optional
public object DeployAcrossZones { get; set; }
- Type: object
Property deployAcrossZones: Specifies whether to distribute application instances to multiple zones.
The value true indicates yes, whereas other values indicate no.
EdasContainerVersion
Optional
public object EdasContainerVersion { get; set; }
- Type: object
Property edasContainerVersion: 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.
EnableAhas
Optional
public object EnableAhas { get; set; }
- Type: object
Property enableAhas: Specifies whether to enable access to Application High Availability Service (AHAS).
Envs
Optional
public object Envs { get; set; }
- Type: object
Property envs: The collection of deployment environment variables.
For example, [{"Name":"x","Value":"y"},{"Name":"x2","Value":"y2"}].
ImageUrl
Optional
public object ImageUrl { get; set; }
- Type: object
Property imageUrl: The image URL.
When PackageType is set to Image, this parameter is required.
InternetSlbId
Optional
public object InternetSlbId { get; set; }
- Type: object
Property internetSlbId: The ID of the Internet-facing SLB instance.
If this parameter is not specified, EDAS automatically purchases a new SLB instance for you.
InternetSlbPort
Optional
public object InternetSlbPort { get; set; }
- Type: object
Property internetSlbPort: The frontend port of the Internet-facing SLB instance.
Valid values: 1 to 65535.
InternetSlbProtocol
Optional
public object InternetSlbProtocol { get; set; }
- Type: object
Property internetSlbProtocol: The protocol of the Internet-facing SLB instance.
Valid values: TCP, HTTP, and HTTPS.
InternetTargetPort
Optional
public object InternetTargetPort { get; set; }
- Type: object
Property internetTargetPort: The backend port of the internal-facing SLB instance, which is also the service port of the application.
Valid values: 1 to 65535.
IntranetSlbId
Optional
public object IntranetSlbId { get; set; }
- Type: object
Property intranetSlbId: 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.
IntranetSlbPort
Optional
public object IntranetSlbPort { get; set; }
- Type: object
Property intranetSlbPort: The frontend port of the internal-facing SLB instance.
Valid values: 1 to 65535.
IntranetSlbProtocol
Optional
public object IntranetSlbProtocol { get; set; }
- Type: object
Property intranetSlbProtocol: The protocol of the internal-facing SLB instance.
Valid values: TCP, HTTP, and HTTPS.
IntranetTargetPort
Optional
public object IntranetTargetPort { get; set; }
- Type: object
Property intranetTargetPort: 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.
IsMultilingualApp
Optional
public object IsMultilingualApp { get; set; }
- Type: object
Property isMultilingualApp: Specifies whether the application is a multi-language application.
JavaStartUpConfig
Optional
public object JavaStartUpConfig { get; set; }
- Type: object
Property javaStartUpConfig: 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.
Jdk
Optional
public object Jdk { get; set; }
- Type: object
Property jdk: The version of Java Development Kit (JDK) on which the deployment package of the application depends.
Valid values: Open JDK 7 and Open JDK 8. This parameter is not supported when you deploy an application by using images.
LimitCpu
Optional
public object LimitCpu { get; set; }
- Type: object
Property limitCpu: The maximum number of CPUs allowed for each application instance when the application is running.
Unit: cores.
LimitMem
Optional
public object LimitMem { get; set; }
- Type: object
Property limitMem: The maximum amount of memory allowed for each application instance when the application is running.
Unit: MB.
Liveness
Optional
public object Liveness { get; set; }
- Type: object
Property liveness: The liveness check on the container.
LocalVolume
Optional
public object LocalVolume { get; set; }
- Type: object
Property localVolume: 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"}].
LogicalRegionId
Optional
public object LogicalRegionId { get; set; }
- Type: object
Property logicalRegionId: The ID of the EDAS namespace.
This parameter is required for a non-default namespace.
MountDescs
Optional
public object MountDescs { get; set; }
- Type: object
Property mountDescs: The description of the NAS mounting configuration.
For example, the value can be [{"NasPath": "/k8s","MountPath": "/mnt"}, {"NasPath": "/files", "MountPath": "/app/files"}].
Namespace
Optional
public object Namespace { get; set; }
- Type: object
Property namespace: 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.
NasId
Optional
public object NasId { get; set; }
- Type: object
Property nasId: 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.
PackageType
Optional
public object PackageType { get; set; }
- Type: object
Property packageType: The type of the deployment package.
Valid values: FatJar, WAR, and Image.
PackageUrl
Optional
public object PackageUrl { get; set; }
- Type: object
Property packageUrl: 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.
PackageVersion
Optional
public object PackageVersion { get; set; }
- Type: object
Property packageVersion: 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.
PostStart
Optional
public object PostStart { get; set; }
- Type: object
Property postStart: The post-start script.
For example, {"Exec": {"Command": ["ls", "/"]}}.
PreStop
Optional
public object PreStop { get; set; }
- Type: object
Property preStop: The pre-stop script.
For example, {"Exec": {"Command": ["ls", "/"]}}.
Readiness
Optional
public object Readiness { get; set; }
- Type: object
Property readiness: The readiness check on the container.
Replicas
Optional
public object Replicas { get; set; }
- Type: object
Property replicas: The number of instances for the application that you want to create.
Default: 1
RepoId
Optional
public object RepoId { get; set; }
- Type: object
Property repoId: The ID of the image repository.
RequestsCpu
Optional
public object RequestsCpu { get; set; }
- Type: object
Property requestsCpu: The maximum number of CPUs allowed for each application instance when the application is created.
Unit: cores. The value 0 indicates no limit.
RequestsMem
Optional
public object RequestsMem { get; set; }
- Type: object
Property requestsMem: The maximum amount of memory allowed for each application instance when the application is created.
Unit: MB. The value 0 indicates no limit.
RuntimeClassName
Optional
public object RuntimeClassName { get; set; }
- Type: object
Property runtimeClassName: The type of the container runtime.
This parameter is applicable only to clusters that use sandboxed containers.
SlsConfigs
Optional
public object SlsConfigs { get; set; }
- Type: object
Property slsConfigs: The Logstore configurations.
StorageType
Optional
public object StorageType { get; set; }
- Type: object
Property storageType: Only SSD is supported.
Timeout
Optional
public object Timeout { get; set; }
- Type: object
Property timeout: The timeout interval of the change process.
Unit: seconds.
UriEncoding
Optional
public object UriEncoding { get; set; }
- Type: object
Property uriEncoding: 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.
UseBodyEncoding
Optional
public object UseBodyEncoding { get; set; }
- Type: object
Property useBodyEncoding: Specifies whether useBodyEncodingForURI is enabled.
Note If this parameter is not specified in application configuration, the default value false is applied.
WebContainer
Optional
public object WebContainer { get; set; }
- Type: object
Property webContainer: 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.
WebContainerConfig
Optional
public object WebContainerConfig { get; set; }
- Type: object
Property webContainerConfig: The Tomcat container configuration.