1. 程式人生 > 實用技巧 >Ceph塊裝置掛載使用詳解

Ceph塊裝置掛載使用詳解

塊裝置簡介

Ceph 塊裝置把一個裝置映像條帶化到叢集內的多個物件,其中各物件對映到一個歸置組並分佈出去,這些歸置組會分散到整個叢集的 ceph-osd 守護程序上。條帶化會使 RBD 塊裝置比單臺伺服器執行的更好!

精簡的、可快照的 Ceph 塊裝置對虛擬化和雲端計算很有吸引力。
在虛擬機器場景中,人們一般會用 Qemu/KVM 中的 rbd 網路儲存驅動部署 Ceph 塊裝置,其中宿主機用 librbd 向客戶機提供塊裝置服務;很多雲計算堆疊用 libvirt 和管理程式整合。
你可以用精簡的 Ceph 塊裝置搭配 Qemu 和 libvirt 來支援 OpenStack 和 CloudStack ,一起構成完整的方案。

安裝客戶端

# apt-get -y install ceph-common

準備叢集配置檔案和keyring訪問憑證

/etc/ceph/ceph.client.admin.keyring
/etc/ceph/ceph.conf

建立塊裝置

# rbd create --pool rbd --image test --image-format 2 --image-feature layering --size 2G

# rbd ls rbd
test

# rbd info rbd/test
rbd image 'test':
        size 2048 MB in 512 objects
        order 22 (4096 kB objects)
        block_name_prefix: rbd_data.241ad42ae8944a
        format: 2
        features: layering
        flags: 

對映塊裝置

# rbd map rbd/test
/dev/rbd0

# rbd showmapped
id pool image snap device    
0  rbd  test  -    /dev/rbd0 

格式化

# mkfs.ext4 -q /dev/rbd0

掛載使用

# mkdir -p /mnt/ceph-block-device
# mount /dev/rbd0 /mnt/ceph-block-device

檢視掛載

# lsblk
NAME   MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
fd0      2:0    1   4K  0 disk 
sda      8:0    0  50G  0 disk 
├─sda1   8:1    0  46G  0 part /
├─sda2   8:2    0   1K  0 part 
└─sda5   8:5    0   4G  0 part [SWAP]
sdb      8:16   0   8G  0 disk 
rbd0   254:0    0   2G  0 disk /mnt/ceph-block-device

編輯/etc/ceph/rbdmap檔案,設定自動map

rbd/test id=admin,keyring=/etc/ceph/ceph.client.admin.keyring

修改fstab,設定開機掛載

/dev/rbd0 /mnt/ceph-block-device ext4 defaults,noatime,_netdev 0 0

rbdmap服務預設開機自啟動,無須配置。

重啟主機,測試開機是否自動map並掛載裝置成功

塊裝置擴容

# rbd resize rbd/test --size 10G
# resize2fs /dev/rbd0