一、概览
自从Jewel版本,nfs-ganesha开始支持ceph,ganesha通过两种方式支持将ceph通过posix及nfs语义导出。一种通过rgw,一种通过cephfs,通过FSAL模块 连接到RGW或者CephFS, 其中,FSAL_RGW调用librgw2将NFS协议转义为S3协议再通过RGW存入到Ceph中,FSAL_CEPH 调用libcephfs1将NFS转义为Cephfs协议再存入到Ceph 中。
因此在实际安装部署中需要额外安装这两个基础库,以提供协议转换的支撑。
文章所载基于Jewel 10.2.7版本所示,将J版本的ceph基于ganesha导出nfs部署,并且简单测试一下rgw和cephfs的性能。
二、环境
os: ubuntu16.04
ceph: jewel
nfs-gnesha: v2.5分支
三、安装
3.1 安装基础依赖库
apt install gcc git cmake libtool flex g++ krb5-dev uuid-dev nfs-kernel-server librgw2-dev
3.2 下载nfs-ganesha源码
在源码下载的时候有众多版本供选择,试过其中的v2.5以及v2.3版