Upgrading your Ceph cluster

One of the several reasons for the greatness of Ceph is that almost all the operations on a Ceph cluster can be performed online, which means that your Ceph cluster is in production and serving clients, and you can perform administrative tasks on the cluster without downtime. One of these operations is upgrading the Ceph cluster version.

Since the first chapter, we have been using the Jewel release of Ceph. We will be demonstrating upgrading the Ceph cluster version from Jewel to Kraken using the Ansible rolling_update.yml playbook located in the /usr/share/ceph-ansible/infrastructure-playbooks directory. The rolling_update.yml playbook fully automates the Ceph cluster upgrade process.

Ansible upgrades the Ceph nodes in the following order, one at a time:

  • Monitor nodes
  • OSD nodes
  • MDS nodes
  • Ceph RadosGW nodes
  • All other Ceph client nodes

During the upgrade, Ansible will also set the noout, noscrub, and nodeep-scrub flags on the cluster to prevent any unnecessary data movement on the cluster and overhead from scrubbing. Ansible also has built-in checks during the upgrade which will check cluster PG states and will not move forward if the cluster encounters an issue.

Once you upgrade a Ceph daemon, you cannot downgrade it. It's very much recommended to refer to the release-specific sections at http://docs.ceph.com/docs/master/release-notes/ to identify release-specific procedures for upgrading the Ceph cluster.
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset