Upgrading Ceph

A Ceph upgrade is triggered by modifying the software sources on a unit’s underlying machine. This is done on a per-application basis (i.e. can affect multiple units) by changing the value of the source configuration option.

Depending on the current state of the cluster and the goal state of the upgrade, a Ceph upgrade may occur before or after a series upgrade. Successive Ceph upgrades may also be necessary to reach the goal state.

In terms of the upgrade order, begin with ceph-mon, after which the remaining services can be upgraded in any order.

Here we are upgrading the entire Monitor cluster to UCA bionic-rocky:

juju config ceph-mon source=cloud:bionic-rocky

The ceph-osd and ceph-mon charms are able to maintain availability of their respective services during a Ceph upgrade. This is not true of all the Ceph charms that may be associated with multiple application units, such as ceph-fs.

Verify the upgrade by checking for errors in juju status output and from any Ceph monitoring service that may be in use.

Hi Peter,

Wonder if we can add a more complete set of commands for upgrading ceph; this doc is currently not the most clear that the only commands required to perform an upgrade are these:

    juju refresh ceph-mon
    juju refresh ceph-fs
    juju refresh ceph-osd
    juju config ceph-mon source=cloud:focal-yoga
    juju config ceph-fs source=cloud:focal-yoga
    juju config ceph-osd source=cloud:focal-yoga

Would also be nice to include the following for monitoring the cluster while the upgrade is taking place; Juju may not immediately reflect that the upgrade has been started, juju status isn’t necessarily the best tool for making sure the upgrade is occurring as intended.

    ceph status
    ceph versions