ceph-iscsi 手动安装过程中的一些问题记录以及解决办法

2024-09-04 19:12

本文主要是介绍ceph-iscsi 手动安装过程中的一些问题记录以及解决办法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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查看服务状态):
安装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服务启动成功后的样子:
在这里插入图片描述
由于本人水平有限,如有错误的地方欢迎指正.
与君共勉

这篇关于ceph-iscsi 手动安装过程中的一些问题记录以及解决办法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1136784

相关文章

Python获取中国节假日数据记录入JSON文件

《Python获取中国节假日数据记录入JSON文件》项目系统内置的日历应用为了提升用户体验,特别设置了在调休日期显示“休”的UI图标功能,那么问题是这些调休数据从哪里来呢?我尝试一种更为智能的方法:P... 目录节假日数据获取存入jsON文件节假日数据读取封装完整代码项目系统内置的日历应用为了提升用户体验,

将Mybatis升级为Mybatis-Plus的详细过程

《将Mybatis升级为Mybatis-Plus的详细过程》本文详细介绍了在若依管理系统(v3.8.8)中将MyBatis升级为MyBatis-Plus的过程,旨在提升开发效率,通过本文,开发者可实现... 目录说明流程增加依赖修改配置文件注释掉MyBATisConfig里面的Bean代码生成使用IDEA生

Go标准库常见错误分析和解决办法

《Go标准库常见错误分析和解决办法》Go语言的标准库为开发者提供了丰富且高效的工具,涵盖了从网络编程到文件操作等各个方面,然而,标准库虽好,使用不当却可能适得其反,正所谓工欲善其事,必先利其器,本文将... 目录1. 使用了错误的time.Duration2. time.After导致的内存泄漏3. jsO

springboot循环依赖问题案例代码及解决办法

《springboot循环依赖问题案例代码及解决办法》在SpringBoot中,如果两个或多个Bean之间存在循环依赖(即BeanA依赖BeanB,而BeanB又依赖BeanA),会导致Spring的... 目录1. 什么是循环依赖?2. 循环依赖的场景案例3. 解决循环依赖的常见方法方法 1:使用 @La

Linux系统中卸载与安装JDK的详细教程

《Linux系统中卸载与安装JDK的详细教程》本文详细介绍了如何在Linux系统中通过Xshell和Xftp工具连接与传输文件,然后进行JDK的安装与卸载,安装步骤包括连接Linux、传输JDK安装包... 目录1、卸载1.1 linux删除自带的JDK1.2 Linux上卸载自己安装的JDK2、安装2.1

Spring Boot 配置文件之类型、加载顺序与最佳实践记录

《SpringBoot配置文件之类型、加载顺序与最佳实践记录》SpringBoot的配置文件是灵活且强大的工具,通过合理的配置管理,可以让应用开发和部署更加高效,无论是简单的属性配置,还是复杂... 目录Spring Boot 配置文件详解一、Spring Boot 配置文件类型1.1 applicatio

C# WinForms存储过程操作数据库的实例讲解

《C#WinForms存储过程操作数据库的实例讲解》:本文主要介绍C#WinForms存储过程操作数据库的实例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、存储过程基础二、C# 调用流程1. 数据库连接配置2. 执行存储过程(增删改)3. 查询数据三、事务处

JSON Web Token在登陆中的使用过程

《JSONWebToken在登陆中的使用过程》:本文主要介绍JSONWebToken在登陆中的使用过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录JWT 介绍微服务架构中的 JWT 使用结合微服务网关的 JWT 验证1. 用户登录,生成 JWT2. 自定义过滤

Linux卸载自带jdk并安装新jdk版本的图文教程

《Linux卸载自带jdk并安装新jdk版本的图文教程》在Linux系统中,有时需要卸载预装的OpenJDK并安装特定版本的JDK,例如JDK1.8,所以本文给大家详细介绍了Linux卸载自带jdk并... 目录Ⅰ、卸载自带jdkⅡ、安装新版jdkⅠ、卸载自带jdk1、输入命令查看旧jdkrpm -qa

java中使用POI生成Excel并导出过程

《java中使用POI生成Excel并导出过程》:本文主要介绍java中使用POI生成Excel并导出过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录需求说明及实现方式需求完成通用代码版本1版本2结果展示type参数为atype参数为b总结注:本文章中代码均为