一、ERROR: osd init failed: (36) File name too long
二、 NeedDiskError: Must supply disk/path argument
三、RuntimeError: Failed to connect any mon
四、报错from ceph_deploy.cli import main
一、ERROR: osd init failed: (36) File name too long
出现上述问题的一种原因是:挂在目录的文件系统类型是ext4,解决办法有两种
1)修改/etc/ceph/ceph.conf文件,在文件中添加如下配置
osd max object name len = 256
osd max object namespace len = 64
2)将文件系统类型转化成xfs类型
二、 NeedDiskError: Must supply disk/path argument
解决:指定主机名
ceph-deploy osd prepare k8s01:/data/ceph/osd
ceph-deploy osd activate k8s01:/data/ceph/osd/
三、RuntimeError: Failed to connect any mon
解决办法: 将/etc/ceph目录下的ceph.client.admin.keyring 文件拷贝到所有节点的/var/lib/ceph/mon/ceph-$hostname目录下
ceph auth get-or-create client.admin mds 'allow' osd 'allow *' mon 'allow *' -o /etc/ceph/ceph.client.admin.keyring
cp ceph.client.admin.keyring /var/lib/ceph/mon/ceph-k8s01/keyring
再次执行ceph-deploy --overwrite-conf mon create-initial
四、报错from ceph_deploy.cli import main
[root@k8s-master ceph]# ceph-deploy new k8s-master
Traceback (most recent call last):
File "/usr/bin/ceph-deploy", line 18, in <module>
from ceph_deploy.cli import main
File "/usr/lib/python2.7/site-packages/ceph_deploy/cli.py", line 1, in <module>
import pkg_resources
ImportError: No module named pkg_resources
解决方法:
yum -y install python-setuptools