Use -L with chown and set crush map tunables when upgrading Ceph
Previously the chown command wasn't traversing symlinks, causing the new ownership to not be set for some needed files. This change also ensures the crush map tunables are set to the 'default' profile after the upgrade. Finally redirects the output of a pidof to /dev/null to avoid spurious logging. Change-Id: Id4865ffff207edfc727d729f9cc04e6e81ad19d8
This commit is contained in:
parent
22decf4276
commit
059307718f
@ -5,7 +5,7 @@ set -o pipefail
|
|||||||
echo INFO: starting $(basename "$0")
|
echo INFO: starting $(basename "$0")
|
||||||
|
|
||||||
# Exit if not running
|
# Exit if not running
|
||||||
if ! pidof ceph-mon; then
|
if ! pidof ceph-mon &> /dev/null; then
|
||||||
echo INFO: ceph-mon is not running, skipping
|
echo INFO: ceph-mon is not running, skipping
|
||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
@ -54,7 +54,7 @@ if [[ "$UPDATED_VERSION" =~ ^0\.94.* ]]; then
|
|||||||
elif [[ "$UPDATED_VERSION" =~ ^10\.2.* ]]; then
|
elif [[ "$UPDATED_VERSION" =~ ^10\.2.* ]]; then
|
||||||
# RPM could own some of these but we can't take risks on the pre-existing files
|
# RPM could own some of these but we can't take risks on the pre-existing files
|
||||||
for d in /var/lib/ceph/mon /var/log/ceph /var/run/ceph /etc/ceph; do
|
for d in /var/lib/ceph/mon /var/log/ceph /var/run/ceph /etc/ceph; do
|
||||||
chown -R ceph:ceph $d || echo WARNING: chown of $d failed
|
chown -L -R ceph:ceph $d || echo WARNING: chown of $d failed
|
||||||
done
|
done
|
||||||
|
|
||||||
# Replay udev events with newer rules
|
# Replay udev events with newer rules
|
||||||
@ -71,6 +71,10 @@ elif [[ "$UPDATED_VERSION" =~ ^10\.2.* ]]; then
|
|||||||
sleep 10;
|
sleep 10;
|
||||||
done"
|
done"
|
||||||
|
|
||||||
|
# if tunables become legacy, cluster status will be HEALTH_WARN causing
|
||||||
|
# upgrade to fail on following node
|
||||||
|
ceph osd crush tunables default
|
||||||
|
|
||||||
echo INFO: Ceph was upgraded to Jewel
|
echo INFO: Ceph was upgraded to Jewel
|
||||||
else
|
else
|
||||||
echo ERROR: Ceph was upgraded to an unknown release, daemon is stopped, need manual intervention
|
echo ERROR: Ceph was upgraded to an unknown release, daemon is stopped, need manual intervention
|
||||||
|
@ -18,7 +18,7 @@ set -eu
|
|||||||
echo INFO: starting $(basename "$0")
|
echo INFO: starting $(basename "$0")
|
||||||
|
|
||||||
# Exit if not running
|
# Exit if not running
|
||||||
if ! pidof ceph-osd; then
|
if ! pidof ceph-osd &> /dev/null; then
|
||||||
echo INFO: ceph-osd is not running, skipping
|
echo INFO: ceph-osd is not running, skipping
|
||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
@ -63,7 +63,7 @@ if [[ "$UPDATED_VERSION" =~ ^0\.94.* ]]; then
|
|||||||
elif [[ "$UPDATED_VERSION" =~ ^10\.2.* ]]; then
|
elif [[ "$UPDATED_VERSION" =~ ^10\.2.* ]]; then
|
||||||
# RPM could own some of these but we can't take risks on the pre-existing files
|
# RPM could own some of these but we can't take risks on the pre-existing files
|
||||||
for d in /var/lib/ceph/osd /var/log/ceph /var/run/ceph /etc/ceph; do
|
for d in /var/lib/ceph/osd /var/log/ceph /var/run/ceph /etc/ceph; do
|
||||||
chown -R ceph:ceph $d || echo WARNING: chown of $d failed
|
chown -L -R ceph:ceph $d || echo WARNING: chown of $d failed
|
||||||
done
|
done
|
||||||
|
|
||||||
# Replay udev events with newer rules
|
# Replay udev events with newer rules
|
||||||
|
Loading…
Reference in New Issue
Block a user