We are currently using ES 1.3.0 and Couchbase on 2 servers with replication between them, however we have recently started using Kibana and so needed the latest version of ES for logging and statistics and errors from our service layer and sending alerts out with ElastAlert.
So one server 1 we have Couchbase and ElasticSearch 1.3.0 and on server 2 we have Couchbase, ElasticSearch 1.3.0 and ElasticSearch 2.1.1.
I started noticing some strange behaviour on the website that was using Couchbase and ES 1.3.0 for search, whereby you would get different results for the same search, or would get no results as you added additional search parameters (e.g. date), but then other times you would get results.
My first port of call was to check Couchbase and this was working correctly with the same documents being returned on both nodes. I then turned my attention to ElasticSearch and immediately noticed the number of documents on the index were different between the two nodes. A few queries later and I could see different results being returned for the same query. This explained the behaviour I was seeing on the site, as searches were obviously being performed against the different nodes at different times and consequently producing the inconsistent results I was seeing.
We had upgraded to java 8 on server 2 that was running the 2 versions of ElasticSearch, so I updated server 1 and restarted the services; this made no difference.
Next I stopped the ES 2.1.1 service and restarted the ES 1.3.0 service on both servers; this resolved the issue.
My question is, is there a way I can get two version of ES running harmoniously on the same server?