# How to upgrade Elasticsearch version

**URL:** <https://discuss.elastic.co/t/how-to-upgrade-elasticsearch-version/41212>\
**Category:** Elasticsearch\
**Created:** [February 8, 2016, 6:04pm UTC](https://discuss.elastic.co/t/how-to-upgrade-elasticsearch-version/41212 "2016-02-08T18:04:19Z")\
**Posts on this page:** 17\
**Page:** 1

<div class="post-metadata">

**Author:** ![abinay](https://avatars.discourse-cdn.com/v4/letter/a/838e76/32.png) [@abinay](https://discuss.elastic.co/u/abinay)\
**Post date:** [February 8, 2016, 6:04pm UTC](https://discuss.elastic.co/t/how-to-upgrade-elasticsearch-version/41212/1 "2016-02-08T18:04:19Z")

</div>

Hii I am using ELK Stack . Currently I am having a single node in the Elasticsearch cluster . Using curl -XGET 'localhost:9200' i get the version as '2.1.0' . I want to add another node to the cluster but he version of the new node with Elasticsearch is '2.2.0' . When adding a node it is required that the version of Elasticsearch remains same in all the nodes, right ? I have not added the new node yet . I have just installed the Elasticsearch in new node . So how can I upgrade the origianl node to version 2.2.0 or downgrade the new node to 2.1.0 . Please speicify the required commands . Is there any other way to tackle this situation ?

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [February 8, 2016, 6:35pm UTC](https://discuss.elastic.co/t/how-to-upgrade-elasticsearch-version/41212/2 "2016-02-08T18:35:00Z")

</div>

You can mix nodes 2.2 and 2.1.

You can not downgrade a node.

---

<div class="post-metadata">

**Author:** ![abinay](https://avatars.discourse-cdn.com/v4/letter/a/838e76/32.png) [@abinay](https://discuss.elastic.co/u/abinay)\
**Post date:** [February 8, 2016, 6:36pm UTC](https://discuss.elastic.co/t/how-to-upgrade-elasticsearch-version/41212/3 "2016-02-08T18:36:16Z")

</div>

@dadoonet Thanx !!! So what governs the logic that whether two versions can be mixed or not ?

---

<div class="post-metadata">

**Author:** ![abinay](https://avatars.discourse-cdn.com/v4/letter/a/838e76/32.png) [@abinay](https://discuss.elastic.co/u/abinay)\
**Post date:** [February 8, 2016, 7:05pm UTC](https://discuss.elastic.co/t/how-to-upgrade-elasticsearch-version/41212/4 "2016-02-08T19:05:42Z")

</div>

@dadoonet I cannot see the added node when I do curl -XGET '[http://localhost:9200/\_nodes](http://localhost:9200/_nodes)' . Any help ?? Further elasticsearch on the new node is not listening on port 9200 . Why this is so ?

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [February 8, 2016, 7:03pm UTC](https://discuss.elastic.co/t/how-to-upgrade-elasticsearch-version/41212/5 "2016-02-08T19:03:34Z")

</div>

Major versions can not be mixed. So you can't have 1.x and 2.x running.

Note that's a temporary state and you should definitely upgrade the full cluster

David Pilato- Developer | Evangelist  
@dadoonet|@elasticfr

---

<div class="post-metadata">

**Author:** ![abinay](https://avatars.discourse-cdn.com/v4/letter/a/838e76/32.png) [@abinay](https://discuss.elastic.co/u/abinay)\
**Post date:** [February 8, 2016, 7:09pm UTC](https://discuss.elastic.co/t/how-to-upgrade-elasticsearch-version/41212/6 "2016-02-08T19:09:39Z")

</div>

@dadoonet I cannot see the new node in the cluster . Why so ???

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [February 8, 2016, 7:18pm UTC](https://discuss.elastic.co/t/how-to-upgrade-elasticsearch-version/41212/7 "2016-02-08T19:18:19Z")

</div>

Well. What do you see in logs on both nodes?  
Did you define network.host?

David Pilato- Developer | Evangelist  
@dadoonet|@elasticfr

---

<div class="post-metadata">

**Author:** ![abinay](https://avatars.discourse-cdn.com/v4/letter/a/838e76/32.png) [@abinay](https://discuss.elastic.co/u/abinay)\
**Post date:** [February 8, 2016, 7:28pm UTC](https://discuss.elastic.co/t/how-to-upgrade-elasticsearch-version/41212/8 "2016-02-08T19:28:03Z")

</div>

@dadoonet You are talking abou network.host on new node or existing node ? What should be the values of network.host in both the nodes - new node and existing node ??

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [February 8, 2016, 8:42pm UTC](https://discuss.elastic.co/t/how-to-upgrade-elasticsearch-version/41212/9 "2016-02-08T20:42:38Z")

</div>

Have a look at the docs but I'd set it to the network card IP address.

---

<div class="post-metadata">

**Author:** ![abinay](https://avatars.discourse-cdn.com/v4/letter/a/838e76/32.png) [@abinay](https://discuss.elastic.co/u/abinay)\
**Post date:** [February 9, 2016, 7:45am UTC](https://discuss.elastic.co/t/how-to-upgrade-elasticsearch-version/41212/11 "2016-02-09T07:45:44Z")

</div>

@dadoonet hey this is my elasticsearch .yml file of already existing node. Can you please specify what values I need to insert in the following keys . Docs are pretty confusing , I cannot understand where the changes are to be made - in already existing elasticsearch's configuration file or in the new node's configuration file-  
These are the contents of already existin node -

```
cluster.name: limetrayELK
node.name: node-1
discovery.zen.ping.unicast.hosts: ['ip_of_newly_added_node']

```

These are the contents of the newly created node -

```
cluster.name: limetrayELK
node.name: node-2
network.host: localhost

```

Please specify the values required in the corresponding keys and where I am wrong ???

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [February 9, 2016, 8:02am UTC](https://discuss.elastic.co/t/how-to-upgrade-elasticsearch-version/41212/12 "2016-02-09T08:02:25Z")

</div>

Did you search in the documentation?

Searching for `network host` in our guide leads you to [https://www.elastic.co/guide/en/elasticsearch/reference/2.2/modules-network.html#network-interface-values](https://www.elastic.co/guide/en/elasticsearch/reference/2.2/modules-network.html#network-interface-values) which is explicit. Anything you don't understand in this doc?

---

<div class="post-metadata">

**Author:** ![abinay](https://avatars.discourse-cdn.com/v4/letter/a/838e76/32.png) [@abinay](https://discuss.elastic.co/u/abinay)\
**Post date:** [February 9, 2016, 11:47am UTC](https://discuss.elastic.co/t/how-to-upgrade-elasticsearch-version/41212/13 "2016-02-09T11:47:20Z")

</div>

@dadoonet What i understood is that there should be no changes in the already installed node's config file and changes are to be made in the config file of newly added node which should be as below -

network.host: ["ip\_address\_of\_the\_already\_existing\_node"]  
discovery.zen.ping.unicast.hosts: ["ip\_address\_of\_the\_already\_existing\_node"]  
Am I right?

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [February 9, 2016, 5:07pm UTC](https://discuss.elastic.co/t/how-to-upgrade-elasticsearch-version/41212/14 "2016-02-09T17:07:35Z")

</div>

It won't work. `node-1` has to be updated to accept as well external requests.

Node 1 has to be:

```auto
network.host: ip_node1
discovery.zen.ping.unicast.hosts: ["ip_node1","ip_node2"]

```

Node 2:

```auto
network.host: ip_node2
discovery.zen.ping.unicast.hosts: ["ip_node1","ip_node2"]

```

---

<div class="post-metadata">

**Author:** ![abinay](https://avatars.discourse-cdn.com/v4/letter/a/838e76/32.png) [@abinay](https://discuss.elastic.co/u/abinay)\
**Post date:** [February 13, 2016, 5:41am UTC](https://discuss.elastic.co/t/how-to-upgrade-elasticsearch-version/41212/15 "2016-02-13T05:41:02Z")

</div>

@dadoonet I did ur trick and my earlier node has come down too help me !!!!! my logs are getting lost

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [February 13, 2016, 6:51am UTC](https://discuss.elastic.co/t/how-to-upgrade-elasticsearch-version/41212/16 "2016-02-13T06:51:07Z")

</div>

When you restart, what are the logs?

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [February 13, 2016, 6:52am UTC](https://discuss.elastic.co/t/how-to-upgrade-elasticsearch-version/41212/17 "2016-02-13T06:52:24Z")

</div>

If you have no logs at all, may be your config file is incorrect. Send it as a [gist.github.com](http://gist.github.com)

---

<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:16pm UTC](https://discuss.elastic.co/t/how-to-upgrade-elasticsearch-version/41212/18 "2017-07-05T23:16:39Z")

</div>


