Module elasticsearch
This page documents the language specification for the alicloud package. If you're looking for help working with the inputs, outputs, or functions of alicloud resources in a Pulumi program, please see the resource documentation for examples and API reference.
This provider is a derived work of the Terraform Provider distributed under MPL 2.0. If you encounter a bug or missing feature, first check the
pulumi/pulumi-alicloudrepo; however, if that doesn’t turn up anything, please consult the sourceterraform-providers/terraform-provider-alicloudrepo.
Resources
Functions
Others
Resources
Resource Instance
class Instance extends CustomResourceProvides a Elasticsearch instance resource. It contains data nodes, dedicated master node(optional) and etc. It can be associated with private IP whitelists and kibana IP whitelist.
NOTE: Only one operation is supported in a request. So if
dataNodeSpecanddataNodeDiskSizeare both changed, system will respond error.NOTE: At present,
versioncan not be modified once instance has been created.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const instance = new alicloud.elasticsearch.Instance("instance", {
instanceChargeType: "PostPaid",
dataNodeAmount: "2",
dataNodeSpec: "elasticsearch.sn2ne.large",
dataNodeDiskSize: "20",
dataNodeDiskType: "cloudSsd",
vswitchId: "some vswitch id",
password: "Your password",
version: "5.5.3_with_X-Pack",
description: "description",
zoneCount: "2",
tags: {
key1: "value1",
key2: "value2",
},
});constructor
new Instance(name: string, args: InstanceArgs, opts?: pulumi.CustomResourceOptions)Create a Instance resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: InstanceState, opts?: pulumi.CustomResourceOptions): InstanceGet an existing Instance resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is InstanceReturns true if the given object is an instance of Instance. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property dataNodeAmount
public dataNodeAmount: pulumi.Output<number>;The Elasticsearch cluster’s data node quantity, between 2 and 50.
property dataNodeDiskEncrypted
public dataNodeDiskEncrypted: pulumi.Output<boolean | undefined>;If encrypt the data node disk. Valid values are true, false. Default to false.
property dataNodeDiskSize
public dataNodeDiskSize: pulumi.Output<number>;The single data node storage space.
- cloudSsd: An SSD disk, supports a maximum of 2048 GiB (2 TB).
- cloudEfficiency An ultra disk, supports a maximum of 5120 GiB (5 TB). If the data to be stored is larger than 2048 GiB, an ultra disk can only support the following data sizes (GiB): [2560, 3072, 3584, 4096, 4608, 5120].
property dataNodeDiskType
public dataNodeDiskType: pulumi.Output<string>;The data node disk type. Supported values: cloud_ssd, cloud_efficiency.
property dataNodeSpec
public dataNodeSpec: pulumi.Output<string>;The data node specifications of the Elasticsearch instance.
property description
public description: pulumi.Output<string | undefined>;The description of instance. It a string of 0 to 30 characters.
property domain
public domain: pulumi.Output<string>;Instance connection domain (only VPC network access supported).
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property instanceChargeType
public instanceChargeType: pulumi.Output<string | undefined>;Valid values are PrePaid, PostPaid. Default to PostPaid. From version 1.69.0, the Elasticsearch cluster allows you to update your instanceChargeYpe from PostPaid to PrePaid, the following attributes are required: period. But, updating from PostPaid to PrePaid is not supported.
property kibanaDomain
public kibanaDomain: pulumi.Output<string>;Kibana console domain (Internet access supported).
property kibanaPort
public kibanaPort: pulumi.Output<number>;Kibana console port.
property kibanaWhitelists
public kibanaWhitelists: pulumi.Output<string[]>;Set the Kibana’s IP whitelist in internet network.
property kmsEncryptedPassword
public kmsEncryptedPassword: pulumi.Output<string | undefined>;An KMS encrypts password used to a instance. If the password is filled in, this field will be ignored, but you have to specify one of password and kmsEncryptedPassword fields.
property kmsEncryptionContext
public kmsEncryptionContext: pulumi.Output<{[key: string]: any} | undefined>;An KMS encryption context used to decrypt kmsEncryptedPassword before creating or updating instance with kmsEncryptedPassword. See Encryption Context. It is valid when kmsEncryptedPassword is set.
property masterNodeSpec
public masterNodeSpec: pulumi.Output<string | undefined>;The dedicated master node spec. If specified, dedicated master node will be created.
property password
public password: pulumi.Output<string | undefined>;The password of the instance. The password can be 8 to 30 characters in length and must contain three of the following conditions: uppercase letters, lowercase letters, numbers, and special characters (!@#$%^&*()_+-=).
property period
public period: pulumi.Output<number | undefined>;The duration that you will buy Elasticsearch instance (in month). It is valid when instanceChargeType is PrePaid. Valid values: [1~9], 12, 24, 36. Default to 1. From version 1.69.2, when to modify this value, the resource can renewal a PrePaid instance.
property port
public port: pulumi.Output<number>;Instance connection port.
property privateWhitelists
public privateWhitelists: pulumi.Output<string[]>;Set the instance’s IP whitelist in VPC network.
property publicWhitelists
public publicWhitelists: pulumi.Output<string[]>;property resourceGroupId
public resourceGroupId: pulumi.Output<string>;The Id of resource group which the Elasticsearch instance belongs.
property status
public status: pulumi.Output<string>;The Elasticsearch instance status. Includes active, activating, inactive. Some operations are denied when status is not active.
property tags
public tags: pulumi.Output<{[key: string]: any} | undefined>;A mapping of tags to assign to the resource. - key: It can be up to 128 characters in length. It cannot begin with “aliyun”, “acs:“. It cannot contain “http://” and “https://“. It cannot be a null string. - value: It can be up to 128 characters in length. It cannot contain “http://” and “https://“. It can be a null string.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property version
public version: pulumi.Output<string>;Elasticsearch version. Supported values: 5.5.3_with_X-Pack, 6.3_with_X-Pack and 6.7_with_X-Pack.
property vswitchId
public vswitchId: pulumi.Output<string>;The ID of VSwitch.
property zoneCount
public zoneCount: pulumi.Output<number | undefined>;The Multi-AZ supported for Elasticsearch, between 1 and 3. The dataNodeAmount value must be an integral multiple of the zoneCount value.
Functions
Function getInstances
getInstances(args?: GetInstancesArgs, opts?: pulumi.InvokeOptions): Promise<GetInstancesResult>Function getZones
getZones(args?: GetZonesArgs, opts?: pulumi.InvokeOptions): Promise<GetZonesResult>This data source provides availability zones for Elasticsearch that can be accessed by an Alibaba Cloud account within the region configured in the provider.
NOTE: Available in v1.73.0+.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
// Declare the data source
const zonesIds = pulumi.output(alicloud.elasticsearch.getZones({ async: true }));Others
interface GetInstancesArgs
interface GetInstancesArgsA collection of arguments for invoking getInstances.
property descriptionRegex
descriptionRegex?: undefined | string;property ids
ids?: string[];property outputFile
outputFile?: undefined | string;property tags
tags?: undefined | {[key: string]: any};property version
version?: undefined | string;interface GetInstancesResult
interface GetInstancesResultA collection of values returned by getInstances.
property descriptionRegex
descriptionRegex?: undefined | string;property descriptions
descriptions: string[];property id
id: string;The provider-assigned unique ID for this managed resource.
property ids
ids: string[];property instances
instances: GetInstancesInstance[];property outputFile
outputFile?: undefined | string;property tags
tags?: undefined | {[key: string]: any};property version
version?: undefined | string;interface GetZonesArgs
interface GetZonesArgsA collection of arguments for invoking getZones.
property multi
multi?: undefined | false | true;Indicate whether the zones can be used in a multi AZ configuration. Default to false. Multi AZ is usually used to launch Elasticsearch instances.
property outputFile
outputFile?: undefined | string;interface GetZonesResult
interface GetZonesResultA collection of values returned by getZones.
property id
id: string;The provider-assigned unique ID for this managed resource.
property ids
ids: string[];A list of zone IDs.
property multi
multi?: undefined | false | true;property outputFile
outputFile?: undefined | string;property zones
zones: GetZonesZone[];A list of availability zones. Each element contains the following attributes:
interface InstanceArgs
interface InstanceArgsThe set of arguments for constructing a Instance resource.
property dataNodeAmount
dataNodeAmount: pulumi.Input<number>;The Elasticsearch cluster’s data node quantity, between 2 and 50.
property dataNodeDiskEncrypted
dataNodeDiskEncrypted?: pulumi.Input<boolean>;If encrypt the data node disk. Valid values are true, false. Default to false.
property dataNodeDiskSize
dataNodeDiskSize: pulumi.Input<number>;The single data node storage space.
- cloudSsd: An SSD disk, supports a maximum of 2048 GiB (2 TB).
- cloudEfficiency An ultra disk, supports a maximum of 5120 GiB (5 TB). If the data to be stored is larger than 2048 GiB, an ultra disk can only support the following data sizes (GiB): [2560, 3072, 3584, 4096, 4608, 5120].
property dataNodeDiskType
dataNodeDiskType: pulumi.Input<string>;The data node disk type. Supported values: cloud_ssd, cloud_efficiency.
property dataNodeSpec
dataNodeSpec: pulumi.Input<string>;The data node specifications of the Elasticsearch instance.
property description
description?: pulumi.Input<string>;The description of instance. It a string of 0 to 30 characters.
property instanceChargeType
instanceChargeType?: pulumi.Input<string>;Valid values are PrePaid, PostPaid. Default to PostPaid. From version 1.69.0, the Elasticsearch cluster allows you to update your instanceChargeYpe from PostPaid to PrePaid, the following attributes are required: period. But, updating from PostPaid to PrePaid is not supported.
property kibanaWhitelists
kibanaWhitelists?: pulumi.Input<pulumi.Input<string>[]>;Set the Kibana’s IP whitelist in internet network.
property kmsEncryptedPassword
kmsEncryptedPassword?: pulumi.Input<string>;An KMS encrypts password used to a instance. If the password is filled in, this field will be ignored, but you have to specify one of password and kmsEncryptedPassword fields.
property kmsEncryptionContext
kmsEncryptionContext?: pulumi.Input<{[key: string]: any}>;An KMS encryption context used to decrypt kmsEncryptedPassword before creating or updating instance with kmsEncryptedPassword. See Encryption Context. It is valid when kmsEncryptedPassword is set.
property masterNodeSpec
masterNodeSpec?: pulumi.Input<string>;The dedicated master node spec. If specified, dedicated master node will be created.
property password
password?: pulumi.Input<string>;The password of the instance. The password can be 8 to 30 characters in length and must contain three of the following conditions: uppercase letters, lowercase letters, numbers, and special characters (!@#$%^&*()_+-=).
property period
period?: pulumi.Input<number>;The duration that you will buy Elasticsearch instance (in month). It is valid when instanceChargeType is PrePaid. Valid values: [1~9], 12, 24, 36. Default to 1. From version 1.69.2, when to modify this value, the resource can renewal a PrePaid instance.
property privateWhitelists
privateWhitelists?: pulumi.Input<pulumi.Input<string>[]>;Set the instance’s IP whitelist in VPC network.
property publicWhitelists
publicWhitelists?: pulumi.Input<pulumi.Input<string>[]>;property resourceGroupId
resourceGroupId?: pulumi.Input<string>;The Id of resource group which the Elasticsearch instance belongs.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A mapping of tags to assign to the resource. - key: It can be up to 128 characters in length. It cannot begin with “aliyun”, “acs:“. It cannot contain “http://” and “https://“. It cannot be a null string. - value: It can be up to 128 characters in length. It cannot contain “http://” and “https://“. It can be a null string.
property version
version: pulumi.Input<string>;Elasticsearch version. Supported values: 5.5.3_with_X-Pack, 6.3_with_X-Pack and 6.7_with_X-Pack.
property vswitchId
vswitchId: pulumi.Input<string>;The ID of VSwitch.
property zoneCount
zoneCount?: pulumi.Input<number>;The Multi-AZ supported for Elasticsearch, between 1 and 3. The dataNodeAmount value must be an integral multiple of the zoneCount value.
interface InstanceState
interface InstanceStateInput properties used for looking up and filtering Instance resources.
property dataNodeAmount
dataNodeAmount?: pulumi.Input<number>;The Elasticsearch cluster’s data node quantity, between 2 and 50.
property dataNodeDiskEncrypted
dataNodeDiskEncrypted?: pulumi.Input<boolean>;If encrypt the data node disk. Valid values are true, false. Default to false.
property dataNodeDiskSize
dataNodeDiskSize?: pulumi.Input<number>;The single data node storage space.
- cloudSsd: An SSD disk, supports a maximum of 2048 GiB (2 TB).
- cloudEfficiency An ultra disk, supports a maximum of 5120 GiB (5 TB). If the data to be stored is larger than 2048 GiB, an ultra disk can only support the following data sizes (GiB): [2560, 3072, 3584, 4096, 4608, 5120].
property dataNodeDiskType
dataNodeDiskType?: pulumi.Input<string>;The data node disk type. Supported values: cloud_ssd, cloud_efficiency.
property dataNodeSpec
dataNodeSpec?: pulumi.Input<string>;The data node specifications of the Elasticsearch instance.
property description
description?: pulumi.Input<string>;The description of instance. It a string of 0 to 30 characters.
property domain
domain?: pulumi.Input<string>;Instance connection domain (only VPC network access supported).
property instanceChargeType
instanceChargeType?: pulumi.Input<string>;Valid values are PrePaid, PostPaid. Default to PostPaid. From version 1.69.0, the Elasticsearch cluster allows you to update your instanceChargeYpe from PostPaid to PrePaid, the following attributes are required: period. But, updating from PostPaid to PrePaid is not supported.
property kibanaDomain
kibanaDomain?: pulumi.Input<string>;Kibana console domain (Internet access supported).
property kibanaPort
kibanaPort?: pulumi.Input<number>;Kibana console port.
property kibanaWhitelists
kibanaWhitelists?: pulumi.Input<pulumi.Input<string>[]>;Set the Kibana’s IP whitelist in internet network.
property kmsEncryptedPassword
kmsEncryptedPassword?: pulumi.Input<string>;An KMS encrypts password used to a instance. If the password is filled in, this field will be ignored, but you have to specify one of password and kmsEncryptedPassword fields.
property kmsEncryptionContext
kmsEncryptionContext?: pulumi.Input<{[key: string]: any}>;An KMS encryption context used to decrypt kmsEncryptedPassword before creating or updating instance with kmsEncryptedPassword. See Encryption Context. It is valid when kmsEncryptedPassword is set.
property masterNodeSpec
masterNodeSpec?: pulumi.Input<string>;The dedicated master node spec. If specified, dedicated master node will be created.
property password
password?: pulumi.Input<string>;The password of the instance. The password can be 8 to 30 characters in length and must contain three of the following conditions: uppercase letters, lowercase letters, numbers, and special characters (!@#$%^&*()_+-=).
property period
period?: pulumi.Input<number>;The duration that you will buy Elasticsearch instance (in month). It is valid when instanceChargeType is PrePaid. Valid values: [1~9], 12, 24, 36. Default to 1. From version 1.69.2, when to modify this value, the resource can renewal a PrePaid instance.
property port
port?: pulumi.Input<number>;Instance connection port.
property privateWhitelists
privateWhitelists?: pulumi.Input<pulumi.Input<string>[]>;Set the instance’s IP whitelist in VPC network.
property publicWhitelists
publicWhitelists?: pulumi.Input<pulumi.Input<string>[]>;property resourceGroupId
resourceGroupId?: pulumi.Input<string>;The Id of resource group which the Elasticsearch instance belongs.
property status
status?: pulumi.Input<string>;The Elasticsearch instance status. Includes active, activating, inactive. Some operations are denied when status is not active.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A mapping of tags to assign to the resource. - key: It can be up to 128 characters in length. It cannot begin with “aliyun”, “acs:“. It cannot contain “http://” and “https://“. It cannot be a null string. - value: It can be up to 128 characters in length. It cannot contain “http://” and “https://“. It can be a null string.
property version
version?: pulumi.Input<string>;Elasticsearch version. Supported values: 5.5.3_with_X-Pack, 6.3_with_X-Pack and 6.7_with_X-Pack.
property vswitchId
vswitchId?: pulumi.Input<string>;The ID of VSwitch.
property zoneCount
zoneCount?: pulumi.Input<number>;The Multi-AZ supported for Elasticsearch, between 1 and 3. The dataNodeAmount value must be an integral multiple of the zoneCount value.