ObjectRocket for Elasticsearch instances are constructed of multiple different nodes to form a cluster, but when creating an instance, the only nodes you configure are the data nodes. Data nodes on our platform are specced and priced based on predetermined Plan sizes. The content below outlines those plan sizes and what’s included.
Elasticsearch Storage and Memory Options¶
The plan sizes currently available on the ObjectRocket for Elasticsearch service are listed below.
|Plan Size||Storage (PCIe Flash)||RAM|
Keep in mind that the plan size indicates the resources available on each data node, not total for the cluster.
Also, the plan size only indicates the RAM and Storage for the data nodes. The other nodes in the cluster have different amounts of RAM/Storage and scale at different rates than the plan sizes.
What happens when I run out of storage space in my existing Elasticsearch cluster?¶
Our support team monitors the health of your cluster and will take action to ensure the cluster does not fill up. The most common action is to add a data node at the current plan size.
There are, however, scenarios where performing a plan resize (changing the plan size of all data nodes) is a better solution. In those cases, our support team will contact you via a ticket and present the options. If you approve the plan resize, we will perform it for you, without downtime, and right-size the number of resulting data nodes to the data in your cluster.
How do I pick the right plan/cluster size?¶
There are a number of factors that go into the right plan size beyond the amount of storage you need, but most of those are based on your unique data usage patterns. That’s why our support team is here to help; we’ll work with you by looking at how you’re using Elasticsearch and your growth objectives to provide the right plan recommendation. You’re never locked into any plan and there’s no additional fee for changing plans or number of data nodes, since we expect your cluster layout to change over time.
To get you started though, here are a few things to think about:
- Remember to account for replication. By default, ObjectRocket clusters set
number_of_replicasto 1. So make sure you have twice as much capacity as your data to account for the replica. If you have 16GB of data, make sure you have at least 32GB of capacity.
- Go no lower than the 8GB plan size for high-traffic use cases. Though we have a smaller (4GB) plan size available, it’s better suited to test and lower traffic deployments because of the 512MB memory footprint.
- Add enough data nodes. Each cluster starts out with 2 data nodes, but you can easily add more via the UI. For example, with 32GB of replicated data, you could use 2 x 16GB data nodes, or 4 x 8GB data nodes. There are advantages to the parallelism and resiliency of more data nodes, as well as the ability to increase in smaller increments (8GB vs. 16GB) as you add data nodes, but there is such a thing as too many data nodes. In general, we start talking with our customers about doing a plan resize to a larger plan and fewer data nodes once they’ve reached about 12 data nodes.
- Test it and make sure you’re getting the performance you want. We’ve chosen our 8:1 storage to RAM ratio for our data nodes, because it provides enough RAM for most use cases. However, every application is different and you may need a little more RAM from a larger plan size or another data node to better spread out the traffic, even if you don’t need the extra storage capacity.
Beyond that, we’re here to help. Feel free to contact our support team, who are always ready to help you figure out the right cluster size.