ALIYUN::ElasticSearchServerless::App类型用于创建Elasticsearch Serverless应用。
语法
{
"Type": "ALIYUN::ElasticSearchServerless::App",
"Properties": {
"Authentication": Map,
"AppName": String,
"QuotaInfo": Map,
"AppVersion": String,
"Description": String,
"Network": List,
"PrivateNetwork": List
}
}
属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
Authentication | Map | 是 | 是 | 认证信息。 | 更多信息,请参见Authentication属性。 |
AppName | String | 是 | 否 | 应用名称。 | 无 |
QuotaInfo | Map | 是 | 否 | 应用的配额信息。 | 更多信息,请参见QuotaInfo属性。 |
AppVersion | String | 否 | 否 | 产品版本。 | 取值:7.10。 |
Description | String | 否 | 是 | 应用备注。 | 无 |
Network | List | 否 | 是 | 公网信息。 | 更多信息,请参见Network属性。 |
PrivateNetwork | List | 否 | 是 | 私网信息。 | 更多信息,请参见PrivateNetwork属性。 |
Authentication语法
"Authentication": {
"BasicAuth": List
}
Authentication属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
BasicAuth | List | 是 | 是 | BasicAuth 信息。 | 更多信息,请参见BasicAuth属性。 |
BasicAuth语法
"BasicAuth": [
{
"Password": String
}
]
BasicAuth属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
Password | String | 是 | 否 | 用户密码。 | 无 |
QuotaInfo语法
"QuotaInfo": {
"Cu": Integer,
"Storage": Integer,
"AppType": String
}
QuotaInfo属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
AppType | String | 是 | 否 | 应用类型。 | 取值:
|
Cu | Integer | 是 | 否 | 应用的计算单元。 | 无 |
Storage | Integer | 是 | 否 | 应用的存储空间。 | 无 |
Network语法
"Network": [
{
"Type": String,
"Enabled": Boolean,
"WhiteIpGroup": List
}
]
Network属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
Enabled | Boolean | 是 | 否 | 是否开启公网访问。 | 取值:
|
Type | String | 是 | 否 | IP白名单的类型。 | 取值:
|
WhiteIpGroup | List | 否 | 是 | 白名单列表。 | 更多信息,请参见WhiteIpGroup属性。 |
WhiteIpGroup语法
"WhiteIpGroup": [
{
"GroupName": String,
"Ips": List
}
]
WhiteIpGroup属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
GroupName | String | 是 | 否 | 白名单组的组名。 | 无 |
Ips | List | 否 | 否 | 白名单组中的IP地址列表。 | 无 |
PrivateNetwork语法
"PrivateNetwork": [
{
"PvlEndpointId": String,
"Type": String,
"VpcId": String,
"Enabled": Boolean,
"WhiteIpGroup": List
}
]
PrivateNetwork属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
Enabled | Boolean | 是 | 否 | 是否开启私网访问。 | 取值:
|
PvlEndpointId | String | 是 | 否 | 终端节点信息。 | 无 |
Type | String | 是 | 否 | IP白名单的类型。 | 取值:
|
VpcId | String | 是 | 否 | 专有网络ID。 | 无 |
WhiteIpGroup | List | 否 | 是 | 白名单列表。 | 更多信息,请参见WhiteIpGroup属性。 |
返回值
Fn::GetAtt
PublicKibanaDomain:应用的公网Kibana域名。
InstanceId:实例ID。
PrivateESDomain:应用的私网域名。
PublicESDomain:应用的公网域名。
PrivateKibanaDomain:应用的私网Kibana域名。
示例
YAML
格式
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
JSON
格式
{
"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"
]
}
}
}
}