'ceph osd destroy' or 'ceph osd purge' (but after first confirming it is
safe to do so via the 'ceph osd safe-to-destroy' command).
+* Nautilus is not supported on any distros still running upstart so upstart
+ specific files and references have been removed.
+
>=13.1.0
--------
dh_installlogrotate -pceph-common
override_dh_installinit:
- # dh_installinit is only set up to handle one upstart script
- # per package, so do this ourselves
- install -d -m0755 debian/ceph-base/etc/init
- install -m0644 src/upstart/ceph-all.conf debian/ceph-base/etc/init
- install -d -m0755 debian/ceph-osd/etc/init
- install -m0644 src/upstart/ceph-osd*.conf debian/ceph-osd/etc/init
- install -d -m0755 debian/ceph-mon/etc/init
- install -m0644 src/upstart/ceph-mon*.conf debian/ceph-mon/etc/init
- install -d -m0755 debian/ceph-common/etc/init
- install -m0644 src/upstart/rbdmap.conf debian/ceph-common/etc/init
- install -d -m0755 debian/ceph-mds/etc/init
- install -m0644 src/upstart/ceph-mds*.conf debian/ceph-mds/etc/init
- install -d -m0755 debian/ceph-mgr/etc/init
- install -m0644 src/upstart/ceph-mgr*.conf debian/ceph-mgr/etc/init
- install -d -m0755 debian/radosgw/etc/init
- install -m0644 src/upstart/radosgw*.conf debian/radosgw/etc/init
- install -d -m0755 debian/rbd-mirror/etc/init
- install -m0644 src/upstart/ceph-rbd-mirror*.conf debian/rbd-mirror/etc/init
# install the systemd stuff manually since we have funny service names
install -d -m0755 debian/ceph-common/etc/default
install -m0644 etc/default/ceph debian/ceph-common/etc/default/
osd pool default pgp num = 333
osd crush chooseleaf type = 1
-#. Touch the ``done`` file.
-
- Mark that the monitor is created and ready to be started::
-
- sudo touch /var/lib/ceph/mon/ceph-node1/done
#. Start the monitor(s).
sudo systemctl start ceph-mon@node1
- For Ubuntu Trusty, use Upstart::
-
- sudo start ceph-mon id=node1 [cluster={cluster-name}]
-
- In this case, to allow the start of the daemon at each reboot you
- must create two empty files like this::
-
- sudo touch /var/lib/ceph/mon/{cluster-name}-{hostname}/upstart
-
- For example::
-
- sudo touch /var/lib/ceph/mon/ceph-node1/upstart
-
For older Debian/CentOS/RHEL, use sysvinit::
sudo /etc/init.d/ceph start mon.node1
-Running Ceph with Upstart
-=========================
-
-When deploying Ceph with ``ceph-deploy`` on Ubuntu Trusty, you may start and
-stop Ceph daemons on a :term:`Ceph Node` using the event-based `Upstart`_.
-Upstart does not require you to define daemon instances in the Ceph
-configuration file.
-
-To list the Ceph Upstart jobs and instances on a node, execute::
-
- sudo initctl list | grep ceph
-
-See `initctl`_ for additional details.
-
-
Starting all Daemons
--------------------
.. _Valgrind: http://www.valgrind.org/
-.. _Upstart: http://upstart.ubuntu.com/index.html
.. _initctl: http://manpages.ubuntu.com/manpages/raring/en/man8/initctl.8.html
+++ /dev/null
-description "Ceph"
-
-start on runlevel [2345] and static-network-up
-stop on runlevel [!2345]
+++ /dev/null
-description "Ceph MDS (start all instances)"
-
-start on starting ceph-mds-all
-
-task
-
-script
- set -e
- # TODO what's the valid charset for cluster names and mds ids?
- find -L /var/lib/ceph/mds/ -mindepth 1 -maxdepth 1 -regextype posix-egrep -regex '.*/[A-Za-z0-9]+-[A-Za-z0-9._-]+' -printf '%P\n' \
- | while read f; do
- if [ -e "/var/lib/ceph/mds/$f/done" ] && [ -e "/var/lib/ceph/mds/$f/upstart" ] && [ ! -e "/var/lib/ceph/mds/$f/sysvinit" ]; then
- cluster="${f%%-*}"
- id="${f#*-}"
- initctl emit ceph-mds cluster="$cluster" id="$id"
- fi
- done
-end script
+++ /dev/null
-description "Ceph MDS (all instances)"
-
-start on starting ceph-all
-stop on stopping ceph-all
+++ /dev/null
-description "Ceph MDS"
-
-start on ceph-mds
-stop on runlevel [!2345] or stopping ceph-mds-all
-
-respawn
-respawn limit 3 1800
-
-limit nofile 16384 16384
-
-pre-start script
- set -e
- test -x /usr/bin/ceph-mds || { stop; exit 0; }
- test -d "/var/lib/ceph/mds/${cluster:-ceph}-$id" || { stop; exit 0; }
-
- install -d -m0770 -o ceph -g ceph /var/run/ceph
-end script
-
-instance ${cluster:-ceph}/$id
-export cluster
-export id
-
-# this breaks oneiric
-#usage "cluster = name of cluster (defaults to 'ceph'); id = mds instance id"
-
-exec /usr/bin/ceph-mds --cluster="${cluster:-ceph}" -i "$id" -f --setuser ceph --setgroup ceph
+++ /dev/null
-description "Ceph Manager (start all instances)"
-
-start on starting ceph-mgr-all
-
-task
-
-script
- set -e
- find -L /var/lib/ceph/mgr/ -mindepth 1 -maxdepth 1 -regextype posix-egrep -regex '.*/[A-Za-z0-9]+-[A-Za-z0-9._-]+' -printf '%P\n' \
- | while read f; do
- if [ -e "/var/lib/ceph/mgr/$f/done" ] && [ -e "/var/lib/ceph/mgr/$f/upstart" ] && [ ! -e "/var/lib/ceph/mgr/$f/sysvinit" ]; then
- cluster="${f%%-*}"
- id="${f#*-}"
- initctl emit ceph-mgr cluster="$cluster" id="$id"
- fi
- done
-end script
+++ /dev/null
-description "Ceph Manager (all instances)"
-
-start on starting ceph-all
-stop on stopping ceph-all
+++ /dev/null
-description "Ceph Manager"
-
-start on ceph-mgr
-stop on runlevel [!2345] or stopping ceph-mgr-all
-
-respawn
-respawn limit 3 1800
-
-limit nofile 16384 16384
-
-pre-start script
- set -e
- test -x /usr/bin/ceph-mgr || { stop; exit 0; }
- test -d "/var/lib/ceph/mgr/${cluster:-ceph}-$id" || { stop; exit 0; }
-
- install -d -m0770 -o ceph -g ceph /var/run/ceph
-end script
-
-instance ${cluster:-ceph}/$id
-export cluster
-export id
-
-# this breaks oneiric
-#usage "cluster = name of cluster (defaults to 'ceph'); id = mgr instance id"
-
-exec /usr/bin/ceph-mgr --cluster="${cluster:-ceph}" -i "$id" -f --setuser ceph --setgroup ceph
+++ /dev/null
-description "Ceph MON (start all instances)"
-
-start on starting ceph-mon-all
-
-task
-
-script
- set -e
- # TODO what's the valid charset for cluster names and mon ids?
- find -L /var/lib/ceph/mon/ -mindepth 1 -maxdepth 1 -regextype posix-egrep -regex '.*/[A-Za-z0-9]+-[A-Za-z0-9._-]+' -printf '%P\n' \
- | while read f; do
- if [ -e "/var/lib/ceph/mon/$f/done" ] && [ -e "/var/lib/ceph/mon/$f/upstart" ] && [ ! -e "/var/lib/ceph/mon/$f/sysvinit" ]; then
- cluster="${f%%-*}"
- id="${f#*-}"
-
- initctl emit ceph-mon cluster="$cluster" id="$id"
- fi
- done
-end script
+++ /dev/null
-description "Ceph monitor (all instances)"
-
-start on starting ceph-all
-stop on runlevel [!2345] or stopping ceph-all
+++ /dev/null
-description "Ceph MON"
-
-start on ceph-mon
-stop on runlevel [!2345] or stopping ceph-mon-all
-
-respawn
-respawn limit 3 1800
-
-limit nofile 16384 16384
-
-pre-start script
- set -e
- test -x /usr/bin/ceph-mon || { stop; exit 0; }
- test -d "/var/lib/ceph/mon/${cluster:-ceph}-$id" || { stop; exit 0; }
-
- install -d -m0770 -o ceph -g ceph /var/run/ceph
-end script
-
-instance ${cluster:-ceph}/$id
-export cluster
-export id
-
-# this breaks oneiric
-#usage "cluster = name of cluster (defaults to 'ceph'); id = monitor instance id"
-
-exec /usr/bin/ceph-mon --cluster="${cluster:-ceph}" -i "$id" -f --setuser ceph --setgroup ceph
-
-post-stop script
- # Cleanup socket in case of segfault
- rm -f "/var/run/ceph/ceph-mon.$id.asok"
-end script
+++ /dev/null
-description "Ceph OSD (start all instances)"
-
-start on starting ceph-osd-all
-
-task
-
-script
- set -e
-
- # TODO what's the valid charset for cluster names and osd ids?
- find -L /var/lib/ceph/osd/ -mindepth 1 -maxdepth 1 -regextype posix-egrep -regex '.*/[A-Za-z0-9]+-[A-Za-z0-9._-]+' -printf '%P\n' \
- | while read f; do
- if [ -e "/var/lib/ceph/osd/$f/ready" ] && [ -e "/var/lib/ceph/osd/$f/upstart" ] && [ ! -e "/var/lib/ceph/osd/$f/sysvinit" ]; then
- cluster="${f%%-*}"
- id="${f#*-}"
- initctl emit ceph-osd cluster="$cluster" id="$id"
- fi
- done
-end script
+++ /dev/null
-description "Ceph OSD (all instances)"
-
-start on starting ceph-all
-stop on runlevel [!2345] or stopping ceph-all
+++ /dev/null
-description "Ceph OSD"
-
-start on ceph-osd
-stop on runlevel [!2345] or stopping ceph-osd-all
-
-respawn
-respawn limit 3 1800
-
-limit nofile 327680 327680
-
-pre-start script
- set -e
- test -x /usr/bin/ceph-osd || { stop; exit 0; }
- test -d "/var/lib/ceph/osd/${cluster:-ceph}-$id" || { stop; exit 0; }
-
- install -d -m0770 -o ceph -g ceph /var/run/ceph
-
- /usr/lib/ceph/ceph-osd-prestart.sh --cluster="${cluster:-ceph}" -i "$id"
-end script
-
-instance ${cluster:-ceph}/$id
-export cluster
-export id
-
-script
- test -f /etc/default/ceph && . /etc/default/ceph
- export TCMALLOC_MAX_TOTAL_THREAD_CACHE_BYTES
- exec /usr/bin/ceph-osd --cluster="${cluster:-ceph}" -i "$id" -f --setuser ceph --setgroup ceph
-end script
+++ /dev/null
-description "Ceph rbd-mirror (task to start all instances)"
-
-start on starting ceph-rbd-mirror-all
-
-task
-
-script
- set -e
- # TODO what's the valid charset for cluster names and daemon ids?
- find -L /var/lib/ceph/rbd-mirror/ -mindepth 1 -maxdepth 1 -regextype posix-egrep -regex '.*/[A-Za-z0-9]+-[A-Za-z0-9._-]+' -printf '%P\n' \
- | while read f; do
- if [ -e "/var/lib/ceph/rbd-mirror/$f/done" ]; then
- cluster="${f%%-*}"
- id="${f#*-}"
- initctl emit ceph-rbd-mirror cluster="$cluster" id="$id"
- fi
- done
-end script
+++ /dev/null
-description "Ceph rbd mirror (all instances)"
-
-start on starting ceph-all
-stop on runlevel [!2345] or stopping ceph-all
+++ /dev/null
-description "Ceph rbd mirror"
-
-start on ceph-rbd-mirror
-stop on runlevel [!2345] or stopping ceph-rbd-mirror-all
-
-respawn
-respawn limit 3 1800
-
-limit nofile 8096 65536
-
-pre-start script
- set -e
- test -x /usr/bin/rbd-mirror || { stop; exit 0; }
- test -d "/var/lib/ceph/rbd-mirror/${cluster:-ceph}-$id" || { stop; exit 0; }
-
- install -d -m0770 -o ceph -g ceph /var/run/ceph
-end script
-
-instance ${cluster:-ceph}/$id
-export cluster
-export id
-
-# this breaks oneiric
-#usage "cluster = name of cluster (defaults to 'ceph'); id = instance id"
-
-exec /usr/bin/rbd-mirror --cluster="${cluster:-ceph}" --id "$id" -f --setuser ceph --setgroup ceph
+++ /dev/null
-description "Ceph radosgw (task to start all instances)"
-
-start on starting radosgw-all
-
-task
-
-script
- set -e
- # TODO what's the valid charset for cluster names and daemon ids?
- find -L /var/lib/ceph/radosgw/ -mindepth 1 -maxdepth 1 -regextype posix-egrep -regex '.*/[A-Za-z0-9]+-[A-Za-z0-9._-]+' -printf '%P\n' \
- | while read f; do
- if [ -e "/var/lib/ceph/radosgw/$f/done" ]; then
- cluster="${f%%-*}"
- id="${f#*-}"
- initctl emit radosgw cluster="$cluster" id="$id"
- fi
- done
-end script
+++ /dev/null
-description "Ceph radosgw (all instances)"
-
-start on starting ceph-all or runlevel [2345]
-stop on runlevel [!2345] or stopping ceph-all
+++ /dev/null
-description "Ceph radosgw"
-
-start on radosgw
-stop on runlevel [!2345] or stopping radosgw-all
-
-respawn
-respawn limit 5 30
-
-limit nofile 8096 65536
-
-pre-start script
- set -e
- test -x /usr/bin/radosgw || { stop; exit 0; }
- test -d "/var/lib/ceph/radosgw/${cluster:-ceph}-$id" || { stop; exit 0; }
-
- install -d -m0770 -o ceph -g ceph /var/run/ceph
-end script
-
-instance ${cluster:-ceph}/$id
-export cluster
-export id
-
-# this breaks oneiric
-#usage "cluster = name of cluster (defaults to 'ceph'); id = mds instance id"
-
-exec /usr/bin/radosgw --cluster="${cluster:-ceph}" --id "$id" -f --setuser ceph --setgroup ceph
+++ /dev/null
-# rbdmap - Ceph RBD Mapping
-#
-# This script does not manage mount and unmount fs which depends on rbd device.
-# You should use _netdev option in fstab to mount and umount in the correct order.
-
-description "ceph rbd mapping"
-
-start on (started networking
- and remote-filesystems)
-stop on unmounted-remote-filesystems
-
-env RBDMAPFILE="/etc/ceph/rbdmap"
-
-pre-start script
- if [ ! -f "$RBDMAPFILE" ]; then
- exit 0
- fi
-
- while read DEV PARAMS; do
- case "$DEV" in
- ""|\#*)
- continue
- ;;
- */*)
- ;;
- *)
- DEV=rbd/$DEV
- ;;
- esac
- for PARAM in $(echo $PARAMS | tr ',' '\n'); do
- CMDPARAMS="$CMDPARAMS --$(echo $PARAM | tr '=' ' ')"
- done
- if [ ! -b /dev/rbd/$DEV ]; then
- echo "rbd map $DEV"
- rbd map $DEV $CMDPARAMS
- fi
- done < $RBDMAPFILE
-end script
-
-post-stop script
- if ls /dev/rbd[0-9]* >/dev/null 2>&1; then
- for DEV in /dev/rbd[0-9]*; do
- echo "rbd unmap $DEV"
- rbd unmap $DEV
- done
- fi
-end script
-