Ceph可以在多种操作系统中适配安装,但因为系统环境的不同,管理Ceph的服务也有所不同。有时我们需要单独重启某个ceph服务,尤其在多osd运行在同一台机器的情况,本文主要描述在Ubuntu16.04 和 Ubuntu14.04 中的服务管理;
1,在Ubuntu14.04 下,Ceph默认使用upstart方式管理ceph服务;
1.1 系统开机启动服务解释:
在 /etc/init/ceph-osd-all-starter.conf 文件下,可以看到如下代码;
-
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
系统启动ceph-osd-all-starter 服务,检查
/var/lib/ceph/osd/目录下所有的osd节点数据,分别采用initctl emit ceph
-osd cluster
="$cluster" id
="$id" 提交事件信号,启动服务;
1.2 如果需要指定管理某个服务可以直接使用如下命令:
#initctl start ceph-osd id=0 #启动osd.0服务;
#initctl stop ceph-osd id=0 #停止osd.0服务;
#initctl restart ceph-osd id=0 #重启osd.0服务;
2,在Ubuntu16.04 下,Ceph默认使用systemd方式管理ceph服务;
2.1 系统开机启动服务解释:
在/etc/systemd/system/ceph-osd.target.wants 目录下,可以看到两个软连接ceph-osd@12.service ceph-osd@4.service 指向同一文件/lib/systemd/system/ceph-osd@.service
-
Environment=CLUSTER=ceph
-
ExecStart=/usr/bin/ceph-osd -f --cluster ${CLUSTER} --id %i --setuser ceph --setgroup ceph
-
ExecStartPre=/usr/lib/ceph/ceph-osd-prestart.sh --cluster ${CLUSTER} --id %i
2.2 指定管理某个服务使用如下命令:
#systemctl start ceph-osd@12.service
#systemctl stop ceph-osd@12.service
#systemctl restart ceph-osd@12.service
#systemctl status ceph-osd@12.service
阅读(2075) | 评论(0) | 转发(0) |