- Set the noout flag
- ceph osd set noout
- Upgrade ceph-mon's, one at a time. For each do:
- Set puppet-env to a branch/tag containing nautilus-ceph
- Do a puppet-run
- Update the ceph-packages on a ceph-mon
- apt-get install ceph-mon (or; apt-get dist-upgrade)
- Restart the ceph-mon
- systemctl restart ceph-mon.target
- When all monitors are upgraded and restarted, verify that the command '
ceph mon dump | grep min_mon_release
' returns 'min_mon_release 14 (nautilus)
' - On each monitor-host: restart ceph-mgr
- systemctl restart ceph-mgr.target
- Upgrade ceph-osd hosts one at a time. For each do:
- Set puppet-env to a branch/tag containing nautilus-ceph
- Do a puppet-run
- Update the ceph-packages
- apt-get install ceph-osd (or; apt-get dist-upgrade)
- restart the ceph osd daemons
- systemctl restart ceph.target
- Verify that the osd-daemons still restart after a reboot (Point 7 in the official upgrade-guide (see ref. 1))
- Upgrade radosgw's
- Set puppet-env to a branch/tag containing nautilus-ceph
- Do a puppet-run
- Upgrade the ceph-packages
- apt-get install radosgw (or apt-get dist-upgrade)
- Restart the ceph daemons (systemctl restart ceph.target)
- Enable all nautilus functionality by disallowing any pre-nautilus OSD's (Make sure to upgrade all OSD's first, and verify that the correct versions are running using the command 'ceph versions')
ceph osd require-osd-release nautilus
- Clear the noout flag
- ceph osd unset noout
- Enable straw2
- ceph osd getcrushmap -o backup-crushmap
- ceph osd crush set-all-straw-buckets-to-straw2
- (To revert if problems: ceph osd setcrushmap -i backup-crushmap)
- Enable the new v2 network protocol:
ceph mon enable-msgr2
Update all osd's on-disk formats to match the new format. For each storage-node (one at a time) you should run the script "fix-Legacy-BlueStore-stats-reporting.sh".