# Change Heap\_size on ElasticSearch

**URL:** <https://discuss.elastic.co/t/change-heap-size-on-elasticsearch/37682>\
**Category:** Elasticsearch\
**Created:** [December 21, 2015, 10:43am UTC](https://discuss.elastic.co/t/change-heap-size-on-elasticsearch/37682 "2015-12-21T10:43:28Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![tatdat](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/tatdat/32/113160_2.png) [@tatdat](https://discuss.elastic.co/u/tatdat)\
**Post date:** [December 21, 2015, 10:43am UTC](https://discuss.elastic.co/t/change-heap-size-on-elasticsearch/37682/1 "2015-12-21T10:43:28Z")

</div>

Hi, i Have three node. and using Java on Centos 6.2

> java version "1.8.0\_66"  
> Java(TM) SE Runtime Environment (build 1.8.0\_66-b17)  
> Java HotSpot(TM) 64-Bit Server VM (build 25.66-b17, mixed mode)

I set Heap\_size on three node to 8Gb ( Machine have 16Gb RAM) with Command

> export ES\_HEAP\_SIZE=10g

I restart all Node but when i check, Heap size is 1GB ???

[http://www.upsieutoc.com/images/2015/12/21/heap-size.png](http://www.upsieutoc.com/images/2015/12/21/heap-size.png)

[http://www.upsieutoc.com/images/2015/12/21/heap-size2.png](http://www.upsieutoc.com/images/2015/12/21/heap-size2.png)

i try to use command

> bin/elasticsearch -Xmx8g -Xms8g

and get error

> ERROR: Parameter [-Xmx8g]does not start with --

---

<div class="post-metadata">

**Author:** ![yodog](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/yodog/32/4822_2.png) [@yodog](https://discuss.elastic.co/u/yodog)\
**Post date:** [December 21, 2015, 12:07pm UTC](https://discuss.elastic.co/t/change-heap-size-on-elasticsearch/37682/2 "2015-12-21T12:07:23Z")

</div>

see if this can help you:

on Debian, you can change this setting here

`/etc/default/elasticsearch`

```
# Heap size defaults to 256m min, 1g max
# Set ES_HEAP_SIZE to 50% of available RAM, but no more than 31g
ES_HEAP_SIZE=10g

```

and then restart the service

---

<div class="post-metadata">

**Author:** ![tatdat](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/tatdat/32/113160_2.png) [@tatdat](https://discuss.elastic.co/u/tatdat)\
**Post date:** [December 21, 2015, 1:29pm UTC](https://discuss.elastic.co/t/change-heap-size-on-elasticsearch/37682/3 "2015-12-21T13:29:48Z")

</div>

Thank for suggest 😃  
I found config in this

> /etc/sysconfig/elasticsearch

And change heap\_size success !

---

<div class="post-metadata">

**Author:** ![arianayay](https://avatars.discourse-cdn.com/v4/letter/a/f4b2a3/32.png) [@arianayay](https://discuss.elastic.co/u/arianayay)\
**Post date:** [March 15, 2016, 4:01am UTC](https://discuss.elastic.co/t/change-heap-size-on-elasticsearch/37682/4 "2016-03-15T04:01:56Z")

</div>

what syntax is used o control the maximum and minimum size of the heap on the .yml file?

---

<div class="post-metadata">

**Author:** ![ddorian43](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/ddorian43/32/36093_2.png) [@ddorian43](https://discuss.elastic.co/u/ddorian43)\
**Post date:** [March 15, 2016, 11:04am UTC](https://discuss.elastic.co/t/change-heap-size-on-elasticsearch/37682/5 "2016-03-15T11:04:34Z")

</div>

@arianayay

The .yml is read after elasticsearch is started, when it is too late to specify a heap (since the process has already started), that's why you can't configure it there

---

<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:** [July 5, 2017, 11:08pm UTC](https://discuss.elastic.co/t/change-heap-size-on-elasticsearch/37682/6 "2017-07-05T23:08:20Z")

</div>


