heketi配置文件/etc/heketi/heketi.json
...... #修改端口,防止端口冲突 "port": "18080", ...... #允许认证 "use_auth": true, ...... #admin用户的key改为adminkey "key": "adminkey" ...... #修改执行插件为ssh,并配置ssh的所需证书,注意要能对集群中的机器免密ssh登陆,使用ssh-copy-id把pub key拷到每台glusterfs服务器上 "executor": "ssh", "sshexec": { "keyfile": "/root/.ssh/id_rsa", "user": "root", "port": "22", "fstab": "/etc/fstab" }, ...... # 定义heketi数据库文件位置 "db": "/var/lib/heketi/heketi.db" ...... #调整日志输出级别 "loglevel" : "warning"
需要说明的是,heketi有三种executor,分别为mock、ssh、kubernetes,建议在测试环境使用mock,生产环境使用ssh,当glusterfs以容器的方式部署在kubernetes上时,才使用kubernetes。我们这里将glusterfs和heketi独立部署,使用ssh的方式。
配置ssh密钥
在上面我们配置heketi的时候使用了ssh的executor,那么就需要heketi服务器能通过ssh密钥的方式连接到所有glusterfs节点进行管理操作,所以需要先生成ssh密钥
# 选择ssh执行器,heketi服务器需要免密登陆GlusterFS集群的各节点; # -t:秘钥类型; # -q:安静模式; # -f:指定生成秘钥的目录与名字,注意与heketi.json的ssh执行器中"keyfile"值一致; # -N:秘钥密码,””即为空 [root@heketi ~]# ssh-keygen -t rsa -q -f /etc/heketi/heketi_key -N ""
ssh-keygen -t rsa -q -f /etc/heketi/heketi_key -N '' chmod 600 /etc/heketi/heketi_key.pub # ssh公钥传递,这里只以一个节点为例 ssh-copy-id -i /etc/heketi/heketi_key.pub root@192.168.1.220 # 验证是否能通过ssh密钥正常连接到glusterfs节点 [root@node01 ~]# ssh -i /etc/heketi/heketi_key root@192.168.1.220 Last login: Tue Jan 26 21:06:06 2021 from 192.168.1.28 [root@master ~]#
分类:
glasterfs
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?