Skip to content

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.

AppNameRequired

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.


ClusterIdRequired

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.


ApplicationDescriptionOptional

public object ApplicationDescription { get; set; }
  • Type: object

Property applicationDescription: The description of the application.


CommandOptional

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.


CommandArgsOptional

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.


DeployAcrossNodesOptional

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.


DeployAcrossZonesOptional

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.


EdasContainerVersionOptional

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.


EnableAhasOptional

public object EnableAhas { get; set; }
  • Type: object

Property enableAhas: Specifies whether to enable access to Application High Availability Service (AHAS).


EnvsOptional

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"}].


ImageUrlOptional

public object ImageUrl { get; set; }
  • Type: object

Property imageUrl: The image URL.

When PackageType is set to Image, this parameter is required.


InternetSlbIdOptional

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.


InternetSlbPortOptional

public object InternetSlbPort { get; set; }
  • Type: object

Property internetSlbPort: The frontend port of the Internet-facing SLB instance.

Valid values: 1 to 65535.


InternetSlbProtocolOptional

public object InternetSlbProtocol { get; set; }
  • Type: object

Property internetSlbProtocol: The protocol of the Internet-facing SLB instance.

Valid values: TCP, HTTP, and HTTPS.


InternetTargetPortOptional

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.


IntranetSlbIdOptional

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.


IntranetSlbPortOptional

public object IntranetSlbPort { get; set; }
  • Type: object

Property intranetSlbPort: The frontend port of the internal-facing SLB instance.

Valid values: 1 to 65535.


IntranetSlbProtocolOptional

public object IntranetSlbProtocol { get; set; }
  • Type: object

Property intranetSlbProtocol: The protocol of the internal-facing SLB instance.

Valid values: TCP, HTTP, and HTTPS.


IntranetTargetPortOptional

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.


IsMultilingualAppOptional

public object IsMultilingualApp { get; set; }
  • Type: object

Property isMultilingualApp: Specifies whether the application is a multi-language application.


JavaStartUpConfigOptional

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.


JdkOptional

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.


LimitCpuOptional

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.


LimitMemOptional

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.


LivenessOptional

public object Liveness { get; set; }
  • Type: object

Property liveness: The liveness check on the container.


LocalVolumeOptional

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"}].


LogicalRegionIdOptional

public object LogicalRegionId { get; set; }
  • Type: object

Property logicalRegionId: The ID of the EDAS namespace.

This parameter is required for a non-default namespace.


MountDescsOptional

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"}].


NamespaceOptional

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.


NasIdOptional

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.


PackageTypeOptional

public object PackageType { get; set; }
  • Type: object

Property packageType: The type of the deployment package.

Valid values: FatJar, WAR, and Image.


PackageUrlOptional

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.


PackageVersionOptional

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.


PostStartOptional

public object PostStart { get; set; }
  • Type: object

Property postStart: The post-start script.

For example, {"Exec": {"Command": ["ls", "/"]}}.


PreStopOptional

public object PreStop { get; set; }
  • Type: object

Property preStop: The pre-stop script.

For example, {"Exec": {"Command": ["ls", "/"]}}.


ReadinessOptional

public object Readiness { get; set; }
  • Type: object

Property readiness: The readiness check on the container.


ReplicasOptional

public object Replicas { get; set; }
  • Type: object

Property replicas: The number of instances for the application that you want to create.

Default: 1


RepoIdOptional

public object RepoId { get; set; }
  • Type: object

Property repoId: The ID of the image repository.


RequestsCpuOptional

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.


RequestsMemOptional

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.


RuntimeClassNameOptional

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.


SlsConfigsOptional

public object SlsConfigs { get; set; }
  • Type: object

Property slsConfigs: The Logstore configurations.


StorageTypeOptional

public object StorageType { get; set; }
  • Type: object

Property storageType: Only SSD is supported.


TimeoutOptional

public object Timeout { get; set; }
  • Type: object

Property timeout: The timeout interval of the change process.

Unit: seconds.


UriEncodingOptional

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.


UseBodyEncodingOptional

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.


WebContainerOptional

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.


WebContainerConfigOptional

public object WebContainerConfig { get; set; }
  • Type: object

Property webContainerConfig: The Tomcat container configuration.