Creates an Elasticsearch instance.
Syntax
{
"Type": "ALIYUN::ElasticSearch::Instance",
"Properties": {
"KibanaWhitelist": List,
"PublicWhitelist": List,
"VSwitchId": String,
"InstanceChargeType": String,
"Period": Integer,
"Version": String,
"DataNode": Map,
"PrivateWhitelist": List,
"ResourceGroupId": String,
"EnablePublic": Boolean,
"Password": String,
"MasterNode": Map,
"Tags": List,
"Description": String,
"EnableKibanaPublic": Boolean,
"YMLConfig": Map,
"EnableKibanaPrivate": Boolean,
"ZoneCount": Integer,
"KibanaNode": Map,
"ZoneId": String,
"PeriodUnit": String,
"InstanceCategory": String,
"DeleteType": String
}
}
Properties
|
Property Name |
Type |
Required |
Update allowed |
Description |
Constraints |
|
DataNode |
Map |
Yes |
Yes |
The data node settings. |
For more information, see DataNode properties. |
|
Password |
String |
Yes |
Yes |
The instance password. |
Must be 8 to 32 characters and contain at least three of the following: uppercase letters, lowercase letters, digits, and special characters ( |
|
VSwitchId |
String |
Yes |
No |
The vSwitch ID. |
None |
|
Version |
String |
Yes |
No |
The Elasticsearch version to deploy. |
Valid values:
|
|
Description |
String |
No |
Yes |
The instance description. |
Must be 0 to 30 characters. Must start with a letter, digit, or Chinese character. Can contain letters, digits, Chinese characters, underscores (_), and hyphens (-). |
|
DeleteType |
String |
No |
No |
The release type. |
Valid values:
|
|
EnableKibanaPublic |
Boolean |
No |
No |
Whether to enable public network access for Kibana. |
Valid values:
|
|
KibanaWhitelist |
List |
No |
Yes |
The Kibana IP address whitelist. |
None |
|
PublicWhitelist |
List |
No |
Yes |
The public IP address whitelist. |
None |
|
InstanceChargeType |
String |
No |
No |
The billing method. |
Valid values:
|
|
Period |
Integer |
No |
No |
The subscription duration. |
Valid values:
Unit: months. |
|
ResourceGroupId |
String |
No |
Yes |
The resource group ID. |
None |
|
EnablePublic |
Boolean |
No |
Yes |
Whether to enable the public endpoint. |
Valid values:
|
|
PrivateWhitelist |
List |
No |
Yes |
The VPC IP address whitelist. |
None |
|
MasterNode |
Map |
No |
Yes |
The master node settings. |
If specified, a dedicated master node is created. For more information, see MasterNode properties. |
|
Tags |
List |
No |
Yes |
The tags. |
You can add up to 20 tags. For more information, see Tags properties. |
|
YMLConfig |
Map |
No |
No |
The YAML file configuration. |
For more information, see YMLConfig properties. |
|
EnableKibanaPrivate |
Boolean |
No |
No |
Whether to enable private network access for Kibana. |
Valid values:
|
|
ZoneCount |
Integer |
No |
No |
The number of zones for deployment. |
Valid values:
|
|
KibanaNode |
Map |
No |
No |
The dedicated Kibana node settings. |
None |
|
ZoneId |
String |
No |
No |
The zone ID. |
None |
|
PeriodUnit |
String |
No |
No |
The subscription duration unit. |
Valid values:
|
|
InstanceCategory |
String |
No |
No |
The instance edition. |
Valid values:
|
DataNode syntax
"DataNode": {
"Amount": Integer,
"DiskSize": Integer,
"Spec": String,
"DiskType": String,
"DiskEncryption": Boolean,
"PerformanceLevel": String
}
DataNode properties
|
Property Name |
Type |
Required |
Update allowed |
Description |
Constraints |
|
Amount |
Integer |
Yes |
Yes |
The number of data nodes. |
Valid values: 2 to 50. |
|
DiskSize |
Integer |
Yes |
Yes |
The storage space per data node. |
Valid values:
Unit: GB. |
|
Spec |
String |
Yes |
Yes |
The data node specifications. |
The specifications of elastic nodes. For more information about the specifications, see Node specifications. |
|
DiskType |
String |
Yes |
Yes |
The data node disk type. |
Valid values:
|
|
DiskEncryption |
Boolean |
No |
No |
Whether to enable disk encryption. |
Valid values:
|
|
PerformanceLevel |
String |
No |
No |
The performance level (PL) of the enterprise SSD. |
This parameter is required if you set DiskType to cloud_essd. Valid values:
|
MasterNode syntax
"MasterNode": {
"Amount": Integer,
"DiskSize": Integer,
"Spec": String,
"DiskType": String
}
MasterNode properties
|
Property Name |
Type |
Required |
Update allowed |
Description |
Constraints |
|
Spec |
String |
Yes |
No |
The master node specifications. |
The specifications of the dedicated master node. For more information about the specifications, see Node specifications. |
|
Amount |
Integer |
No |
Yes |
The number of master nodes. |
Default value: 3. |
|
DiskSize |
Integer |
No |
No |
The master node disk space. |
Default value: 20. |
|
DiskType |
String |
No |
No |
The master node disk type. |
Valid values:
|
Tags syntax
"Tags": [
{
"Key": String,
"Value": String
}
]
Tags properties
|
Property Name |
Type |
Required |
Update allowed |
Description |
Constraints |
|
Key |
String |
Yes |
No |
The tag key. |
Must be 1 to 128 characters. Cannot start with |
|
Value |
String |
No |
No |
The tag value. |
Must be 0 to 128 characters. Cannot start with |
YMLConfig syntax
"YMLConfig": {
"CreateIndex": String,
"Watcher": String,
"DestructiveRequiresName": Boolean,
"AuditLog": Boolean,
"OtherConfigs": Map
}
YMLConfig properties
|
Property Name |
Type |
Required |
Update allowed |
Description |
Constraints |
|
AuditLog |
Boolean |
No |
No |
Whether to enable the audit log index. |
Valid values:
Note
Not supported for Elasticsearch 7.0 and later. |
|
CreateIndex |
String |
No |
No |
Whether to automatically create indexes when a document is indexed to a non-existent index. |
The corresponding configuration item in the YAML file is action.auto_create_index. Valid values:
|
|
DestructiveRequiresName |
Boolean |
No |
No |
Whether an explicit index name is required to delete an index. |
The corresponding configuration item in the YAML file is action.destructive_requires_name. Valid values:
Note
If wildcard characters are allowed when deleting or closing indexes, batch deletion is possible. Deleted indexes cannot be restored. Use with caution. |
|
OtherConfigs |
Map |
No |
No |
Other configurations. |
Supported configuration items (compatible with Elasticsearch 5.x, 6.x, and 7.x unless noted otherwise):
|
|
Watcher |
Boolean |
No |
No |
Whether to enable Watcher. |
The corresponding YAML configuration item is xpack.watcher.enabled. Valid values:
|
KibanaNode syntax
"KibanaNode": {
"Spec": String
}
KibanaNode properties
|
Property Name |
Type |
Required |
Update allowed |
Description |
Constraints |
|
Spec |
String |
Yes |
No |
The dedicated Kibana node specifications. |
None |
Return values
Fn::GetAtt
-
Status: The instance status.
-
KibanaDomain: The Kibana endpoint.
-
PublicDomain: The public endpoint of the instance.
-
Domain: The internal endpoint of the instance.
-
InstanceId: The ID of the Elasticsearch instance.
-
KibanaPort: The Kibana access port.
-
Port: The connection port of the instance.
-
VSwitchId: The ID of the vSwitch.
-
Version: The version of the instance.
-
InstanceChargeType: The billing method of the instance.
-
Arn: The Alibaba Cloud Resource Name (ARN).
Examples
YAML format
ROSTemplateFormatVersion: '2015-09-01'
Description: Test ElasticSearch Instance
Parameters:
VSwitchId:
Type: String
AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
Resources:
Instance:
Type: ALIYUN::ElasticSearch::Instance
Properties:
DataNode:
Spec: elasticsearch.sn1ne.large
Amount: 2
DiskSize: 20
DiskType: cloud_essd
InstanceChargeType: PostPaid
Version: 7.10_with_X-Pack
VSwitchId:
Ref: VSwitchId
Password: Admin@123!
Outputs: {}
JSON format
{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": "Test ElasticSearch Instance",
"Parameters": {
"VSwitchId": {
"Type": "String",
"AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId"
}
},
"Resources": {
"Instance": {
"Type": "ALIYUN::ElasticSearch::Instance",
"Properties": {
"DataNode": {
"Spec": "elasticsearch.sn1ne.large",
"Amount": 2,
"DiskSize": 20,
"DiskType": "cloud_essd"
},
"InstanceChargeType": "PostPaid",
"Version": "7.10_with_X-Pack",
"VSwitchId": {
"Ref": "VSwitchId"
},
"Password": "Admin@123!"
}
}
},
"Outputs": {
}
}