nfs-ganesha导出cephfs为nfs
- 1. 概述
- 2. 前提条件
- 3. 版本说明
- 4. 安装
- 4.1. 配置yum源
- 4.2. 安装软件
- 5. 配置
- 6. 使用
- 7. 部署问题
- 7.1. nfs挂载之后无法创建文件、文件夹
- 8. 剩下的问题
- 9. 参考文档
1. 概述
cephfs直接使用不变,需要安装较多的依赖,相对来说nfs更加通用。
FSAL_CEPH 调用 libcephfs2 将 NFS 转义为 Cephfs 协议再存入到 Ceph 中,通过这种途径来实现cephfs导出为NFS
2. 前提条件
- 有一个cephfs集群
- 安装
nfs-ganesha nfs-ganesha-ceph libcephfs2
- nfs-ganesha服务需要能连接到ceph的public网络
- 安装nfs必要软件
rpcbind
nfs-utils
3. 版本说明
- nfs-ceph 2.8 nautilus
4. 安装
4.1. 配置yum源
cat /etc/yum.repos.d/storage.repo
[nfsganesha]
name=nfsganesha
baseurl=https://mirrors.cloud.tencent.com/ceph/nfs-ganesha/rpm-V2.8-stable/nautilus/x86_64/
gpgcheck=0
enable=1
yum clean all
yum repolist
4.2. 安装软件
yum install nfs-ganesha nfs-ganesha-ceph libcephfs2 -y
5. 配置
配置文件 /etc/ganesha/ganesha.conf
EXPORT
{Export_ID=1;# cephfs的目录Path = /;# nfs-ganesha挂载的目录Pseudo = /cephfs;Access_Type = RW;protocols = 3, 4;transports = "UDP", "TCP";Squash = no_root_squash;FSAL {# 访问ceph用户对应的secretkey secret_access_key = "AQDk18FgMo7NABAA4ufuz3O6/0lE4vsVgHs1yQ=="; # 访问ceph的用户 user_id = "admin"; name = "CEPH"; # cephfs 的fsname filesystem = "cephfs"; }
}
LOG { Facility {name = FILE; destination = "/var/log/ganesha/ganesha.log"; enable = active; }
}
启动服务
systemctl enable nfs-ganesha nfs-utils rpcbind
systemctl start nfs-ganesha nfs-utils rpcbind
6. 使用
mkdir /opt/ganesha
mount -t nfs 172.16.2.237:/cephfs /opt/ganesha**
查看挂载
df
# output
172.16.2.237:/cephfs 6576680960 96047104 6480633856 2% /opt/ganesha
进入挂载点就可以进行文件系统操作了
性能测试结果见, 小集群下性能差距非常小 https://docs.qq.com/doc/DR3RlaGh2ZXpqV1pT
7. 部署问题
7.1. nfs挂载之后无法创建文件、文件夹
touch aax
touch: 无法创建"aax": 权限不够
解决方式参照 https://github.com/ceph/ceph-ansible/issues/5300
在 ganesha的配置中添加 Squash = no_root_squash;
重启服务即可
这个配置项是nfs的配置项,客户端使用 NFS 文件系统的账号若为 root 时,系统该如何判断这个账号的身份?预设的情况下,客户端 root 的身份会由 root_squash 的设定压缩成 nfsnobody, 如此对服务器的系统会较有保障。但如果你想要开放客户端使用 root 身份来操作服务器的文件系统,那么这里就得要开 no_root_squash 才行!
8. 剩下的问题
如何调用api使得nfs-ganesha生成配置且重新加载
ceph中的实现是将nfs-ganesha的配置存储为ceph的对象,新建修改删除操作的都是ceph上的对象需要注意⚠️: 创建nfs-ganesha配置之后还需另外在cephfs上创建对应的目录;删除nfs-ganesha配置之后cephfs对应的目录也不会手动删除,如需清理则需另外操作删除
nfs-ganesha如何对指定目录做quota
早期ceph版本在nfs-ganesha配置client_quota = true
即可,后来社区把这个参数取消了,强制使用cephfs的quota,所以设置好cephfs的quota,在nfs-ganesha不用做什么即可达到目的nfs-ganesha如何实现高可用
nfs-ganesha 本身是个无状态服务,当前有以下几种方式实现高可用- pacemaker + corosync
- ctds + lvs
- haproxy
- keepalived
- k8s service+pod
既然可以用k8s service来实现,是否也可以通过简单的ha+keepalived来实现(待验证)
9. 参考文档
- 鸟哥私房菜nfs
- nfs-ganasha
nfs-ganesha导出cephfs为nfs相关推荐
- RH236配置IP故障转移--配置NFS Ganesha
RH236配置IP故障转移–配置NFS Ganesha 本章节学习配置NFS Ganesha解决高可用问题. RHCA专栏地址:https://blog.csdn.net/qq_41765918/ca ...
- Ceph性能测试(RBD、CephFS、NFS、Cache Tier)
本文是以下两篇文章的后续: 探索fio参数如何选择以及全方位对比HDD和SSD性能:部署Ceph前测试磁盘性能,同时基于fio测试参数的变化深入了解fio原理和磁盘IO特点. CentOS8使用cep ...
- Gluster部署及ganesha导出实践
1. 基础环境 机器:腾讯云CVM OS:centos7.4x86--64 IP地址: 10.154.14.207 10.154.51.185 10.105.17.180 10.105.73.90 ...
- linux nfs命令,linux命令:NFS服务
NFS服务器端:nfs-utils nfs服务器启动的进程: nfsd(nfs服务主进程),mountd(挂载进程),quotod(磁盘配额进程) nfsd端口:2049/tcp, 2049/udp ...
- 嵌入式linux开发,开机NFS文件系统启动,使用nfs挂载根文件系统
NFS( Network File System)即网络文件系统,是 FreeBSD 支持的文件系统中的一种,它允许网络中的计算机之间通过 TCP/IP 网络共享资源.在 NFS 的应用中, NFS ...
- linux 6.7 nfs安装yum,centos7下NFS使用与配置
NFS是Network File System的缩写,即网络文件系统.客户端通过挂载的方式将NFS服务器端共享的数据目录挂载到本地目录下 nfs为什么需要RPC? 因为NFS支持的功能很多,不同功能会 ...
- linux nfs 进程,【Linux】 nfs 故障处理
一台备份机down 机了,在服务器启动之后,nfs服务并没有启动,其他使用nfs 挂载此备份机目录的机器使用df -h 会hang住.在启动备份机的nfs 犯了一点小错,没有确认备份机的版本以后还是r ...
- nfs文件服务器读取文件夹,NFS文件服务器.ppt
<NFS文件服务器.ppt>由会员分享,可在线阅读,更多相关<NFS文件服务器.ppt(22页珍藏版)>请在人人文库网上搜索. 1.NFS文件系统,本章目标,掌握NFS服务器的 ...
- NFS - MIPS架构下构建NFS共享目录服务
文章目录 概 Lin 和 Win 共享文件 需求 原理 环境信息 检查依赖 如何找mips的rpm包 NFS服务端 上传RPM安装包 安装RPCBIND和NFSSERVER 创建共享目录 配置文件/e ...
最新文章
- iOS UIButton(按钮)
- Nginx深入了解-基础(一)
- 企业搜索引擎开发之连接器connector(二十九)
- Unity3d DLL脚本通用解密方法
- Codeforces Round #507 (Div. 1) D. You Are Given a Tree 根号分治 + dp
- 工作185:解决vue+el-element二级联动,选项选择后不显示的问题
- PageHelper分页插件
- windows理论基础(一)
- 安卓下最强的3款pdf阅读器测评
- DRM之Widevine学习入门
- 坤坤音效键盘(Python实现)
- python之爬虫(十一) 实例爬取上海高级人民法院网开庭公告数据
- Gromacs相关基础知识
- pandas 改列名称_01_Pandas.DataFrame的行名和列名的修改
- Shell编程基本指令
- vue中利用gif.js实现GIF动图下载
- 输入一行字符,分别统计出其中的英文字母大写小写、空格、数字和其它字符的个数。
- FPGA入门嵌入式 块RAM双口RAM使用
- 修改定位工具相关的app
- css中下划线,背景和边框的属性
热门文章
- Linux 下手动查杀木马过程
- 纪实:嵌入式Elasticsearch服务因为gc无法释放内存,导致宕机事件
- 中型研发组织管理之--组织架构设置
- Qt杂谈小技巧集锦()如何高效储存以及读取数据
- 算法6.6 采用邻接表表示图的深度优先搜索遍历
- 激活策略 查询_苹果Apple Search Ads搜索竞价广告全攻略——从入门到运营优化策略 推广人员不得不看...
- 【C++】STL常用容器总结之十二:string类
- chmod 报错Operation not permitted
- APP切图详细规范终极指南
- android 支付吧 漏洞,趋势科技发现支付宝安卓版漏洞