ceph-iscsi 手动安装教程
安装教程,建议直接看官方文档,猛戳传送门。官方教程是英文版的(不知道有没有中文版),都是一些基础英语,问题不大,实在不行找个翻译软件帮帮忙,哈哈哈。
多啰嗦一点,官方教程里面全部是通过git 一个一个安装的,比较麻烦。可以使用如下命令,比较省事(以ubuntu系统作为示例):
`sudo apt update // 更新apt 数据库
sudo apt -y install targetcli-fb // 安装targetcli-fb`
以上命令,会安装RTSLIB-FB,CONFIGSHELL-FB,TARGETCLI-FB
还有一点需要注意,安装教程安装tcmu-runner,也出错了。报‘TODO: distro not supported for now!’错误,说我使用的发行分支(ubuntu 20.04)不被支持。没办法,人家不支持,不能使用源码安装了。直接使用apt安装,命令如下:
sudo apt-get -y install tcmu-runner
安装ceph-iscsi
关键的来了,安装ceph-iscsi 这个没有其他办法(或者是我没有找到),只有按照教程来。操作步骤如下:
git clone https://github.com/ceph/ceph-iscsi.git
cd ceph-iscsi
python setup.py install --install-scripts=/usr/bin
cp usr/lib/systemd/system/rbd-target-gw.service /lib/systemd/system
cp usr/lib/systemd/system/rbd-target-api.service /lib/systemd/system
上面这些命令,都很顺利。但是启动的时候启动出了问题,也就是执行 systemctl start rbd-target-gw
这句命令的时候。错误如下(使用systemctl status rbd-target-gw
查看服务状态):
也在网上查了下 “Failed to start Setup system to export rbd image through LIO”错误。相关帖子到是有,不过都是时间久远且没有结贴的(emmmmm).
那就自己来吧。任何问题都会留下蛛丝马迹,我们从日志开始吧。journalctl是个好工具,我挺喜欢的。排查错误原因示例如下(日志太多了,使用这句 journalctl |grep rbd-target-gw 过滤下关键日志
):
找到rbd-target-gw服务启动失败的原因了,缺失了python 库flask。原因找了,那么就解决它。执行如下命令:
先安装pip,命令:apt install python3-pip
(如果已经有了,跳过这步):
pip安装好了后,接着安装flask库(命令:pip install flask
):
安装完毕后,仔细检查下面这些库是否已经安装:
这些库都是必须安装的,否则rbd-target-gw服务会有问题。(例如:flask库没有安装,rbd-target-gw服务无法启动)。
安装完所有的依赖库后,重启下操作系统(为什么要重启,我还不知道原因。不重启的话,rbd-target-gw也无法正常启动),一切就正常了。
下面是rbd-target-gw服务启动成功后的样子:
由于本人水平有限,如有错误的地方欢迎指正.
与君共勉