ALIYUN::ElasticSearchServerless::App is used to create an Elasticsearch serverless application.
Syntax
{
"Type": "ALIYUN::ElasticSearchServerless::App",
"Properties": {
"Authentication": Map,
"AppName": String,
"QuotaInfo": Map,
"AppVersion": String,
"Description": String,
"Network": List,
"PrivateNetwork": List,
"LogProConfiguration": Map,
"Scenario": String
}
}Properties
Property | Type | Required | Editable | Description | Constraint |
Authentication | Map | Yes | Yes | The authentication information. | For more information, see Authentication property. |
AppName | String | Yes | No | The name of the application. | None. |
QuotaInfo | Map | Yes | No | The quota information about the application. | For more information, see QuotaInfo properties. |
AppVersion | String | No | No | The version of the application. | Set the value to 7.10. |
Description | String | No | Yes | The description of the application. | None. |
Network | List | No | Yes | The information about the public network. | For more information, see Network properties. |
PrivateNetwork | List | No | Yes | The information about the private network. | For more information, see PrivateNetwork properties. |
LogProConfiguration | Map | No | No | The log configurations of the application. | For more information, see LogProConfiguration properties. |
Scenario | String | No | No | The scenario of the application. | Valid values:
|
Authentication syntax
"Authentication": {
"BasicAuth": List
}Authentication property
Property | Type | Required | Editable | Description | Constraint |
BasicAuth | List | Yes | Yes | The basic authentication information. | For more information, see BasicAuth property. |
BasicAuth syntax
"BasicAuth": [
{
"Password": String
}
]BasicAuth property
Property | Type | Required | Editable | Description | Constraint |
Password | String | Yes | No | The password of the user. | None. |
QuotaInfo syntax
"QuotaInfo": {
"MinCu": Integer,
"ReadCu": Integer,
"WriteCu": Integer,
"Elastic": Boolean,
"MaxCu": Integer,
"AppType": String
}QuotaInfo properties
Property | Type | Required | Editable | Description | Constraint |
AppType | String | Yes | No | The type of the application. | Valid values:
|
Elastic | Boolean | No | No | Specifies whether the application supports elasticity. | None. |
MinCu | Integer | No | No | The minimum number of capacity units (CUs) of the application. | None. |
ReadCu | Integer | No | No | The number of read CUs of the application. | None. |
WriteCu | Integer | No | No | The number of write CUs of the application. | None. |
MaxCu | Integer | No | No | The maximum number of CUs of the application. | None. |
LogProConfiguration syntax
"LogProConfiguration": {
"WriteWithPrimaryKey": Boolean,
"LogProDynamicFieldConfigType": String,
"ExpirationDays": Integer,
"AutoDataOrganization": Boolean,
"AdvancedIndexingOptimization": Boolean
}LogProConfiguration properties
Property | Type | Required | Editable | Description | Constraint |
AutoDataOrganization | Boolean | Yes | No | Specifies whether to automate data organizations. | Valid values:
|
AdvancedIndexingOptimization | Boolean | Yes | No | Specifies whether to enable advanced indexing optimization. | Valid values:
|
ExpirationDays | Integer | Yes | No | The validity period of the application. | None. |
LogProDynamicFieldConfigType | String | Yes | No | The type of the professional dynamic field configuration of the application log. | Valid values:
|
WriteWithPrimaryKey | Boolean | Yes | No | Specifies whether to enable writes with primary keys. | Valid values:
|
Network syntax
"Network": [
{
"Type": String,
"Enabled": Boolean,
"WhiteIpGroup": List
}
]Network properties
Property | Type | Required | Editable | Description | Constraint |
Enabled | Boolean | Yes | No | Specifies whether to enable Internet access to the application. | Valid values:
|
Type | String | Yes | No | The type of the IP address whitelist. | Valid values:
|
WhiteIpGroup | List | No | Yes | The IP address whitelist group. | For more information, see WhiteIpGroup properties. |
WhiteIpGroup syntax
"WhiteIpGroup": [
{
"GroupName": String,
"Ips": List
}
]WhiteIpGroup properties
Property | Type | Required | Editable | Description | Constraint |
GroupName | String | Yes | No | The name of the whitelist group. | None. |
Ips | List | No | No | The IP addresses in the whitelist group. | None. |
PrivateNetwork syntax
"PrivateNetwork": [
{
"PvlEndpointId": String,
"Type": String,
"VpcId": String,
"Enabled": Boolean,
"WhiteIpGroup": List
}
]PrivateNetwork properties
Property | Type | Required | Editable | Description | Constraint |
Enabled | Boolean | Yes | No | Specifies whether to enable private network access to the application. | Valid values:
|
PvlEndpointId | String | Yes | No | The ID of the private endpoint. | None. |
Type | String | Yes | No | The type of the IP address whitelist. | Valid values:
|
VpcId | String | Yes | No | The ID of the virtual private cloud (VPC). | None. |
WhiteIpGroup | List | No | Yes | The IP address whitelist group. | For more information, see WhiteIpGroup properties. |
Return values
Fn::GetAtt
PublicKibanaDomain: the Kibana public domain of the application.
InstanceId: the ID of the instance.
PrivateESDomain: the Elasticsearch private domain of the application.
PublicESDdomain: the Elasticsearch public domain of the application.
PrivateKibanaDomain: the Kibana private domain of the application.
Username: the username of the application.
Examples
ROSTemplateFormatVersion: '2015-09-01'
Parameters:
Authentication:
AssociationPropertyMetadata:
Parameters:
BasicAuth:
AssociationPropertyMetadata:
Parameters:
Password:
Type: String
Description:
en: The password of the user.
Required: true
AssociationProperty: List[Parameters]
Type: Json
Description:
en: The basic authentication of the app.
Required: true
Type: Json
Description:
en: The authentication of the app. Currently only supports specifying passwords for initial users
Required: true
QuotaInfo:
AssociationPropertyMetadata:
Parameters:
Cu:
Type: Number
Description:
en: The cu of the app.
Required: true
Storage:
Type: Number
Description:
en: The storage of the app.
Required: true
AppType:
Type: String
Description:
en: The type of the app.
AllowedValues:
- TRIAL
- STANDARD
Required: true
Type: Json
Description:
en: The quota info of the app.
Required: true
AppName:
Type: String
Description:
en: The name of the elastic search serverless version app.
Required: true
Resources:
App:
Type: ALIYUN::ElasticSearchServerless::App
Properties:
Authentication:
Ref: Authentication
QuotaInfo:
Ref: QuotaInfo
AppName:
Ref: AppName
Outputs:
PublicKibanaDomain:
Description: The public network kibana domain of the app.
Value:
Fn::GetAtt:
- App
- PublicKibanaDomain
InstanceId:
Description: The Id of the ElasticSearch serverless instance.
Value:
Fn::GetAtt:
- App
- InstanceId
PrivateESDomain:
Description: The private network domain of the app.
Value:
Fn::GetAtt:
- App
- PrivateESDomain
PublicESDomain:
Description: The public network domain of the app.
Value:
Fn::GetAtt:
- App
- PublicESDomain
PrivateKibanaDomain:
Description: The private network kibana domain of the app.
Value:
Fn::GetAtt:
- App
- PrivateKibanaDomain
{
"ROSTemplateFormatVersion": "2015-09-01",
"Parameters": {
"Authentication": {
"AssociationPropertyMetadata": {
"Parameters": {
"BasicAuth": {
"AssociationPropertyMetadata": {
"Parameters": {
"Password": {
"Type": "String",
"Description": {
"en": "The password of the user."
},
"Required": true
}
}
},
"AssociationProperty": "List[Parameters]",
"Type": "Json",
"Description": {
"en": "The basic authentication of the app."
},
"Required": true
}
}
},
"Type": "Json",
"Description": {
"en": "The authentication of the app. Currently only supports specifying passwords for initial users"
},
"Required": true
},
"QuotaInfo": {
"AssociationPropertyMetadata": {
"Parameters": {
"Cu": {
"Type": "Number",
"Description": {
"en": "The cu of the app."
},
"Required": true
},
"Storage": {
"Type": "Number",
"Description": {
"en": "The storage of the app."
},
"Required": true
},
"AppType": {
"Type": "String",
"Description": {
"en": "The type of the app."
},
"AllowedValues": [
"TRIAL",
"STANDARD"
],
"Required": true
}
}
},
"Type": "Json",
"Description": {
"en": "The quota info of the app."
},
"Required": true
},
"AppName": {
"Type": "String",
"Description": {
"en": "The name of the elastic search serverless version app."
},
"Required": true
}
},
"Resources": {
"App": {
"Type": "ALIYUN::ElasticSearchServerless::App",
"Properties": {
"Authentication": {
"Ref": "Authentication"
},
"QuotaInfo": {
"Ref": "QuotaInfo"
},
"AppName": {
"Ref": "AppName"
}
}
}
},
"Outputs": {
"PublicKibanaDomain": {
"Description": "The public network kibana domain of the app.",
"Value": {
"Fn::GetAtt": [
"App",
"PublicKibanaDomain"
]
}
},
"InstanceId": {
"Description": "The Id of the ElasticSearch serverless instance.",
"Value": {
"Fn::GetAtt": [
"App",
"InstanceId"
]
}
},
"PrivateESDomain": {
"Description": "The private network domain of the app.",
"Value": {
"Fn::GetAtt": [
"App",
"PrivateESDomain"
]
}
},
"PublicESDomain": {
"Description": "The public network domain of the app.",
"Value": {
"Fn::GetAtt": [
"App",
"PublicESDomain"
]
}
},
"PrivateKibanaDomain": {
"Description": "The private network kibana domain of the app.",
"Value": {
"Fn::GetAtt": [
"App",
"PrivateKibanaDomain"
]
}
}
}
}