kubernetes glusterfs heketi

heketi-glusterfs-cluster:在k8s部署中部署glusterfs,并实现动态存储 heketi-glusterfs-cluster 在k8s部署中部署glusterfs,并实现动态存储 立即下载

Setup Guide

This guide contains detailed instructions for deploying GlusterFS + heketi onto Kubernetes.

Infrastructure Requirements

The only strict requirement is a pre-existing Kubernetes cluster and administrative access to that cluster. You can opt to deploy GlusterFS as a hyper-converged service on your Kubernetes nodes if they meet the following requirements:

  • There must be at least three nodes.

  • Each node must have at least one raw block device attached (like an EBS Volume or a local disk) for use by heketi. These devices must not have any data on them, as they will be formatted and partitioned by heketi.

  • Each node must have the following ports opened for GlusterFS communications:

  • 2222 - GlusterFS pod's sshd

  • 24007 - GlusterFS Daemon

  • 24008 - GlusterFS Management

  • 49152 to 49251 - Each brick for every volume on the host requires its own port. For every new brick, one new port will be used starting at 49152. We recommend a default range of 49152-49251 on each host, though you can adjust this to fit your needs.

  • The following kernel modules must be loaded:

    1. dm_snapshot
    2. dm_mirror
    3. dm_thin_pool

    For kernel modules, lsmod | grep <name> will show you if a given module is present, and modprobe <name> will load a given module.

  • Each node requires that the mount.glusterfs command is available. Under all Red Hat-based OSes this command is provided by the glusterfs-fuse package.

  • GlusterFS client version installed on nodes should be as close as possible to the version of the server. To get installed versions run glusterfs --version or kubectl exec <pod> -- glusterfs --version.

If you are not able to deploy a hyper-converged GlusterFS cluster, you must have one running somewhere that the Kubernetes nodes can access. The above requirements still apply for any pre-existing GlusterFS cluster.

Deployment Overview

An administrator must provide the topology information of the GlusterFS cluster to be accessed by heketi. The majority of the deployment tasks are handled by the gk-deploy script. The following is an overview of the steps taken by the script:

  1. Creates a Service Account for heketi to securely communicate with the GlusterFS nodes.
  2. As an option, deploys GlusterFS as a DaemonSet onto the Kubernetes nodes specified in the topology.
  3. Deploys an instance of heketi called 'deploy-heketi', which is used to initialize the heketi database.
  4. Creates the Service and Endpoints for communicating with the GlusterFS cluster and initializes the heketi database by creating a GlusterFS volume, then copies the database onto that same volume for use by the final instance of heketi.
  5. Deletes all the 'deploy-heketi' related resources.
  6. Deploys the final instance of the heketi service.

Deployment

1. Create a topology file

As mentioned in the overview, an administrator must provide the GlusterFS cluster topology information. This takes the form of a topology file, which describes the nodes present in the GlusterFS cluster and the block devices attached to them for use by heketi. A sample topology file is provided. When creating your own topology file:

  • Make sure the topology file only lists block devices intended for heketi's use. heketi needs access to whole block devices (e.g. /dev/sdb, /dev/vdb) which it will partition and format.

  • The hostnames array is a bit misleading. manage should be a list of hostnames for the node, but storage should be a list of IP addresses on the node for backend storage communications.

2. Run the deployment script

Next, run the gk-deploy script from a machine with administrative access to your Kubernetes cluster. You should familiarize yourself with the script's options by running gk-deploy -h. Some things to note when running the script:

  • By default it expects the topology file to be in the same directory as itself. You can specify a different location as the first non-option argument on the command-line.

  • By default it expects to have access to Kubernetes template files in a subdirectory called kube-templates. Specify their location otherwise with -t.

  • By default it will NOT deploy GlusterFS, allowing you to use heketi with any existing GlusterFS cluster. If you specify the -g option, it will deploy a GlusterFS DaemonSet onto your Kubernetes cluster by treating the nodes listed in the topology file as hyper-converged nodes with both Kubernetes and storage devices on them.

  • If you use a pre-existing GlusterFS cluster, please note that any pre-existing volumes will not be detected by heketi, and thus not be under heketi's management.

Usage Examples

Running the following from a node with Kubernetes administrative access and heketi-cli installed creates a 100GB Persistent Volume which can be claimed from any application:

$ export HEKETI_CLI_SERVER=http://<address to heketi service>
$ heketi-cli volume create --size=100 \
  --persistent-volume \
  --persistent-volume-endpoint=heketi-storage-endpoints | kubectl create -f -

You will also find a sample application shipped as part of this documentation.



./gk-deploy -g -n kube-system -t ./kube-templates --daemonset-label storage-node
lsblk 
pvremove /dev/sdb
wipefs -a /dev/sdb --force
setsebool -P virt_sandbox_use_fusefs on

UVM概述及uvm_component和uvm_object(一) UVM:Universal Verification Methodology(通用验证方法学) UVM:是建立在systemverilog平台上的一个库,提供了一系列的接口,让我们能够更方便的进行验证。验证平台组成: Driver:用来把不同的激励施加给DUT; Monitor:用来检测DUT的输出; Scoreboard:专门用来比较期望值与monitor检测到的DUT输出; Refer 阅读详情

相关推荐

5分钟搞定!用FunASR在本地快速部署达摩院Paraformer语音识别模型(附常见问题解决)

本文详细介绍了如何在本地快速部署阿里达摩院开源的Paraformer语音识别模型。通过FunASR工具包,用户可在5分钟内完成环境配置、模型下载与基础识别,并掌握批量处理、性能调优及构建API服务等进阶技巧。文章重点解析了Paraformer的非自回归架构带来的速度优势,并提供了音频格式转换、依赖冲突、显存不足等常见问题的实战解决方案,助力开发者实现高效、离线的语音转写应用。

p1q2r的博客 708

带你玩转kubernetes-k8s(第51篇:共享储存原理-[GlusterFS+Heketi+CSI])

动态存储管理实战: GlusterFS 本节以GlusterFS为例,从定义StorageClass、创建GlusterFS和Heketi服务、用户申请PVC到创建Pod使用存储资源,对StorageClass和动态资源分配进行详细说明,进一步剖析Kubernetes的存储机制。(ps: 第26篇有详细的部署过程,此处不上传操作图片了) 准备工作 为了能够使用GlusterFS,首先在计划用...

坚持的道路注定孤独 3510

光致发光(Photoluminescence, PL)入门版

关于光致发光的实际应用做出一些解释。

sinat_40546227的博客 1万+

最后的组合:K8s 1.24 基于 Hekiti 实现 GlusterFS 动态存储管理实践

知识点入门级GlusterFS 和 Heketi 简介GlusterFS 安装部署Heketi 安装部署Kubernetes 命令行对接 GlusterFS实战服务器配置(架构 1:1 复刻小规模生产环境,配置略有不同)主机名IPCPU内存系统盘数据盘用途24501002450100245010024501002450100k8s-worker2450100k8s-workerstorage-02450100+

KubeSphere 2750

ArcGIS小白必看:5分钟搞定WGS_1984到Krasovsky_1940_Albers投影转换(附详细步骤)

本文为ArcGIS初学者提供了从WGS_1984地理坐标系转换到Krasovsky_1940_Albers投影坐标系的详细实战指南。文章深入剖析了投影变换与基准面转换的核心区别,通过分步详解创建自定义地理变换、执行投影等关键操作,并附带了常见问题排查与批量处理脚本,旨在帮助用户高效、准确地完成坐标系统转换,为后续空间分析奠定基础。

weixin_29305337的博客 641

【Origin+Python】使用External Python批量出图代码参考2

不使用part2 的代码,自己打开一个origin2022的界面。这里主要介绍一些进阶代码以及使用盗版origin要如何。3 批量绘制相同设置的曲线图。然后就是没有水印的图片了。

zeng001201的博客 1908

kubernetes中部署Heketi和GlusterFS(一)

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

weixin_34270865的博客 860

SARscape的DInSAR全流程-以西安市隋大兴唐长安城遗址为例

通过DInSAR对西安市隋大兴唐长安城遗址开展的年度周期性监测,发现成因是地质内部构造断裂带活动所导致的地面产生物理空间上的形变,而地面的沉降与抬升是直接影响城市发展与文化遗产保护最为常见的缓变型不可逆地质灾害。西安市地处汾渭断陷盆地中部,受临潼-长安断裂带影响,导致区域内构造活动较为强烈。由于早年西安市地表水资源匮乏,从上世纪50年代末开始大量开采地下水资源以满足城市人口不断扩张的需求,从而导致地下承压含水层水位急速下降,形成多个局部沉降中心(八里村、西工大、电子城等)。

2301_77687129的博客 5819

kubernetes glusterfs csi环境搭建

kubernetes glusterfs csi环境搭建(搭建失败) 目前网络上提供的所有相关的资料都不能用了,gluster相关的git分支也被废弃了,然后官网文档里面也没有相应的介绍,enmmmmmmm???? 相关文档(以下文档皆已被废弃): glusterd2搭建 gluster-csi搭建 如果有知道怎么用gluster-csi的朋友,辛苦告知一下把,非常感谢 ...

DANTE54的博客 872

SBM与超效率SBM模型实战:从原始面板数据到MATLAB高效实现

本文详细介绍了SBM模型与超效率SBM模型的核心原理,并提供了从原始面板数据预处理到MATLAB高效实现的完整实战指南。通过具体代码解析,帮助研究者掌握如何利用MATLAB进行数据标准化、模型构建、效率求解及结果可视化,从而精准评估决策单元的相对效率,尤其适用于在高效单元中进一步精细排名的场景。

weixin_29100399的博客 481

科研必备:15款顶尖AI科研工具全面分析汇总(持续更新ing)

科研必备:15款AI科研工具全面分析汇总(持续更新ing)

Code_流苏:在代码中寻诗意,在实践中觅真知 9678

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

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

taonihou_的博客 1373

优化翼型形状的遗传算法实现

在每一代种群中,通过计算每个个体的适应度值,选择具有较高适应度值的个体,并使用交叉和变异算子对它们进行操作,从而生成新的个体。具体而言,我们将采用一个参数化的翼型模型,其中包括几何设计变量,如角度、弯曲和厚度等,以及性能指标,如升阻比和扭矩等。总之,本文提供了一个基于遗传算法的优化方法,用于寻找最优的翼型形状,并提供MATLAB源代码。需要注意的是,上述代码中的objFunc函数是一个示例性质的目标函数,实际应用中需要根据具体的问题进行修改。1.初始化一个随机的种群,其中每个个体代表一个参数化的翼型模型。

与其临渊羡鱼,不如退而结网 518

Kubernetes存储之Heketi管理GlusterFS

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

weixin_44949973的博客 2138

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

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

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

K8s中集成Heketi使用Glusterfs

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

冰之杍的博客 2144

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

heketi管理glusterfs,k8s基于glusterfs创建storageclass

heketi 项目介绍:https://github.com/heketi/heketi要点概况:参考的文档:https://www.jianshu.com/p/8f36e59ae4f8heketi 二进制包下载:https://github.com/heketi/heketi/releases 编写systemd启动文件

eyeofeagle的博客 2011

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

K8S部署Heketi与GlusterFS实战指南

/heketi-cli -s $HEKETI_CLI_SERVER(heketi的server接口) --user admin --secret 'hsop' topology load --json=/opt/heketi/topology.json。./heketi-cli -s http://192.168.0.210:8080 --user admin --secret 'hsop' cluster list 查看集群。最后在K8S上创建storageclass。log都正常的话表示启动成功。

cleveryangguang的博客 618

kubernetes中部署Heketi和GlusterFS(二)

kubernetes中部署Heketi和GlusterFS(二)在上一节中,Heketi的部署方式还不能用于生产环境,因为Heketi Pod的数据并没有持久化,容易导致heketi的数据丢失,Heketi的数据保存在/var/lib/heketi/heketi.db文件中,因此需要把此目录挂载到GlusterFS分布式存储中。按照上一节的步骤,执行heketi-cli topology load...

weixin_42631858的博客 1598

heketi配合glusterfs为k8s提供动态存储功能理解(傻瓜式理解)

安装 参考本文另一篇文档: https://blog.youkuaiyun.com/qq_35889860/article/details/104508613 heketi说明 Heketi是一个提供RESTful API管理GlusterFS卷的框架,便于管理员对GlusterFS进行操作: 可以用于管理GlusterFS卷的生命周期; 能够在OpenStack,Kubernetes,Openshift等云...

划水的银开的博客 1646

Heketi+Glusterfs+K8S-Storageclass

Heketi+Glusterfs+K8S+Storageclass 作者:Subversion 李雨93 转载请注明出处!!!!感谢

ly153135的博客 2511

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

k8s + heketi + glusterfs动态存储管理及扩容GlusterFS集群 一路踩坑记录

k8s + heketi + glusterfs动态存储管理及扩容GlusterFS集群

qq_15138049的博客 1万+

Kubernetes + GlusterFS + Heketi 动态卷管理实践 !

本文详细介绍了如何在Kubernetes环境中通过Heketi实现GlusterFS的自动化管理,以解决云原生架构中的动态存储供给问题。文章首先列出了部署GlusterFS集群的硬件和软件要求,并详细说明了安装GFS客户端、节点标签设置、模块加载等准备工作。接着,通过YAML文件部署了GlusterFS集群,并验证了部署结果。随后,文章介绍了如何创建Heketi服务,包括ServiceAccount、Role、RoleBinding的配置,以及Heketi服务的部署和验证。最后,文章通过Heketi创建了G

https://ophome.blog.youkuaiyun.com,在IT行业有多年的工作经验,尤其是在Python、Linux、负载均衡、Nginx和服务器运维等领域。 928

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

Kubernetes 部署 GlusterFS + Heketi 存储集群

目录[-] 系统环境: 系统版本:CentOS 7.6 Kubernetes版本:1.14.0 GlusterFS版本:glusterfs 4.1.7 heketi镜像版本:keheti/h...

测试 2177

glusterfs+heketi为k8s提供共享存储

背景 近来在研究k8s,学习到pv、pvc 、storageclass的时候,自己捣腾的时候使用nfs手工提供pv的方式,看到官方文档大量文档都是使用storageclass来定义一个后端存储服务, 使用pvc来自动申请pv, 所以花了点时间研究了下glusterfs配合heketi如果为k8s动态提供存储。 环境 主机名 ip地址 角色 备注 master ...

weixin_34221276的博客 365
上一篇: CentOS7上Glusterfs的安装及使用(gluster/heketi)
下一篇: Kubernetes dynamic provisioning 及 glusterfs 对
hxpjava1
博客等级 码龄19年 1365粉丝 511原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值