cephfs文件系統環境搭建介紹
cephfs文件系統環境搭建介紹
一、cephfs簡介。
cephfs 是一個基于ceph集群且兼容POSIX標準的文件系統。創建cephfs文件系統時需要在ceph集群中添加mds服務,該服務負責處理POSIX文件系統中的metadata部分,實際的數據部分交由ceph集群中的OSDs處理。cephfs支持以內核模塊方式加載也支持fuse方式加載。無論是內核模式還是fuse模式,都是通過調用libcephfs庫來實現cephfs文件系統的加載,而libcephfs庫又調用librados庫與 ceph集群進行通信,從而實現cephfs的加載。cephfs整體框架圖如下圖所示。
二、cephfs搭建過程。
ceph官方文檔上對cephfs的搭建過程描述的及其簡單且只介紹了通過ceph-deploy方式搭建mds。對于沒有使用ceph-deploy方法進行ceph集群部署的情況來說,就的按照下述的方法進行手動配置。
1、創建mds工作目錄。
#mkdir -p /var/lib/ceph/mds/mds.0
2、修改ceph集群的配置文件/etc/ceph/ceph.conf文件,在該文件中添加mds的相關內容。具體添加內容如下:
[mds]
mds data = /var/lib/ceph/mds/mds.$id
keyring = /etc/ceph/ceph.mds.$id.keyring
[mds.0]
host = {hostname}
3、創建mds用戶訪問key和訪問權限。
#ceph auth get-or-create mds.0 mds ‘allow’ osd ‘allow *’ mon ‘allow rwx’ > /etc/ceph/ceph.mds.0.keyring
4、使用ceph啟動腳本啟動mds服務。
#/etc/init.d/ceph start mds.0
5、查看ceph集群中mdsmap信息。
#ceph -s
cluster e4251f73-2fe9-4dfc-947f-962843dc6ad9
health HEALTH_OK
monmap e1: 1 mons at {a=192.168.250.58:6789/0}, election epoch 1, quorum 0 a
mdsmap e22: 1/1/1 up {0=0=up:active}
osdmap e99: 3 osds: 3 up, 3 in
pgmap v87493: 2760 pgs, 21 pools, 24935 MB data, 6292 objects
77977 MB used, 1596 GB / 1672 GB avail
2760 active+clean
看到上述mdsmap一行,就表示當前集群中mds服務已經開啟,cephfs功能一經可用。
三、加載/卸載cephfs過程。
在這里我做的比較簡單,就是在ceph集群的機器上做的cephfs加載操作。若在其它客戶端進行加載的話,需要將ceph集群配置文件ceph.conf 以及訪問cephfs的用戶keyring復制到對應的客戶端。對于通過內核方式加載來說,需要內核模塊支持cephfs,對于通過fuse方式加載來說,需要手動安裝ceph-fuse這個包。
1、通過內核模塊的方式加載cephfs。
#mkdir -p /mnt/mycephfs
#mount -t ceph 127.0.0.1:6789:/ /mnt/mycephfs
之后通過mount命令就可以看到cephfs已經成功的掛載到/mnt/mycephfs目錄下。后面就可以和操作本地文件系統一樣操作/mnt/mycephfs目錄。
2、通過內核模塊的方式卸載cephfs。
#umount /mnt/mycephfs
3、通過fuse方式加載cephfs。
#ceph-fuse -m 127.0.0.1:6789 /mnt/mycephfs
之后通過mount命令就可以看到cephfs已經成功的掛載到/mnt/mycephfs目錄下。后面就可以和操作本地文件系統一樣操作/mnt/mycephfs目錄。
4、通過fuse方式卸載cephfs。
#fusermount -u /mnt/mycephfs