- Lab
- A Cloud Guru
Allocate Shards of Indices to Specific Elasticsearch Nodes
A great way to save money when sizing compute and storage for an Elasticsearch cluster is by using hot-warm architectures. Especially for time series data, hot-warm architectures allow you to allocate your most relevant data (hot data) on your fastest nodes (hot nodes) and your less relevant data (warm data) on your slower nodes (warm nodes). This allows you to scale data retention with cheaper compute and storage and only pay a premium for your hot nodes. All this is made possible in Elasticsearch through the use of node attributes and allocation filtering, which can be used in any case where you want your index allocation to meet specific requirements. In this hands-on lab, you are given the opportunity to exercise the following: * Apply node attributes to each data node in a cluster * Configure indexes to allocate to specific nodes based on their attributes
Path Info
Table of Contents
-
Challenge
Configure nodes data-1 and data-2 to have a "temp" node attribute of "hot".
Using the Secure Shell (SSH), log in to the
data-1
anddata-2
nodes ascloud_user
via the public IP address.Become the
elastic
user with:sudo su - elastic
In the
/home/elastic/elasticsearch/config/elasticsearch.yml
file, change the following line:#node.attr.rack: r1
to
node.attr.temp: hot
Restart the elasticsearch node with:
pkill -F /home/elastic/elasticsearch/pid /home/elastic/elasticsearch/bin/elasticsearch -d -p pid
-
Challenge
Configure nodes data-3 and data-4 to have a "temp" node attribute of "warm".
Using the Secure Shell (SSH), log in to the
data-3
anddata-4
nodes ascloud_user
via the public IP address.Become the
elastic
user with:sudo su - elastic
In the
/home/elastic/elasticsearch/config/elasticsearch.yml
file, change the following line:#node.attr.rack: r1
to
node.attr.temp: warm
Restart the elasticsearch node with:
pkill -F /home/elastic/elasticsearch/pid /home/elastic/elasticsearch/bin/elasticsearch -d -p pid
-
Challenge
Allocate the logs-03 index to the hot nodes.
Use the Kibana console tool to execute the following:
PUT logs-03/_settings { "index.routing.allocation.require.temp": "hot" }
-
Challenge
Allocate the logs-02 index to the warm nodes.
Use the Kibana console tool to execute the following:
PUT logs-02/_settings { "index.routing.allocation.require.temp": "warm" }
-
Challenge
Allocate the logs-01 index to the warm nodes.
Use the Kibana console tool to execute the following:
PUT logs-01/_settings { "index.routing.allocation.require.temp": "warm" }
What's a lab?
Hands-on Labs are real environments created by industry experts to help you learn. These environments help you gain knowledge and experience, practice without compromising your system, test without risk, destroy without fear, and let you learn from your mistakes. Hands-on Labs: practice your skills before delivering in the real world.
Provided environment for hands-on practice
We will provide the credentials and environment necessary for you to practice right within your browser.
Guided walkthrough
Follow along with the author’s guided walkthrough and build something new in your provided environment!
Did you know?
On average, you retain 75% more of your learning if you get time for practice.