Cloud 无法启动ceph-mon守护进程
我已经构建了ceph源代码,并使用以下命令进行安装:Cloud 无法启动ceph-mon守护进程,cloud,storage,ceph,Cloud,Storage,Ceph,我已经构建了ceph源代码,并使用以下命令进行安装: apt-get install a series of dependency packages ./autogen.sh ./configure make make install 所有这些过程都进行得很顺利。当我打字时: which ceph 控制台显示: /usr/local/bin/ceph 所以我想我已经成功安装了ceph。 但当我尝试启动ceph mon守护进程时,控制台会告诉我: start: unknown job: ce
apt-get install a series of dependency packages
./autogen.sh
./configure
make
make install
所有这些过程都进行得很顺利。当我打字时:
which ceph
控制台显示:
/usr/local/bin/ceph
所以我想我已经成功安装了ceph。
但当我尝试启动ceph mon守护进程时,控制台会告诉我:
start: unknown job: ceph-mon
我已经通过键入以下内容查看了我的服务列表:
initctl list | grep ceph
输出为空
有人能告诉我为什么吗?你可以试着触摸文件
sysvinit
。例如,假设监视节点的主机名为node1
,集群名称默认为,在启动监视进程之前,使用此命令touch/var/lib/ceph/mon/ceph-node1/sysvinit
。这解决了我在获取未知错误时遇到的问题。Ceph的make install目标没有安装。最好的选择是安装带有apt get install ceph的软件包。如果您需要从修改过的源运行,您可以使用ceph mon-i a,假设监视器数据已经存在。如果您可以运行cepn mon-i
,我可以通过以下方法解决此问题:
(我和你的情况一样,我基于firefly&我从cource代码编译并进行安装。)
您是否遵循了此处的安装说明?在我的例子中,使用make进行手动部署,它创建并运行mon,但“ceph osd tree”仍然不会返回任何输出!在这一步结束时,我希望硬盘上有cephid(lsblk的输出会显示出来),但我没有!有什么想法吗?
#!/bin/bash
fsid=`uuidgen`
host="your-mon-host"
ipaddr="your-mon-ip-addr"
echo "[global]" > ./ceph.sample.conf
echo "fsid = ${fsid}" >> ./ceph.sample.conf
echo "mon initial members=${host}" >> ./ceph.sample.conf
echo "mon host = ${ipaddr}" >> ./ceph.sample.conf
cat ./popular_settings.txt >> ./ceph.sample.conf
cp ./ceph.sample.conf /etc/ceph/ceph.conf
rm -rf /var/lib/ceph/mon/ceph-${host}/done
sudo ceph-authtool --create-keyring /var/lib/ceph/tmp/ceph-${host}.mon.keyring --gen-key -n mon. --cap mon 'allow *'
sudo ceph-authtool --create-keyring /etc/ceph/ceph.client.admin.keyring --gen-key -n client.admin --set-uid=0 --cap mon 'allow *' --cap osd 'a llow *' --cap mds 'allow'
sudo chmod +r /var/lib/ceph/tmp/ceph-${host}.mon.keyring
sudo chmod +r /etc/ceph/ceph.client.admin.keyring
sudo ceph-authtool /var/lib/ceph/tmp/ceph-${host}.mon.keyring --import-keyring /etc/ceph/ceph.client.admin.keyring
monmaptool --create --add ${host} ${ipaddr} --fsid ${fsid} /tmp/monmap --clobber
#rm -rf /var/lib/ceph/mon/ceph-${host}
sudo ceph-mon --mkfs -i ${host} --monmap /tmp/monmap --keyring /var/lib/ceph/tmp/ceph-${host}.mon.keyring
touch /var/lib/ceph/mon/ceph-${host}/done
touch /var/lib/ceph/mon/ceph-${host}/upstart
ps aux | grep "ceph-mon" #there should be no ceph-mon
ceph-mon -i ${host}
ps aux | grep "ceph-mon" #there we've got a ceph-mon running
ceph osd tree