# Node Role Specific Disk Watermarks

**URL:** <https://discuss.elastic.co/t/node-role-specific-disk-watermarks/301684>\
**Category:** Elasticsearch\
**Created:** [April 5, 2022, 11:08pm UTC](https://discuss.elastic.co/t/node-role-specific-disk-watermarks/301684 "2022-04-05T23:08:44Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![BenB196](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/benb196/32/83401_2.png) [@BenB196](https://discuss.elastic.co/u/BenB196)\
**Post date:** [April 5, 2022, 11:08pm UTC](https://discuss.elastic.co/t/node-role-specific-disk-watermarks/301684/1 "2022-04-05T23:08:44Z")

</div>

Hi All,

I was wondering if there was a way to set high disk watermark based on the node role?

Looking at the [docs](https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-cluster.html#disk-based-shard-allocation).

I see the normal settings `cluster.routing.allocation.disk.watermark.low`, `cluster.routing.allocation.disk.watermark.high`, and `cluster.routing.allocation.disk.watermark.flood_stage`.

But I also, see `cluster.routing.allocation.disk.watermark.flood_stage.frozen` and `cluster.routing.allocation.disk.watermark.flood_stage.frozen.max_headroom`.

My assumptive answer to my question, is that this is currently not actually possible, and that the 2 `frozen` settings actually refer to the old ["frozen"](https://www.elastic.co/guide/en/elasticsearch/reference/7.17/freeze-index-api.html) concept instead of the new `frozen` node role, but I figured I'd ask here first.

Context, with the new node roles `hot`, `warm`, `cold`, `frozen`. I want to be able to set different high disk usage watermarks for each role, as `cold` and `frozen` could have substantially larger disks than `hot` or `warm`, and a single `%` value across all node types doesn't make that much sense. I kind of want to avoid using static byte values, as even `100GB` on a `16TB` disk vs a `1TB` is a significant difference.

---

<div class="post-metadata">

**Author:** ![stephenb](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/stephenb/32/40856_2.png) [@stephenb](https://discuss.elastic.co/u/stephenb)\
**Post date:** [April 6, 2022, 5:35am UTC](https://discuss.elastic.co/t/node-role-specific-disk-watermarks/301684/2 "2022-04-06T05:35:56Z")

</div>

No My Understanding is that these settings ARE for the new Frozen Node type used with Searchable Snapshot. If you look at the profiles on Elastic Cloud as a Model on AWS

The 60GB is an aws.es.datafrozen.i3en with a 4TB SSD and Supports about 93TB of S3.

So the default flood stage is at ~3.8 TB.

> `cluster.routing.allocation.disk.watermark.flood_stage.frozen` [![logo cloud](https://doc-icons.s3.us-east-2.amazonaws.com/logo_cloud.svg "Supported on Elasticsearch Service")](https://www.elastic.co/cloud/elasticsearch-service/signup?baymax=docs-body&elektra=docs)
> 
> ([Dynamic](https://www.elastic.co/guide/en/elasticsearch/reference/current/settings.html#dynamic-cluster-setting)) Controls the flood stage watermark for dedicated frozen nodes, which defaults to 95%.
> 
> `cluster.routing.allocation.disk.watermark.flood_stage.frozen.max_headroom` [![logo cloud](https://doc-icons.s3.us-east-2.amazonaws.com/logo_cloud.svg "Supported on Elasticsearch Service")](https://www.elastic.co/cloud/elasticsearch-service/signup?baymax=docs-body&elektra=docs)
> 
> ([Dynamic](https://www.elastic.co/guide/en/elasticsearch/reference/current/settings.html#dynamic-cluster-setting)) Controls the max headroom for the flood stage watermark for dedicated frozen nodes. Defaults to 20GB when `cluster.routing.allocation.disk.watermark.flood_stage.frozen` is not explicitly set. This caps the amount of free space required on dedicated frozen nodes.

And You can read more about the headroom and searchable [here](https://www.elastic.co/guide/en/elasticsearch/reference/current/searchable-snapshots.html)

---

<div class="post-metadata">

**Author:** ![BenB196](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/benb196/32/83401_2.png) [@BenB196](https://discuss.elastic.co/u/BenB196)\
**Post date:** [April 6, 2022, 11:42am UTC](https://discuss.elastic.co/t/node-role-specific-disk-watermarks/301684/3 "2022-04-06T11:42:20Z")

</div>

Ah, thanks @stephenb for that clarification on the frozen settings.

Though, given that the settings are either all `cluster.routing.allocation.disk.watermark.(low|high|flood)` or `cluster.routing.allocation.disk.watermark.flood_stage.frozen*`, I'm guessing the complete answer, is that there isn't node role-based disk watermark, with the exception of the `frozen` node role, which has its own settings?

---

<div class="post-metadata">

**Author:** ![stephenb](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/stephenb/32/40856_2.png) [@stephenb](https://discuss.elastic.co/u/stephenb)\
**Post date:** [April 6, 2022, 3:05pm UTC](https://discuss.elastic.co/t/node-role-specific-disk-watermarks/301684/4 "2022-04-06T15:05:19Z")

</div>

@BenB196 Yes I do not see role specific... which interestingly we were just looking for too for a specific use case where we had large Warm Nodes and did not need as much buffer.

I asked internally if I get anything back I will let you know

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [May 4, 2022, 3:05pm UTC](https://discuss.elastic.co/t/node-role-specific-disk-watermarks/301684/5 "2022-05-04T15:05:42Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
