It is time to say goodbye: This version of Elastic Cloud Enterprise has reached end-of-life (EOL) and is no longer supported.
The documentation for this version is no longer being maintained. If you are running this version, we strongly advise you to upgrade. For the latest information, see the current release documentation.
Applying a new plan: Resize and add high availability
editApplying a new plan: Resize and add high availability
editIn an earlier example, we created a simple deployment called My First Deployment
that included only a small Elasticsearch cluster with a single node in a single availability zone. This Elasticsearch cluster in our deployment is very small with only 1024 MB of RAM. Any serious indexing activity will likely require more capacity, so let’s change memory_per_node
to 4096
. To make the cluster in our deployment highly available, let’s also change the value of zone_count
to 3
, which will create Elasticsearch nodes across three availability zones.
Before you begin
editThis example requires a deployment with an Elasticsearch cluster to work with that is not being used for anything important. If you don’t already have one, you can follow our My First Deployment
example to create one.
To make the cluster highly available, your Elastic Cloud Enterprise installation must include more than one availability zone, which is something you control with the --availability-zone
parameter when you install Elastic Cloud Enterprise on additional hosts. If you don’t have additional availability zones to work with, you can perform just a resize operation.
Steps
editTo resize a deployment and add high availability:
-
Obtain the existing configuration plan for
My First Deployment
and save the output to a file, heremy-first-deployment.json
:curl -k -X GET -u USER:PASSWORD https://COORDINATOR_HOST:12443/api/v1/clusters/elasticsearch/ELASTICSEARCH_CLUSTER_ID/plan >my-first-deployment.json
-
ELASTICSEARCH_CLUSTER_ID
- The Elasticsearch cluster ID as shown in the Cloud UI or obtained via the API
-
-
Edit the
my-first-deployment.json
file in your favorite editor and change the value ofmemory_per_node
to4096
and the value ofzone_count
to3
:{ "cluster_topology": [ { "node_type": { "data": true, "master": true, "ingest": true }, "instance_configuration_id": "data.default", "zone_count": 3, "size": { "resource": "memory", "value": 4096 } } ], "elasticsearch": { "version": "6.5.4" } }
-
Apply the updated cluster configuration to the deployment with a POST request:
curl -k -X POST -u USER:PASSWORD https://COORDINATOR_HOST:12443/api/v1/clusters/elasticsearch/$ELASTICSEARCH_CLUSTER_ID/plan -H 'content-type: application/json' -d @my-first-deployment.json
After the plan gets applied successfully, the Elasticsearch cluster in your deployment provides 4096 MB of memory and is highly available, which you can verify by checking in the Cloud UI or performing another GET request on the /api/v1/clusters/elasticsearch/$ELASTICSEARCH_CLUSTER_ID/plan
endpoint.