How can I scale up or scale out an Amazon OpenSearch Service domain?

Last updated: 2021-09-01

I'm trying to scale up or scale out an Amazon OpenSearch Service (successor to Amazon Elasticsearch Service) domain. How can I do this?

Short description

Based on your workload, you can scale up (scale vertically) or scale out (scale horizontally) your cluster. To scale out your OpenSearch Service domain, add additional nodes (such as data nodes, master nodes, or UltraWarm nodes) to your cluster. To resize or scale up your domain, increase your Amazon Elastic Block Store (Amazon EBS) volume size or add more memory and vCPUs with bigger node types.

Note: When scaling up or scaling out, it's a best practice to use at least three dedicated master nodes for production workloads.

Resolution

Scaling out your domain

When you scale out your domain, you're adding nodes of the same configuration type as your current cluster nodes. As a result, you're also adding more resources (such as RAM, VCPU, and EBS volume) to your cluster. Note that the maximum EBS volume size depends on the node's Amazon Elastic Compute Cloud (Amazon EC2) instance type.

If you reach the EBS volume size limit and can't modify the instance type, then add more nodes. When you add more nodes to your cluster, you increase the cluster's EBS volume size. If you're adding more data nodes to your cluster, then make sure to use data nodes or UltraWarm nodes. Note that UltraWarm nodes can be used to migrate less frequently accessed data, while retaining accessed indices on standard data nodes.

Tip: To automate the migration of data from hot nodes to warm nodes, use an Index State Management (ISM) policy.

Scaling up your domain

When you scale up your OpenSearch Service domain, no additional nodes are added to your cluster. Instead, scaling up involves increasing the available resources for each of your nodes.

If you want to vertically scale or scale up your domain, switch to a larger instance type to add more memory or CPU resources.

Note: When you scale up your domain, EBS volume size doesn't automatically scale up. You must specify this setting if you want the EBS volume size to automatically scale up.

Updating your domain configuration settings

To scale your OpenSearch Service domain, update your domain configuration settings. To edit your domain configuration settings, perform the following steps:

1.    Sign in to your AWS Management Console.

2.    Open the OpenSearch Service console.

3.    Select the domain that you want to scale.

4.    Choose Edit Domain.

5.    Based on your use case, update your domain configuration settings:

Data nodes: Configure your Availability Zones, instance type, and number of nodes.
Storage configuration: Update your data node storage type, EBS volume type, and EBS storage size per node.
Dedicated master nodes: Enable or disable the dedicated master node, update the instance type, or modify the number of master nodes.
UltraWarm data nodes: Enable or disable UltraWarm data nodes, update the instance type, or modify the number of UltraWarm data nodes.

6.    Choose Submit.

Note: OpenSearch Service triggers a blue/green deployment process whenever you update your domain. If a blue/green deployment process is triggered, the number of nodes in your cluster might temporarily increase while changes are applied. For more information, see Creating and managing Amazon OpenSearch Service domains.

7.    Configure Amazon CloudWatch alarms to monitor your resource utilization. For example, you can set an alarm that notifies you when CPUUtilization is above 80%.