The ALIYUN::ElasticSearch::Instance resource is used to create 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 of the Elasticsearch cluster. | For more information, see DataNode properties. |
Password | String | Yes | Yes | The password of the instance. | The password must be 8 to 32 characters in length and contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. The following special characters are supported: |
VSwitchId | String | Yes | No | The ID of the vSwitch. | None |
Version | String | Yes | No | The Elasticsearch version. | Valid values:
|
Description | String | No | Yes | The description of the instance. | The description must be 0 to 30 characters in length. It must start with a letter, digit, or Chinese character. It can contain letters, digits, Chinese characters, underscores (_), and hyphens (-). |
DeleteType | String | No | No | The release type. | Valid values:
|
EnableKibanaPublic | Boolean | No | No | Specifies whether to enable public network access for Kibana. | Valid values:
|
KibanaWhitelist | List | No | Yes | The IP address whitelist of Kibana. | None |
PublicWhitelist | List | No | Yes | The public IP address whitelist of the instance. | None |
InstanceChargeType | String | No | No | The billing method of the instance. | Valid values:
|
Period | Integer | No | No | The subscription duration of the Elasticsearch instance. | Valid values:
Unit: months. |
ResourceGroupId | String | No | Yes | The ID of the resource group. | None |
EnablePublic | Boolean | No | Yes | Specifies whether to enable the public endpoint of the instance. | Valid values:
|
PrivateWhitelist | List | No | Yes | The IP address whitelist for accessing the instance in a virtual private cloud (VPC). | None |
MasterNode | Map | No | Yes | The settings of the master node. | If you specify this parameter, 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 | Specifies whether to enable private network access for Kibana. | Valid values:
|
ZoneCount | Integer | No | No | The number of zones in which the instance is deployed. | Valid values:
|
KibanaNode | Map | No | No | The settings of the dedicated Kibana node. | None |
ZoneId | String | No | No | The ID of the zone. | None |
PeriodUnit | String | No | No | The unit of the subscription duration. | Valid values:
|
InstanceCategory | String | No | No | The version type of the instance. | 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 in the Elasticsearch cluster. | Valid values: 2 to 50. |
DiskSize | Integer | Yes | Yes | The storage space of a single data node. | Valid values:
Unit: GB. |
Spec | String | Yes | Yes | The specifications of the data nodes of the Elasticsearch instance. | The specifications of elastic nodes. For more information about the specifications, see Node specifications. |
DiskType | String | Yes | Yes | The disk type of the data node. | Valid values:
|
DiskEncryption | Boolean | No | No | Specifies 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 specifications of the master node. | 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 disk space of the master node. | Default value: 20. |
DiskType | String | No | No | The disk type of the master node. | 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. | The key can be 1 to 128 characters in length. It cannot start with |
Value | String | No | No | The tag value. | The value can be 0 to 128 characters in length. It 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 | Specifies whether to enable the audit log index. | Valid values:
Note This parameter is not supported for Elasticsearch 7.0 and later versions. |
CreateIndex | String | No | No | Specifies whether to allow the system to automatically create an index if the corresponding index does not exist after the Elasticsearch instance receives a new file. | The corresponding configuration item in the YAML file is action.auto_create_index. Valid values:
|
DestructiveRequiresName | Boolean | No | No | Do I have to specify an index name to delete an index? | The corresponding configuration item in the YAML file is action.destructive_requires_name. Valid values:
Note If you allow the use of wildcard characters for the index name when you delete or close an index, you can use a wildcard character to delete indexes in batches. Deleted indexes cannot be restored. Use this configuration with caution. |
OtherConfigs | Map | No | No | Other configurations. | The following configuration items are supported. Unless otherwise specified, the configuration items are compatible with Elasticsearch 5.x, 6.x, and 7.x.
|
Watcher | Boolean | No | No | Specifies whether to enable Watcher. | The corresponding configuration item in the YAML file 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 specifications of the dedicated Kibana node. | None |
Return values
Fn::GetAtt
Status: The status of the Elasticsearch instance.
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": {
}
}