通过iscsi协议使用ceph rbd
2024-10-14 06:05:38
转自:http://blog.csdn.net/wytdahu/article/details/46545235
ceph很早就已经支持通过iscsi协议来使用rbd,这篇博文对此做下演示,并且使用OSD Server作为iscsi target端。
一、OSD Server side
1、安装支持rbd的TGT软件包
#echo "deb http://ceph.com/packages/ceph-extras/debian $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/ceph-extras.list
#apt-get install tgt
2、安装完成后确认tgt支持rbd
# tgtadm --lld iscsi --op show --mode system | grep rbd
rbd (bsoflags sync:direct)
3、创建一个image(示例中pool名称叫做iscsipool,image叫做iamge1)
#rbd create iscsipool/image1 --size --image-format
4、在tgt服务中注册刚才创建好的image,只需要将下面的内容添加到/etc/tgt/targets.conf 或者 etc/tgt/conf.d/ceph.conf中即可。
<target iqn.-.rbdstore.example.com:iscsi>
driver iscsi
bs-type rbd
backing-store iscsipool/image1 # Format is <iscsi-pool>/<iscsi-rbd-image>
initiator-address 10.10.2.49 #client address allowed to map the address
</target>
5、重启或者重载tgt服务
#service tgt reload
or
#service tgt restart
6、关闭rbd cache,否则可能导致数据丢失或者损坏
vim /etc/ceph/ceph.conf
[client]
rbd_cache = false
二、Client side
1、安装open-scsi
#apt-get install open-iscsi -y
2、启动open-scsi服务
# service open-iscsi restart
* Unmounting iscsi-backed filesystems [ OK ]
* Disconnecting iSCSI targets [ OK ]
* Stopping iSCSI initiator service [ OK ]
* Starting iSCSI initiator service iscsid [ OK ]
* Setting up iSCSI targets
iscsiadm: No records found
[ OK ]
* Mounting network filesystems
3、发现目标设备
# iscsiadm -m discovery -t st -p 10.10.2.50
10.10.2.50:, iqn.-.rbdstore.example.com:iscsi
4、挂载目标设备
# iscsiadm -m node --login
Logging in to [iface: default, target: iqn.-.rbdstore.example.com:iscsi, portal: 10.10.2.50,] (multiple)
Login to [iface: default, target: iqn.-.rbdstore.example.com:iscsi, portal: 10.10.2.50,] successful.
5、确认设备已经挂载(示例中sda就是iscsdi设备)
root@cetune1:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda : 10G disk
vda : 24G disk
?..vda1 : 190M part /boot
?..vda2 : 1K part
?..vda5 : .8G part
?..linux-swap (dm-) : .8G lvm [SWAP]
?..linux-root (dm-) : 20G lvm /
最新文章
- 用五分钟重温委托,匿名方法,Lambda,泛型委托,表达式树
- python 中文乱码问题
- [蓝牙] 3、 剖析BLE心率检测工程
- 从零开始,做一个NodeJS博客(一):Heroku上的最简NodeJS服务器
- linux常用命令:3文件搜索命令
- POJ 3254 Corn Fields(状态压缩DP)
- js将数字转换成大写的人民币表达式
- 流动python - 一个极简主义event制
- Hidden Markov Models(HMM) 初理解
- 到底什么是集群&;分布式
- Android查看联系人简单记录
- 推荐一款jQueryajax插件(Ajaxify jQuery )
- selenium+chromedriver刷点击量
- 雷林鹏分享:jQuery EasyUI 树形菜单 - 树形网格添加分页
- bzoj2456 mode (思路)
- Unity3D 学习 创建简单的按钮、相应事件
- linux read 系统调用剖析
- 高并发第十二弹:并发容器J.U.C -- Executor组件FutureTask、ForkJoin
- linux CentOS7 修改系统时间
- 在写一次epoll