ApplicationProps
Properties for defining a Application.
See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-sae-application
Initializer
import "github.com/alibabacloud-go/ros-cdk/alicloudroscdksae"
&alicloudroscdksae.ApplicationProps {
AppName: interface{},
Cpu: interface{},
Memory: interface{},
NamespaceId: interface{},
PackageType: interface{},
Replicas: interface{},
AcrAssumeRoleArn: interface{},
AcrInstanceId: interface{},
AppDescription: interface{},
AppSource: interface{},
AssociateEip: interface{},
AutoConfig: interface{},
BaseAppId: interface{},
Command: interface{},
CommandArgs: interface{},
ConfigMapMountDesc: interface{},
CustomHostAlias: interface{},
Deploy: interface{},
EdasContainerVersion: interface{},
EnableEbpf: interface{},
Envs: interface{},
ImagePullSecrets: interface{},
ImageUrl: interface{},
JarStartArgs: interface{},
JarStartOptions: interface{},
Jdk: interface{},
KafkaConfigs: interface{},
Liveness: interface{},
MicroRegistration: interface{},
MicroRegistrationConfig: interface{},
MountDesc: interface{},
MountHost: interface{},
NasConfigs: interface{},
NasId: interface{},
OssAkId: interface{},
OssAkSecret: interface{},
OssMountDescs: interface{},
PackageUrl: interface{},
PackageVersion: interface{},
Php: interface{},
PhpArmsConfigLocation: interface{},
PhpConfig: interface{},
PhpConfigLocation: interface{},
PostStart: interface{},
PreStop: interface{},
ProgrammingLanguage: interface{},
PvtzDiscoverySvc: interface{},
Python: interface{},
PythonModules: interface{},
Readiness: interface{},
SaeVersion: interface{},
SecurityGroupId: interface{},
ServiceTags: interface{},
SlsConfigs: interface{},
Tags: *[]github.com/alibabacloud-go/ros-cdk/alicloudroscdksae.RosApplication.TagsProperty,
TerminationGracePeriodSeconds: interface{},
Timezone: interface{},
TomcatConfig: interface{},
VpcId: interface{},
VSwitchId: interface{},
WarStartOptions: interface{},
WebContainer: interface{},
}
Properties
| Name | Type | Description |
|---|---|---|
AppName |
interface{} |
Property appName: Application Name. |
Cpu |
interface{} |
Property cpu: Each instance of the CPU required, in units of milli core, can not be zero. |
Memory |
interface{} |
Property memory: Each instance of the required memory, in units of MB, can not be zero. |
NamespaceId |
interface{} |
Property namespaceId: EDAS namespace corresponding to ID. |
PackageType |
interface{} |
Property packageType: Application package type. |
Replicas |
interface{} |
Property replicas: The initial number of instances. |
AcrAssumeRoleArn |
interface{} |
Property acrAssumeRoleArn: The ARN of the RAM role required when pulling the image across accounts. |
AcrInstanceId |
interface{} |
Property acrInstanceId: Container Image service ACR Enterprise Edition instance ID. |
AppDescription |
interface{} |
Property appDescription: Application description. |
AppSource |
interface{} |
Property appSource: Application source. |
AssociateEip |
interface{} |
Property associateEip: Whether to bind EIP. |
AutoConfig |
interface{} |
Property autoConfig: Whether to automatically configure the network environment. |
BaseAppId |
interface{} |
Property baseAppId: Base application ID. |
Command |
interface{} |
Property command: Mirroring the start command. |
CommandArgs |
interface{} |
Property commandArgs: Mirroring the start command parameters. |
ConfigMapMountDesc |
interface{} |
Property configMapMountDesc: ConfigMap mount description. |
CustomHostAlias |
interface{} |
Property customHostAlias: Custom mapping host vessel. |
Deploy |
interface{} |
Property deploy: Whether deployed immediately take effect, the default is false. |
EdasContainerVersion |
interface{} |
Property edasContainerVersion: EDAS pandora runtime environment used by the application. |
EnableEbpf |
interface{} |
Property enableEbpf: Whether to enable EBPF. |
Envs |
interface{} |
Property envs: Container environment variable parameters. |
ImagePullSecrets |
interface{} |
Property imagePullSecrets: Corresponding to the secret dictionary ID. |
ImageUrl |
interface{} |
Property imageUrl: Mirroring address. |
JarStartArgs |
interface{} |
Property jarStartArgs: Jar package startup application parameters. |
JarStartOptions |
interface{} |
Property jarStartOptions: Jar start the application package option. |
Jdk |
interface{} |
Property jdk: Deployment of JDK version of the package depends on. |
KafkaConfigs |
interface{} |
Property kafkaConfigs: Logs are ingested to Kafka configuration summary information. |
Liveness |
interface{} |
Property liveness: Container health check, health check fails container will be killed and recovery. |
MicroRegistration |
interface{} |
Property microRegistration: Select the Nacos registry with the following values: - 0: SAE built-in Nacos. |
MicroRegistrationConfig |
interface{} |
Property microRegistrationConfig: Registry configuration information. |
MountDesc |
interface{} |
Property mountDesc: Mount Description. |
MountHost |
interface{} |
Property mountHost: nas mount point in the application of vpc. |
NasConfigs |
interface{} |
Property nasConfigs: Configuration to mount the NAS. |
NasId |
interface{} |
Property nasId: Mount the NAS ID, you must be in the same region and cluster. |
OssAkId |
interface{} |
Property ossAkId: AccessKey ID of the OSS. |
OssAkSecret |
interface{} |
Property ossAkSecret: AccessKey Secret of the OSS. |
OssMountDescs |
interface{} |
Property ossMountDescs: OSS mount description information. |
PackageUrl |
interface{} |
Property packageUrl: Deployment packages address. |
PackageVersion |
interface{} |
Property packageVersion: The version number of the deployed package, War FatJar type required. |
Php |
interface{} |
Property php: PHP version. |
PhpArmsConfigLocation |
interface{} |
Property phpArmsConfigLocation: The PHP application monitors the mount path and requires you to ensure that the PHP server loads the configuration file for this path. |
PhpConfig |
interface{} |
Property phpConfig: PHP configuration file contents. |
PhpConfigLocation |
interface{} |
Property phpConfigLocation: PHP application launch configuration mount path, you need to ensure that the PHP server will be started with this configuration file. |
PostStart |
interface{} |
Property postStart: Executing the script, such as after starting the format: { "exec": { "command": "cat", "\/ etc \/ group"}}. |
PreStop |
interface{} |
Property preStop: Script is executed before stopping the format as: { "exec": { "command": "cat", "\/ etc \/ group"}}. |
ProgrammingLanguage |
interface{} |
Property programmingLanguage: Create the stack language for the application. |
PvtzDiscoverySvc |
interface{} |
Property pvtzDiscoverySvc: Enable K8s Service registration discovery. |
Python |
interface{} |
Property python: Python version. |
PythonModules |
interface{} |
Property pythonModules: Install custom module dependencies. |
Readiness |
interface{} |
Property readiness: Application launch status check, health check fails repeatedly container will be killed and restarted. |
SaeVersion |
interface{} |
Property saeVersion: SAE version. |
SecurityGroupId |
interface{} |
Property securityGroupId: Security group ID. |
ServiceTags |
interface{} |
Property serviceTags: Service tags. |
SlsConfigs |
interface{} |
Property slsConfigs: Log collection configuration file. |
Tags |
*[]TagsProperty |
Property tags: Tags to attach to application. |
TerminationGracePeriodSeconds |
interface{} |
Property terminationGracePeriodSeconds: Graceful offline timeout, default 30, unit of seconds. |
Timezone |
interface{} |
Property timezone: Application time zone. |
TomcatConfig |
interface{} |
Property tomcatConfig: Tomcat file configuration, set to "" or "{}" to delete the configuration: - port: Ports in the range of 1024 to 65535 require Root privileges to operate on ports below 1024 Because the container is configured with Admin access, please specify a port greater than 1024. |
VpcId |
interface{} |
Property vpcId: EDAS namespace corresponding VPC. |
VSwitchId |
interface{} |
Property vSwitchId: Application examples where the elastic card virtual switch. |
WarStartOptions |
interface{} |
Property warStartOptions: War Start the application package option. |
WebContainer |
interface{} |
Property webContainer: Tomcat deployment of the package depends on the version. |
AppNameRequired
AppName interface{}
- Type: interface{}
Property appName: Application Name.
Allowed numbers, letters and underlined combinations thereof. We must begin with the letters, the maximum length of 36 characters.
CpuRequired
Cpu interface{}
- Type: interface{}
Property cpu: Each instance of the CPU required, in units of milli core, can not be zero.
Currently only supports fixed specifications instance type.
MemoryRequired
Memory interface{}
- Type: interface{}
Property memory: Each instance of the required memory, in units of MB, can not be zero.
Currently only supports fixed specifications instance type.
NamespaceIdRequired
NamespaceId interface{}
- Type: interface{}
Property namespaceId: EDAS namespace corresponding to ID.
Canada supports only the name of the scribe lowercase namespace must begin with a letter. Namespace can interface to obtain from DescribeNamespaceList.
PackageTypeRequired
PackageType interface{}
- Type: interface{}
Property packageType: Application package type.
Support FatJar, War, Image.
ReplicasRequired
Replicas interface{}
- Type: interface{}
Property replicas: The initial number of instances.
AcrAssumeRoleArnOptional
AcrAssumeRoleArn interface{}
- Type: interface{}
Property acrAssumeRoleArn: The ARN of the RAM role required when pulling the image across accounts.
AcrInstanceIdOptional
AcrInstanceId interface{}
- Type: interface{}
Property acrInstanceId: Container Image service ACR Enterprise Edition instance ID.
Required when ImageUrl serves enterprise edition for container images.
AppDescriptionOptional
AppDescription interface{}
- Type: interface{}
Property appDescription: Application description.
No more than 1024 characters.
AppSourceOptional
AppSource interface{}
- Type: interface{}
Property appSource: Application source.
AssociateEipOptional
AssociateEip interface{}
- Type: interface{}
Property associateEip: Whether to bind EIP.
The values are explained as follows:
- true: Binding.
- false: No binding
AutoConfigOptional
AutoConfig interface{}
- Type: interface{}
Property autoConfig: Whether to automatically configure the network environment.
The values are explained as follows:
- true: SAE automatically config the network environment when creating the application. The values for NamespaceId, VpcId, vSwitchId, and SecurityGroupId are ignored.
- false: SAE manually config the network environment when creating the application.
BaseAppIdOptional
BaseAppId interface{}
- Type: interface{}
Property baseAppId: Base application ID.
CommandOptional
Command interface{}
- Type: interface{}
Property command: Mirroring the start command.
The command object in memory executable container must be. For example: sleep. This command will cause the image to set the original startup command failure.
CommandArgsOptional
CommandArgs interface{}
- Type: interface{}
Property commandArgs: Mirroring the start command parameters.
Parameters required for the start-command. For example: [ "1d"]
ConfigMapMountDescOptional
ConfigMapMountDesc interface{}
- Type: interface{}
Property configMapMountDesc: ConfigMap mount description.
Use the configuration items created on the namespace configuration items page to inject configuration information into the container.
CustomHostAliasOptional
CustomHostAlias interface{}
- Type: interface{}
Property customHostAlias: Custom mapping host vessel.
For example: [{ "hostName": "samplehost", "ip": "127.0.0.1"}]
DeployOptional
Deploy interface{}
- Type: interface{}
Property deploy: Whether deployed immediately take effect, the default is false.
EdasContainerVersionOptional
EdasContainerVersion interface{}
- Type: interface{}
Property edasContainerVersion: EDAS pandora runtime environment used by the application.
EnableEbpfOptional
EnableEbpf interface{}
- Type: interface{}
Property enableEbpf: Whether to enable EBPF.
Enable application monitoring for non-Java applications. The values are explained as follows:
- true: Enable.
- false: Disable.
EnvsOptional
Envs interface{}
- Type: interface{}
Property envs: Container environment variable parameters.
For example: [{ "name": "envtmp", "value": "0"}]
ImagePullSecretsOptional
ImagePullSecrets interface{}
- Type: interface{}
Property imagePullSecrets: Corresponding to the secret dictionary ID.
ImageUrlOptional
ImageUrl interface{}
- Type: interface{}
Property imageUrl: Mirroring address.
Image only type of application can be configured to mirror address.
JarStartArgsOptional
JarStartArgs interface{}
- Type: interface{}
Property jarStartArgs: Jar package startup application parameters.
Apply the default startup command: $ JAVA_HOME / bin / java $ JarStartOptions -jar $ CATALINA_OPTS "$ package_path" $ JarStartArgs
JarStartOptionsOptional
JarStartOptions interface{}
- Type: interface{}
Property jarStartOptions: Jar start the application package option.
Apply the default startup command: $ JAVA_HOME / bin / java $ JarStartOptions -jar $ CATALINA_OPTS "$ package_path" $ JarStartArgs
JdkOptional
Jdk interface{}
- Type: interface{}
Property jdk: Deployment of JDK version of the package depends on.
Mirroring not supported.
KafkaConfigsOptional
KafkaConfigs interface{}
- Type: interface{}
Property kafkaConfigs: Logs are ingested to Kafka configuration summary information.
The values are explained as follows:
- kafkaEndpoint: The service access address for the Kafka API
- kafkaInstanceId: Kafka instance ID
- kafkaConfigs: Configuration summary information for one or more logs See Request parameters kafkaConfigs for a description of these values.
LivenessOptional
Liveness interface{}
- Type: interface{}
Property liveness: Container health check, health check fails container will be killed and recovery.
Currently only supports mode command issued in the container. The columns: { "exec": { "command": [ "sleep", "5s"]}, "initialDelaySeconds": 10, "timeoutSeconds": 11}
MicroRegistrationOptional
MicroRegistration interface{}
- Type: interface{}
Property microRegistration: Select the Nacos registry with the following values: - 0: SAE built-in Nacos.
- 1: User-built Nacos.
- 2: MSE commercial version of Nacos.
MicroRegistrationConfigOptional
MicroRegistrationConfig interface{}
- Type: interface{}
Property microRegistrationConfig: Registry configuration information.
MountDescOptional
MountDesc interface{}
- Type: interface{}
Property mountDesc: Mount Description.
MountHostOptional
MountHost interface{}
- Type: interface{}
Property mountHost: nas mount point in the application of vpc.
NasConfigsOptional
NasConfigs interface{}
- Type: interface{}
Property nasConfigs: Configuration to mount the NAS.
The values are explained as follows:
- mountPath: The container mount path
- readOnly: A value of false indicates read and write permission.
- nasId: NAS ID
- mountDomain: The container mount point address For more information, see DescribeMountTargets.
- nasPath: NAS relative file directory
NasIdOptional
NasId interface{}
- Type: interface{}
Property nasId: Mount the NAS ID, you must be in the same region and cluster.
It must be available to create a mount point limit, or switch on its mount point already in the VPC. If you do not fill, and there mountDescs field, the default will automatically purchase a NAS and mount it onto the switch within the VPC.
OssAkIdOptional
OssAkId interface{}
- Type: interface{}
Property ossAkId: AccessKey ID of the OSS.
OssAkSecretOptional
OssAkSecret interface{}
- Type: interface{}
Property ossAkSecret: AccessKey Secret of the OSS.
OssMountDescsOptional
OssMountDescs interface{}
- Type: interface{}
Property ossMountDescs: OSS mount description information.
The parameters are described as follows:
- bucketName: The name of the Bucket
- bucketPath: The directory or OSS object you created in OSS that will raise an exception if the OSS mount directory does not exist.
- mountPath: Your container path in SAE. If the path already exists, it is a covering relationship. If the path doesn't exist, it will be created.
-
readOnly: This specifies whether the container path has read-only permissions for mount directory resources:
-
true: Read-only permission
- false: Read and write permissions
PackageUrlOptional
PackageUrl interface{}
- Type: interface{}
Property packageUrl: Deployment packages address.
Only FatJar War or the type of application can be configured to deploy packet address.
PackageVersionOptional
PackageVersion interface{}
- Type: interface{}
Property packageVersion: The version number of the deployed package, War FatJar type required.
Please customize it meaning.
PhpOptional
Php interface{}
- Type: interface{}
Property php: PHP version.
PhpArmsConfigLocationOptional
PhpArmsConfigLocation interface{}
- Type: interface{}
Property phpArmsConfigLocation: The PHP application monitors the mount path and requires you to ensure that the PHP server loads the configuration file for this path.
You don't need to worry about the configuration content; SAE will automatically render the correct configuration file.
PhpConfigOptional
PhpConfig interface{}
- Type: interface{}
Property phpConfig: PHP configuration file contents.
PhpConfigLocationOptional
PhpConfigLocation interface{}
- Type: interface{}
Property phpConfigLocation: PHP application launch configuration mount path, you need to ensure that the PHP server will be started with this configuration file.
PostStartOptional
PostStart interface{}
- Type: interface{}
Property postStart: Executing the script, such as after starting the format: { "exec": { "command": "cat", "\/ etc \/ group"}}.
PreStopOptional
PreStop interface{}
- Type: interface{}
Property preStop: Script is executed before stopping the format as: { "exec": { "command": "cat", "\/ etc \/ group"}}.
ProgrammingLanguageOptional
ProgrammingLanguage interface{}
- Type: interface{}
Property programmingLanguage: Create the stack language for the application.
The values are explained as follows:
- java: The Java language
- php: PHP language.
- other: Multiple languages such as Python, C++, Go,.NET, Node.js, etc.
PvtzDiscoverySvcOptional
PvtzDiscoverySvc interface{}
- Type: interface{}
Property pvtzDiscoverySvc: Enable K8s Service registration discovery.
The values are explained as follows:
- serviceName: The name of the service The format is custom-namespace ID, in which the postfix-namespace ID does not support customization and needs to be filled in according to the namespace of the application. For example, choosing the default namespace for the North China 2 (Beijing) region would be -cn-beijing-default.
- namespaceId: The namespace ID
- portProtocols: Ports and protocols The port is in the range [1,65535] and supports both TCP and UDP protocols.
- portAndProtocol: Ports and protocols The port is in the range [1,65535] and supports both TCP and UDP protocols. portProtocols is preferred. If portProtocols is set, only portProtocols will take effect.
- enable: Enable K8s Service registration discovery.
PythonOptional
Python interface{}
- Type: interface{}
Property python: Python version.
Supports PYTHON 3.9.15
PythonModulesOptional
PythonModules interface{}
- Type: interface{}
Property pythonModules: Install custom module dependencies.
The dependencies defined in requirements.txt in the root directory are installed by default. If the package is not configured or customized, you can specify the dependencies to install.
ReadinessOptional
Readiness interface{}
- Type: interface{}
Property readiness: Application launch status check, health check fails repeatedly container will be killed and restarted.
Do not pass health check of the vessel will not have to enter SLB traffic. For example: { "exec": { "command": [ "sleep", "6s"]}, "initialDelaySeconds": 15, "timeoutSeconds": 12}
SaeVersionOptional
SaeVersion interface{}
- Type: interface{}
Property saeVersion: SAE version.
SecurityGroupIdOptional
SecurityGroupId interface{}
- Type: interface{}
Property securityGroupId: Security group ID.
ServiceTagsOptional
ServiceTags interface{}
- Type: interface{}
Property serviceTags: Service tags.
SlsConfigsOptional
SlsConfigs interface{}
- Type: interface{}
Property slsConfigs: Log collection configuration file.
TagsOptional
Tags *[]TagsProperty
- Type: *[]TagsProperty
Property tags: Tags to attach to application.
Max support 20 tags to add during create application. Each tag with two properties Key and Value, and Key is required.
TerminationGracePeriodSecondsOptional
TerminationGracePeriodSeconds interface{}
- Type: interface{}
Property terminationGracePeriodSeconds: Graceful offline timeout, default 30, unit of seconds.
The value ranges from 1 to 300.
TimezoneOptional
Timezone interface{}
- Type: interface{}
Property timezone: Application time zone.
Default Asia/Shanghai.
TomcatConfigOptional
TomcatConfig interface{}
- Type: interface{}
Property tomcatConfig: Tomcat file configuration, set to "" or "{}" to delete the configuration: - port: Ports in the range of 1024 to 65535 require Root privileges to operate on ports below 1024 Because the container is configured with Admin access, please specify a port greater than 1024.
If not configured, it defaults to 8080.
- contextPath: The access path, defaults to the root directory "/"
- maxThreads: This config the number of connections in the pool; the default is 400.
- uriEncoding: Tomcat's encoding formats, including UTF-8, ISO-8859-1, GBK, and GB2312 If not set, it defaults to ISO-8859-1.
- useBodyEncodingForUri: Whether to useBodyEncoding for URL (defaults to true).
VpcIdOptional
VpcId interface{}
- Type: interface{}
Property vpcId: EDAS namespace corresponding VPC.
In Serverless in a corresponding one of the VPC namespace only, and can not be modified. Serverless first created in the application name space will form a binding relationship. You may correspond to a plurality of namespaces VPC. Do not fill was VpcId namespace binding.
VSwitchIdOptional
VSwitchId interface{}
- Type: interface{}
Property vSwitchId: Application examples where the elastic card virtual switch.
The switch must be located above the VPC. The same switch with EDAS namespace binding relationship. Do not fill was VSwitchId namespace binding.
WarStartOptionsOptional
WarStartOptions interface{}
- Type: interface{}
Property warStartOptions: War Start the application package option.
Apply the default startup command: java $ JAVA_OPTS $ CATALINA_OPTS -Options org.apache.catalina.startup.Bootstrap "$ @" start
WebContainerOptional
WebContainer interface{}
- Type: interface{}
Property webContainer: Tomcat deployment of the package depends on the version.
Mirroring not supported.