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

相关文章

线上Java OOM问题定位与解决方案超详细解析

《线上JavaOOM问题定位与解决方案超详细解析》OOM是JVM抛出的错误,表示内存分配失败,:本文主要介绍线上JavaOOM问题定位与解决方案的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录一、OOM问题核心认知1.1 OOM定义与技术定位1.2 OOM常见类型及技术特征二、OOM问题定位工具

javacv依赖太大导致jar包也大的解决办法

《javacv依赖太大导致jar包也大的解决办法》随着项目的复杂度和依赖关系的增加,打包后的JAR包可能会变得很大,:本文主要介绍javacv依赖太大导致jar包也大的解决办法,文中通过代码介绍的... 目录前言1.检查依赖2.更改依赖3.检查副依赖总结 前言最近在写项目时,用到了Javacv里的获取视频

oracle 11g导入\导出(expdp impdp)之导入过程

《oracle11g导入导出(expdpimpdp)之导入过程》导出需使用SEC.DMP格式,无分号;建立expdir目录(E:/exp)并确保存在;导入在cmd下执行,需sys用户权限;若需修... 目录准备文件导入(impdp)1、建立directory2、导入语句 3、更改密码总结上一个环节,我们讲了

Vue3绑定props默认值问题

《Vue3绑定props默认值问题》使用Vue3的defineProps配合TypeScript的interface定义props类型,并通过withDefaults设置默认值,使组件能安全访问传入的... 目录前言步骤步骤1:使用 defineProps 定义 Props步骤2:设置默认值总结前言使用T

ShardingProxy读写分离之原理、配置与实践过程

《ShardingProxy读写分离之原理、配置与实践过程》ShardingProxy是ApacheShardingSphere的数据库中间件,通过三层架构实现读写分离,解决高并发场景下数据库性能瓶... 目录一、ShardingProxy技术定位与读写分离核心价值1.1 技术定位1.2 读写分离核心价值二

MyBatis-plus处理存储json数据过程

《MyBatis-plus处理存储json数据过程》文章介绍MyBatis-Plus3.4.21处理对象与集合的差异:对象可用内置Handler配合autoResultMap,集合需自定义处理器继承F... 目录1、如果是对象2、如果需要转换的是List集合总结对象和集合分两种情况处理,目前我用的MP的版本

RabbitMQ 延时队列插件安装与使用示例详解(基于 Delayed Message Plugin)

《RabbitMQ延时队列插件安装与使用示例详解(基于DelayedMessagePlugin)》本文详解RabbitMQ通过安装rabbitmq_delayed_message_exchan... 目录 一、什么是 RabbitMQ 延时队列? 二、安装前准备✅ RabbitMQ 环境要求 三、安装延时队

Web服务器-Nginx-高并发问题

《Web服务器-Nginx-高并发问题》Nginx通过事件驱动、I/O多路复用和异步非阻塞技术高效处理高并发,结合动静分离和限流策略,提升性能与稳定性... 目录前言一、架构1. 原生多进程架构2. 事件驱动模型3. IO多路复用4. 异步非阻塞 I/O5. Nginx高并发配置实战二、动静分离1. 职责2

解决升级JDK报错:module java.base does not“opens java.lang.reflect“to unnamed module问题

《解决升级JDK报错:modulejava.basedoesnot“opensjava.lang.reflect“tounnamedmodule问题》SpringBoot启动错误源于Jav... 目录问题描述原因分析解决方案总结问题描述启动sprintboot时报以下错误原因分析编程异js常是由Ja

Java Kafka消费者实现过程

《JavaKafka消费者实现过程》Kafka消费者通过KafkaConsumer类实现,核心机制包括偏移量管理、消费者组协调、批量拉取消息及多线程处理,手动提交offset确保数据可靠性,自动提交... 目录基础KafkaConsumer类分析关键代码与核心算法2.1 订阅与分区分配2.2 拉取消息2.3