# Upgrading ES from 2.1.1 to 2.2.0 - no known master node

**URL:** <https://discuss.elastic.co/t/upgrading-es-from-2-1-1-to-2-2-0-no-known-master-node/40797>\
**Category:** Elasticsearch\
**Created:** [February 2, 2016, 11:15pm UTC](https://discuss.elastic.co/t/upgrading-es-from-2-1-1-to-2-2-0-no-known-master-node/40797 "2016-02-02T23:15:42Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![MikeM](https://avatars.discourse-cdn.com/v4/letter/m/41988e/32.png) [@MikeM](https://discuss.elastic.co/u/MikeM)\
**Post date:** [February 2, 2016, 11:15pm UTC](https://discuss.elastic.co/t/upgrading-es-from-2-1-1-to-2-2-0-no-known-master-node/40797/1 "2016-02-02T23:15:42Z")

</div>

I'm running a 3 node cluster with version 2.1.1 running on Windows 2012 R2. Tried to install 2.2.0 which was released today. I'm following the instructions here: [https://www.elastic.co/guide/en/elasticsearch/reference/2.2/rolling-upgrades.html](https://www.elastic.co/guide/en/elasticsearch/reference/2.2/rolling-upgrades.html)

Basically, I disable shard allocation, sync flush, then stop the service on 1 node. I use .\service.bat to create a new service for the 2.2.0 directory and start the service. The node never joins the cluster, and gives alot of the following in the logs:

```auto
[2016-02-02 13:54:35,311][DEBUG][action.admin.indices.create] [node1] no known master node, scheduling a retry
[2016-02-02 13:55:35,323][DEBUG][action.admin.indices.create] [node1] timed out while retrying [indices:admin/create] after failure (timeout [1m])
[2016-02-02 13:55:35,323][INFO][rest.suppressed] /_bulk Params: {}
ClusterBlockException[blocked by: [SERVICE_UNAVAILABLE/1/state not recovered / initialized];[SERVICE_UNAVAILABLE/2/no master];]
	at org.elasticsearch.cluster.block.ClusterBlocks.globalBlockedException(ClusterBlocks.java:154)
	at org.elasticsearch.cluster.block.ClusterBlocks.globalBlockedRaiseException(ClusterBlocks.java:144)
	at org.elasticsearch.action.bulk.TransportBulkAction.executeBulk(TransportBulkAction.java:212)
	at org.elasticsearch.action.bulk.TransportBulkAction.access$000(TransportBulkAction.java:71)
	at org.elasticsearch.action.bulk.TransportBulkAction$1.onFailure(TransportBulkAction.java:150)
	at org.elasticsearch.action.support.ThreadedActionListener$2.doRun(ThreadedActionListener.java:104)
	at org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:37)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)

```

My elasticsearch.yml file looks like this:

```auto
#
cluster.name: cluster-01
#
node.name: "node1"
#
path.data: c:\path
#
path.logs: c:\path
#
network.host: <Network IP>
#
gateway.recover_after_nodes: 2
#
discovery.zen.ping.unicast.hosts: ["node2", "node3"]
#
discovery.zen.minimum_master_nodes: 2
#
watcher.actions.email.service.account:
  blah
#

```

---

<div class="post-metadata">

**Author:** ![MikeM](https://avatars.discourse-cdn.com/v4/letter/m/41988e/32.png) [@MikeM](https://discuss.elastic.co/u/MikeM)\
**Post date:** [March 3, 2016, 9:11pm UTC](https://discuss.elastic.co/t/upgrading-es-from-2-1-1-to-2-2-0-no-known-master-node/40797/2 "2016-03-03T21:11:05Z")

</div>

I should post my solution for anyone with the same issue. I had to install the ES license on the node before it would join the cluster:

```auto
.\plugin.bat install license

```

---

<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:11pm UTC](https://discuss.elastic.co/t/upgrading-es-from-2-1-1-to-2-2-0-no-known-master-node/40797/3 "2017-07-05T23:11:26Z")

</div>


