You've successfully subscribed to Nuvotex Blog
Great! Next, complete checkout for full access to Nuvotex Blog
Welcome back! You've successfully signed in.
Success! Your account is fully activated, you now have access to all content.
Success! Your billing info is updated.
Billing info update failed.

Upgrading ceph - migrating from docker hub

Daniel Nachtrub
Daniel Nachtrub

Many vendors are moving container registries away from docker hub. One of them is ceph. This means: Recent container images are no longer published via docker hub and will prevent you from upgrading using cephadm if your installation is still pointing to docker hub.

Issue: failed to pull target image

Trying to upgrade you might notice that the ceph version you want to upgrade to is unavailable.

# trigger update
ceph orch upgrade start --ceph-version 15.2.8
Initiating upgrade to quay.io/ceph/ceph:v15.2.8

# check status
ceph orch upgrade status
{
    "target_image": "quay.io/repository/ceph/ceph:v15.2.15",
    "in_progress": true,
    "services_complete": [],
    "message": "Error: UPGRADE_FAILED_PULL: Upgrade: failed to pull target image"
}
upgrade failed

This occurs because the base image is no longer present on docker hub, as stated above.

Fix: set container image base

The solution is straight forward: just set the image base using ceph config and start the upgrade.

ceph config set mgr mgr/cephadm/container_image_base quay.io/ceph/ceph
set container_image_base

This will effectively apply quay.io/ceph/ceph as image base.

Upgrading can then be started easily using this command:

ceph orch upgrade start --ceph-version 15.2.15
start ceph upgrade

Daniel Nachtrub

Kind of likes computers. Linux foundation certified: LFCS / CKA / CKAD / CKS. Microsoft certified: Cybersecurity Architect Expert & Azure Solutions Architect Expert.