用heketi管理glusterfs并创建volume

Ubuntu 18.04 搭建 GlusterFS 冗余存储池实战指南 冗余存储池是保障业务高可用的核心基础设施,其本质是通过多副本、去中心化和自愈机制实现数据可恢复性、服务连续性与容量弹性。GlusterFS 作为无元数据服务器的分布式文件系统,在 Ubuntu 18.04 这一长期稳定版本上展现出独特优势:依托 XFS 文件系统优化、replica 3 原子写入、客户端驱动同步及内核 4.15 的小文件性能提升,天然适配边缘计算、视频分析等对可靠性与低运维成本敏感的场景。本文聚焦生产级落地,涵盖环境初始化、replica 卷构建、故障注入验证、Kubernetes 动态供给 阅读详情

Heketi 提供了丰富的RESTful API 用来对于Glusterfs的volume进行管理。Heketi可以同时管理多个cluster,每个cluster由多个node组成,每个node都是一个物理机,准确的说是一个裸盘。然后每个裸有多个bricks,而volume就是多个bricks组成的,但是,一个volume不可以跨node组成。示意图如下所示。


Heketi 在Github上的地址:https://github.com/heketi
下文将要讲述在Redhat 7上安装Heketi, Glusterfs并进行相应配置。

1. 配置Gluster yum 源并且安装heketi & glusterfs
进入/etc/yum.repos.d/目录,新建gluster.repo(名字随便起,但是后缀必须是repo),添加如下内容到gluster.repo文件:
[gluster]
name = Gluster
baseurl = http://buildlogs.centos.org/centos/7/storage/x86_64/gluster-4.0/
gpgcheck = 0
enable = 1

保存文件,然后执行yum repolist 会看到如下内容


接着执行yum install heketi -y 和 yum install heketi-client -y,进行heketi和heketi-client的安装。检查是否安装成功,用heketi --version查看版本,如果有版本信息,那么证明安装成功。接下来需要开启heketi服务。
order1 :systemctl enable heketi
order2 : systemctl start heketi
此时如果发生start fail,在log中查看日志(/var/log/messages),会看到如下内容:

这是因为默认的配置文件有个错误,此时需要通过 find /etc -name "heketi.service" 命令,找到heketi.service文件,打开文件,内容显示如下:

刚安装完毕,上面标注那一行内容应该是“-config” 而不是“--config”,所以在前面多加一个”-“,然后保存文件。接着执行systemctl daemon-reload. 然后执行systemctl start heketi 命令启动heketi。然后用 systemctl status heketi,会看到如下内容

到此时此刻,证明heketi,安装成功。Gluster的安装就显的简单了。
yum install glusterfs-server (服务器端)yum install -y glusterfs-client(客户端)。接着执行gluster --version命令,确认gluster安装成功。

2. 利用heketi创建gluster集群并进行volume管理
heketi有两个文件比较重要,第一个是heketi.json,位于/etc/heketi 目录下,主要用来确定heketi端口以及cluster node管理方式的定义等;第二个topology.json(文件路径随意,但是需要记住路径,用途后面写),此文件用来描述heketi创建的cluster的topology模型。heketi就是根据这个文件来创建cluster topology进而创建node 和volume。
如下是heketi.json文件的内容:
第一张图是heketi的端口号,默认是8080,但是可以修改,修改完之后需要重启heketi才能生效。

下面这张图是比较重要的,heketi用来管理cluster的,下面的配置控制了cluster下的node的管理方式,有三种
:mock, ssh,kubernetes。mock,顾名思义就是测试,在这种模式下,可以对于自己的配置文件什么的进行检验,但是,但是,但是,重要的坑说三遍,如果处于此模式下,虽然你可以看到node添加成功,volume创建成功,但是这些volume是不可用的,无法挂载的。所以如果要在SVT或者PROD环境用的话,一定要用ssh或者kubernetes模式。下面只讲述ssh模式。

3 cluster topology的配置
在/etc/heketi,新建文件topology.json,写入如下内容
{
    "clusters": [
        {
            "nodes": [
                {
                    "node": {
                        "hostnames": {
                            "manage": [
                                "100.120.187.1"
                            ],
                            "storage": [
                                "100.120.187.1"
                            ]
                        },
                        "zone": 1
                    },
                    "devices": [
                        {
                            "name": "/dev/mapper/bcdisk1-disk1",
                            "destroydata": true
                        }
                    ]
                },
               "node": {
                        "hostnames": {
                            "manage": [
                                "100.120.187.2"
                            ],
                            "storage": [
                                "100.120.187.2"
                            ]
                        },
                        "zone": 1
                    },
                    "devices": [
                        {
                            "name": "/dev/mapper/bcdisk1-disk1",
                            "destroydata": true
                        }
                    ]
                },
                {
                    "node": {
                        "hostnames": {
                            "manage": [
                                "100.120.187.3"
                            ],
                            "storage": [
                                "100.120.187.3"
                            ]
                        },
                        "zone": 1
                    },
                    "devices": [
                        {
                            "name": "/dev/mapper/bcdisk1-disk1",
                            "destroydata": true
                        }
                    ]
                }
            ]
        }
    ]
}
查阅了相关资料,用heketi模式,最少需要三个node,如上配置。如果少于三个节点,cluster能创建成功,但是在创建volume的时候会出现错误。topology文件添加成功后,开始创建cluster topology,执行命令:
heketi-cli topology load --json=topology.json。然后输入heketi-cli topology info,查看topology是否创建成功。如果成功会显示如下内容:

下面就可以创建指定size的volume来进行使用了,创建volume命令:
heketi-cli volume create --size=10 --clusters= clusterid。其中clusterid可以通过heketi-cli cluster list命令来获取。创建的volume可以通过mount的方式使用。
至此,heketi已经完成heketi的安装以及volume的创建和使用。


超10万,两台Mac Studio在家就能跑满血DeepSeek,网友:这是性价比最高的大模型一体机 在AI计算领域,没有比这更强的个人电脑了。这要从它的架构说起。对于那些有本地部署满血版DeepSeek需求的用户,目前建议的配置是选购512GB统一内存 + 1TB SSD,搭载M3 Ultra芯片的Mac Studio,官网售价74249元,可以叠加国补、教育优惠、12期分期等,这可能是目前门槛最低、性价比最高的满血版DeepSeek本地部署方案。对于企业而言,尽管Mac Studio确实可以部署6000亿参数的大模型,但在内存带宽、模型精调服务等方面,跟专用的大模型一体机仍有差距,采购需要谨慎评估。 阅读详情

相关推荐

TestFlight分发测试app,提示无法安装 所请求的App不可用或者不存在

TestFlight分发测试app,提示无法安装 所请求的App不可用或者不存在

天穹云原生 9172

heketi 与GlusterFS常见命令

heketi-cli volume create --size=1 --replica=2 # 创建一个1G的磁盘,副本数为2,时间大概2-3分钟。参考文献https://https://blog.youkuaiyun.com/jxlhljh/article/details/126481525。参考:https://www.cnblogs.com/bfmq/p/14542635.html。删除device-->删除node-->删除-->删除cluster集群。10、创建heketi-ui。1、列出volume。

weixin_43490243的博客 1103

Typora绘制思维导图

我们观察一下,其实思维导图就是树状结构的数据嘛,作为程序员,拿语言写树状结构的数据是很平常的事情。而且写代码可比画图省事多了,查阅资料可以知道,有一种`mermaid`语法,就是做这件事情的,支持 UML,甘特图,流程图等。

Peter Cheung的博客 7934

kubernetes动态存储之glusterfs集群(heketi)

kubernetes存储类资源的详细实现过程

taonihou_的博客 1373

28 硬件工程师笔面试高频考点真题解析——PCB设计

本文摘要:文章系统介绍了PCB设计的核心要点,包括电路设计流程(方案选型、原理图、仿真、PCB设计、打样调试)、关键注意事项(电源滤波、分区布局、接地隔离)。重点解析了PCB分区布线规则(数字/模拟/功率区域隔离)、接地设计(单点连接、地平面处理)、高速信号处理(等长布线、参考平面连续)等关键技术。详细说明了去耦电容布局、差分信号布线优先原则、过孔类型选择、铜箔载流计算等实用技巧,并对比了V-Cut和邮票孔两种拼板工艺特点。全文涵盖从基础设计规范到高速PCB的EMC解决方案,为硬件工程师提供全面的PCB设计

XU157303764的博客 1584

【SCADA】KingSCADA将数据插入SQLServer的方法

1、创建数据库及数据表格;2、配置ODBC数据源。3、通过KingSCADA与数据库建立连接,将数据写入数据库对应表格。

做有价值的事,积累有价值的笔记! 4968

[k8s]ubuntu18 + Heketi + Glsuterfs的独立部署

关于ubuntu server 18 上部署glusterfs和heketi的文章网上有很多了,看起来都很顺利,但是我在部署的时候偏偏遇到了很多的问题, 记录一下。 环境:Ubuntu Server 18.04    glusterfs-3.13 heketi-v9 heketi-client-v9 1、使用sudo apt-get ...

weixin_30908707的博客 447

[Dify] 【实战笔记】优化 Excel 电话簿类知识库检索效果的实战技巧

摘要:文章分析了Dify知识库在处理Excel结构化数据(如电话簿)时出现的检索异常问题,发现主要原因是默认召回多条记录且缺乏精准匹配机制。提出两个核心解决方案:1)优化知识库召回参数,包括调整TopK值、提高关键词权重等;2)设计精准提示词模板,明确约束模型行为范围。通过对比测试验证了优化效果,并给出进阶建议如数据格式转换、输出格式化等。最后针对知识检索类AI应用提供了场景适配建议。

技术小甜甜:传播可落地技术,帮助个人和企业降低解决真实场景问题的成本 369

heketi扩展已经挂载到k8s的volume

上周在K8S集群上部署了prometheus,当时给划分的是5g存储,系统提示存储空间已满,pod不停在拉起失败。 1.先找到pod对应的pv,查看最终挂载volume 挂载路径. kubectl describe pv pvc-98bde2dc-11a3-44af-8daf-fc54fb9aba3d -n ns-monitor Name: pvc-98bde2dc-11a3-44af-8daf-fc54fb9aba3d Labels: <none> An

qn0007的博客 715

基于深度学习YOLOv10的障碍物检测系统

为了方便用户使用,我们将开发一个图形用户界面(GUI),允许用户上传图像或视频流并查看检测结果。我们使用PySide6开发GUI界面,它是Qt框架的Python绑定,适用于开发跨平台的桌面应用程序。本文详细介绍了如何基于YOLOv10模型构建一个障碍物检测系统,包括数据集准备、模型训练和推理到图形用户界面的开发。通过这一系统,用户可以方便地上传图像或视频流并进行障碍物检测,广泛应用于自动驾驶、机器人导航等领域。

斌擎科技 1052

iOS逆向之深入解析Hook的原理方法和安全防护

Hook简介 Hook就是一种改变程序执行流程的一种技术的统称; 一段程序的执行流程是 A --> B --> C,现在我们在 A 和 B 之间插入一段代码或者直接改变 B ,这样程序原有的执行流程就发生了改变。如下图所示: Hook的方式:Method Swizzle,fishhook,Cydia Substrate; Hook原理 一、Method Swizzle 原理 利用OC的Runtime特性,动态去改变SEL(方法编号)和IMP(方法实现)的对应关系,达到OC方法调用流程改变

╰つ栺尖篴夢ゞ 2万+

Kubernetes存储之Heketi管理GlusterFS

Kubernetes存储之Heketi管理GlusterFS GlusterFS是一个可扩展,分布式文件系统,集成来自多台服务器上的磁盘存储资源到单一全局命名空间,以提供共享文件存储 特点: 可以扩展到几PB容量 支持处理数千个客户端 兼容POSIX接口 使用通用硬件,普通服务器即可构建 能够使用支持扩展属性的文件系统,例如ext4,XFS 支持...

weixin_44949973的博客 2138

Linux 4.19、Linux 5.10、Linux 6.1 三个版本详细分析

Linux 4.19发布日期:2018年10月22日LTS 状态:是长期支持版本,官方支持到2024年12月。Linux 5.10发布日期:2020年12月13日LTS 状态:LTS 版本,官方支持到2026年12月。Linux 6.1发布日期:2022年12月11日LTS 状态:不是官方的LTS版本,但通常社区会为新的版本提供一定时间的支持。定位:稳定性和长期支持,广泛应用于多种平台,尤其是嵌入式系统和服务器。主要优势:稳定性高,广泛的硬件支持,核心功能可靠。

小灰灰的博客 5959

GlusterFs集群部署和Heketi配置

1. 了解GlusterFS几种存储模式 分布卷(DHT) 默认模式。将文件以hash算法随机分布到一个文件服务器节点中进行存储。Volume创建命令如下: gluster volume create test-volume server1:/exp1 server2:/exp2 复制模式(AFR) 将文件复制到replica x个文件节点中。Volume创建命令如下: gluster volume create test-volume replica 2 transport tcp server1:/e

三言两语 2047

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

glusterfs之heketi 部署

xiao_b4b1关注 0.52018.11.09 17:21*字数 334阅读 730评论 0喜欢 1 heketi简介 heketi:提供基于RESTful接口管理glusterfs的功能,可以方便的创建集群管理glusterfs的node,device,volume;与k8s结合可以创建动态的PV,扩展glusterfs存储的动态管理功能 heketi-cli...

大JAVA解决方案 2509

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

K8s中集成Heketi使用Glusterfs

K8s中集成Heketi使用Glusterfs,Heketi是一个GlusterFs管理软件,提供相应的rest api服务,

冰之杍的博客 2144

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

kubernetes中部署Heketi和GlusterFS(一)

前言 在kubernetes中,使用GlusterFS文件系统,操作步骤通常是:创建brick-->创建volume-->创建PV-->创建PVC-->Pod挂载PVC如果要创建多个PV,则需要手动重复执行这些繁锁步骤,那么使用GlusterFS如何动态创建呢,这就要借助于第三方的Heketi了,为什么要借助于Heketi呢,因为GlusterFS自身并不具备RESTful...

weixin_34270865的博客 860

k8s使用glusterfs+heketi作为后端存储

环境准备 modprobe dm_thin_pool modprobe dm-snapshot cat >/etc/modules-load.d/glusterfs.conf<<EOF dm-snapshot dm_thin_pool EOF #yum install -y glusterfs-fuse lvm2 yum -y localinstall --disablerepo=* env_package/*.rpm #如需开启防火墙。需开放端口 iptables -N heket

qq_42747099的博客 1060

kubernetes 搭建heketi-glusterfs(自动创建存储卷)

本文包含: gluster各存储卷详解、创建及使用 gluster-kubernetes搭建glusterfs存储 前言 传统的运维中,往往需要管理员手动先在存储集群分配空间,然后才能挂载到应用中去。Kubernetes 的最新版中,dynamic provisioning 升级到了 beta ,并支持多种存储服务的动态预配置,从而可以更有效地利用存储环境中的存储容量,达到按需使用存储空间的...

weixin_40965647的博客 1073

GlusterFS heketi k8s动态存储(live版)

所有节点安装heketi-client yum install -y heketi-client heketi 配置服务 cd /etc/heketi/ cp heketi.json heketi.json-abk cat /etc/heketi/heketi.json { "_port_comment": "Heketi Server Port Number", "port": "8080", "_use_auth": "Enable JWT authorization. Please

weixin_42562106的博客 660

k8s教程(Volume篇)-动态存储管理案例(GlusterFS)

k8s GlusterFS 动态存储管理案例

阿甘兄 1391

源码编译安装使用glusterfs+heketi安装使用

注:使用源码安装的原因主要是使用yum安装glusterfs服务端时出现一些依赖库问题 准备3台glusterfs服务器(官方也建议至少3台,防止发生脑裂),并在各个服务器的/etc/hosts下面添加如下内容(如使用DNS服务器,则在DNS中添加域名解析) 10.85.3.113 glusterfs-1.example.com 10.85.3.114 glusterf...

weixin_30781433的博客 641

k8s集群存储解决方案 GlusterFS

GlusterFS是一个开源的分布式文件系统具有强大的横向扩展能力通过扩展能够支持数PB存储容量和处理数千客户端GlusterFS 借助 TCP/IP 或 InfiniBandRDMA 网络将物理分布的存储资源聚集在一起,使用单一全局命名空间来管理数据。

weixin_54720351的博客 2732

k8s使用glusterfs(静态供给、动态供给)、glusterfs的安装与使用

k8s使用glusterfs(静态供给、动态供给)、glusterfs的安装与使用

MssGuo的博客 5776

Kubernetes - - k8s - v1.12.3 动态存储管理GlusterFS及使用Heketi扩容GlusterFS集群

1,准备工作 1.1 所有节点安装GFS客户端 yum install glusterfs glusterfs-fuse -y 1.2 如果不是所有节点要部署GFS管理服务,就在需要部署的节点上打上标签 [root@k8s-master01 ~]# kubectl label node k8s-master01 storagenode=glusterfs node/k8s-master01 lab...

weixin_34152820的博客 1165

glusterfs部署

环境准备这里准备四台机器都挂两块盘,一块作为数据盘。1gfs yum源登录后复制 vim CentOS-Linux-Gluster-8.repo [centos-gluster10] name=CentOS-8 - Gluster 10 baseurl=https://mirrors.huaweicloud.com/c...

cnzzs的博客 1070
下一篇: Redhat 上面进行fluentd mail plugin 配置并进行邮件发送
DevOps008
博客等级 码龄8年 75粉丝 26原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值