Kubernetes 持久化存储之GlusterFS
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,GlusterFS是一个开源的分布式文件,具有强大的横向扩展能力,可支持数PB存储容量和数千客户端,通过网络互连成一个并行的网络文件系统。具有扩展性、高性能、高可用性等特点。前提:必须要在实验环境中部
千家信息网最后更新 2025年12月02日Kubernetes 持久化存储之GlusterFS
GlusterFS是一个开源的分布式文件,具有强大的横向扩展能力,可支持数PB存储容量和数千客户端,通过网络互连成一个并行的网络文件系统。具有扩展性、高性能、高可用性等特点。
前提:必须要在实验环境中部署了Gluster FS集群,文中创建了名为:gv0的存储卷
1.创建endpoint,文件名为glusterfs_ep.yaml
$ vi glusterfs_ep.yamlapiVersion: v1kind: Endpointsmetadata: name: glusterfs namespace: defaultsubsets:# 添加GlusterFS各个集群的IP地址- addresses: - ip: 10.0.0.41 - ip: 10.0.0.42 ports: # 添加GlusterFS端口号 - port: 49152 protocol: TCP执行yaml
$ kubectl create -f glusterfs_ep.yamlendpoints/glusterfs created// 查看创建好的endpoints[root@k8s-master01 ~]# kubectl get epNAME ENDPOINTS AGEglusterfs 10.0.0.41:49152,10.0.0.42:49152 15s2.为该endpoint创建svc
Endpoint是GlusterFS的集群节点,那么需要访问到这些节点,就需要创建svc
$ vi glusterfs_svc.yamlapiVersion: v1kind: Servicemetadata: # 该名称必须要和endpoint里的name一致 name: glusterfsspec: ports: - port: 49152 protocol: TCP targetPort: 49152 sessionAffinity: None type: ClusterIP执行yaml
$ kubectl create -f glusterfs_svc.yamlservice/glusterfs created$ kubectl get svcNAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGEglusterfs ClusterIP 10.1.104.145 49152/TCP 20s 3.为Glusterfs创建pv
$ vi glusterfs_pv.yamlapiVersion: v1kind: PersistentVolumemetadata: name: gluster labels: type: glusterfsspec: capacity: # 指定该pv的容量 storage: 50Gi accessModes: - ReadWriteMany glusterfs: # 指定glusterfs的endpoint名称 endpoints: "glusterfs" # path名称是在glusterfs里创建的卷 # 可登录到glusterfs集群执行"gluster volume list"命令来查看已创建的卷 path: "gv0" readOnly: false执行yaml
$ kubectl create -f glusterfs_pv.yamlpersistentvolume/gluster created$ kubectl get pvNAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGEgluster 50Gi RWX Retain Available 10s4.为Glusterfs创建pvc
$ vi glusterfs_pvc.yamlapiVersion: v1kind: PersistentVolumeClaimmetadata: # 名称必须和指定的pv一致 name: glusterspec: accessModes: - ReadWriteMany resources: requests: # 指定该pvc使用pv的容量空间 storage: 20Gi执行yaml
$ kubectl create -f glusterfs_pvc.yamlpersistentvolumeclaim/gluster created$ kubectl get pvcNAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGEgluster Bound gluster 50Gi RWX 83s5.创建nginx pod并挂载到cluster的pvc nginx_pod.yaml
$ vim nginx-demo.yaml---# PodapiVersion: v1kind: Podmetadata: name: nginx labels: app: web env: testspec: containers: - name: nginx image: nginx:1.13 ports: - containerPort: 80 volumeMounts: - name: data-gv0 mountPath: /usr/share/nginx/html volumes: - name: data-gv0 persistentVolumeClaim: # 绑定指定的pv claimName: gluster执行yaml
$ kubectl create -f nginx-demo.yamlpod/nginx created[root@k8s-master01 ~]# kubectl get pods | grep "nginx"nginx 1/1 Running 0 2m 10.244.1.222 k8s-node01 在任意客户端挂载/mnt到glusterfs目录,然后创建一个index.html文件
$ mount -t glusterfs k8s-store01:/gv0 /mnt/$ cd /mnt && echo "this nginx store used gluterfs cluster" >index.html在master节点上通过curl访问pod
$ curl 10.244.1.220/index.htmlthis nginx store used gluterfs cluster
名称
文件
集群
容量
节点
存储
一致
客户
客户端
网络
强大
分布式
前提
口号
可用性
命令
和数
地址
扩展性
是在
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
pubmed数据库中作者格式
怎样更换网络安全类型
数据库一定要固态硬盘吗
游戏辅助软件开发用语言
服务器的名字
中传黄玮 网络安全
暗黑2服务器已崩
达梦数据库更改密码记录
邮件服务器搭建条件
全年未发生网络安全
微信聊天记录都会存在服务器里吗
Nacos数据库作用
数据库progres
connect无法连接服务器
网络人气软件开发
张行 互联网科技有限公司
广州软件开发技校
网络安全漏洞的危害献文
东营市网络安全宣传
公式里面怎么复制数据库
服务器 关机好吗
广州网络安全实战培训
我的世界服务器假矿很卡
我的世界服务器管理员点劵
实惠的联想ts250服务器
我的世界基岩版服务器管理
华南网络安全厂
图形处理服务器显卡
天水网络安全伞
t110服务器 win10