12 September 2017 Engineering

Live Upgrading Elastic Cloud Enterprise

By Nikolaj RichersIurii Tceretian

Welcome to the next step in our story of bringing you great new features! Where previous versions of Elastic Cloud Enterprise either required you to reinstall or included only new Elastic Stack packs, you can now live upgrade a production ECE installation to a new version with little or no downtime.

What is “little or no downtime?” If your ECE installation includes more than one proxy and if you are using a load balancer as recommended, there is no downtime. (Installations with a single proxy or no load balancer will experience a short outage as each proxy is upgraded.) 

You simply initiate the upgrade process and let ECE upgrade itself: ECE will replace the containers with its own software and dependencies one by one, on all hosts. Upgrading ECE does not touch any of the containers that run your Elasticsearch clusters and Kibana instances. Your applications continue to perform as expected and your users won’t know that you are replacing their spaceship piece by piece in mid-flight. We like to call this operational happiness.

There are two ideas behind our new live- upgrade functionality: to make the upgrade process safe and to make it simple. It’s all designed to just work.

  • To make upgrading safe, the entire process is designed to be failsafe. Containers get upgraded sequentially and the upgrade status of each container is tracked. The upgrade process also monitors that each new container is viable. If there is an issue with any part of the upgrade, the entire process is rolled back.
  • To make upgrading simple, a single command performs the upgrade across your entire installation. There’s no need to connect to individual hosts to upgrade them one by one and there are no additional manual steps to get your ECE installation going again after the upgrade. Best of all, there’s no need to stop ECE.

Before you start upgrading, we recommend that you check the prerequisites. There is some small print you should know around free disk space and things you shouldn’t be doing whilst you upgrade. (Don’t add or remove hosts during the upgrade process, for example.)

Ready? To upgrade your installation:

1. Download and run the latest installation script for Elastic Cloud Enterprise 1.0.2 with the upgrade action from a host that holds the director role:

bash <(curl -fsSL https://download.elastic.co/cloud/elastic-cloud-enterprise.sh) upgrade

You can follow along whilst each container for ECE is upgraded on the hosts that are part of your installation. After the upgrade process completes, add the Elastic Stack packs that ship with ECE 1.0.2 to get every last little bit of the new version.

To learn more about how the upgrade process works, see Upgrade Your Installation. And if you are curious to know what else is in version 1.0.2, take a look at our Release Notes.