返回顶部
首页 > 资讯 > 精选 >GlusterFS在Kubernetes中怎么应用
  • 510
分享到

GlusterFS在Kubernetes中怎么应用

2023-06-04 09:06:17 510人浏览 八月长安
摘要

这篇文章主要介绍“GlusterFS在kubernetes中怎么应用”,在日常操作中,相信很多人在GlusterFS在Kubernetes中怎么应用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Gluster

这篇文章主要介绍“GlusterFS在kubernetes中怎么应用”,在日常操作中,相信很多人在GlusterFS在Kubernetes中怎么应用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”GlusterFS在Kubernetes中怎么应用”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

背景介绍

首先需要大家已经成功搭建好了Kubernetes集群的实验环境

想在生产环境里面使用glusterfs做storageclass,本文就可以保证你完成。

【Glusterfs实验环境准备】

      本案例中,实验环境与k8s集群使用同样的主机地址,实际生产案例中请分开部署。三个虚拟机里面各新建一块硬盘,硬盘大小均为10g。

主机ip

主机名

磁盘

挂载点

192.168.56.11

linux-node1.example.com

/dev/sdb

/gluster_brick1

192.168.56.12

Linux-node2.example.com

/dev/sdb

/gluster_brick1

192.168.56.13

Linux-node3.example.com

/dev/sdb

/gluster_brick1

【第一部分:Glusterfs实战】

GlusterFS在Kubernetes中怎么应用

1.磁盘类型修改

    实际生产案例中大家的磁盘都比较大,先将磁盘类型修改为gpt。这里给大家提供一个生产使用的脚本。

#!/bin/bash  PATH=/bin:/sbin:/usr/bin:/usr/sbinexport PATH  function main(){i=3while [ $i -lt 10 ]                doj=`echo $i|awk '{printf "%c",97+$i}'`parted /dev/sd$j <<FORMAT               mklabel gptyesmkpart primary 0 -1ignorequitFORMATi=$(($i+1))done}main

请大家在三台机器上使用fdisk –l查看下新加入硬盘的编号,我这里为/dev/sdb。在三台机器上分别进行如下操作,操作过程按照生产环境来。三台机器的新加磁盘均需要做如下操作。

GlusterFS在Kubernetes中怎么应用

操作完成后检查新加入的磁盘类型是否为gpt类型。检测命令fdisk -l

GlusterFS在Kubernetes中怎么应用

2.磁盘格式化并挂载卷

    生产环境在使用的时候存储也进行了自己的规划使用了flashcache做缓存层,大家有兴趣的可以研究下存储,我这边实验环境没有使用flashcache。给大家提供一个格式化和挂载的脚本。

function mkfs(){for i in `seq 1 12`;doif [ $i -lt 10 ] thenmkfs.xfs  -L brick$i -f -i  size=512 /dev/mapper/flash0$isleep 1elsemkfs.xfs  -L brick$i -f -i  size=512 /dev/mapper/flash$ifidone}function guazai(){for i in `seq 1 12`;domkdir /gluster_brick$iecho "LABEL=brick$i   /gluster_brick$i   xfs  defaults 0 0"  >>  /etc/fstabdone}

 好了不废话,继续我们的实验,格式化磁盘/dev/sdb1,如下所示,三台机器均进行如下操作。这里不使用卷标的可以使用uuid,否则有坑。

# mkfs.xfs -L brick1 -f -i size=512 /dev/sdb1# mkdir /gluster_brick1# echo "LABEL=brick1   /gluster_brick1   xfs  defaults 0 0"  >> /etc/fstab# mount -a

3.安装glusterfs

   去gfs官网看了下glusterfs更加简单了,安装的命令不复杂了,n年前我安装的时候还是3版本,偶然发现已经5版本了,变化太快了,若你有兴趣可把官网看一遍。三台机器均为glusterfs的server,均需按照如下步骤进行安装:

 # yum install Centos-release-gluster    # yum install glusterfs-server(说明如果是glsuterfs的客户端,则只需要按照glusterfs-client包即可)    # systemctl enable glusterd    # systemctl start glusterd

    当然你也可以使用之前配置好的salt进行自动化安装。

    # salt-ssh '*' cmd.run 'systemctl enable glusterd'

4.gluster peer管理

  当glusterd运行起来之后在任意一台机器添加另外两个机器进信任的池子即可。这里在linux-node1进行操作,需要执行如下两条命令。

  # gluster peer probe  linux-node2    # gluster peer probe  linux-node3

验证是否添加成功,如下图所示则为成功。

[root@linux-node1 ~]# gluster peer status

5.创建卷devops

注意生产中,一般使用三个副本,这里就三块盘,里面存储的数据是一致的,如下图所示:

[root@linux-node1 ~]# gluster volume create devops replica 3 linux-node1:/gluster_brick1/b1 linux-node2:/gluster_brick1/b1  linux-node3:/gluster_brick1/b1volume create: devops: success: please start the volume to access data[root@linux-node1 ~]# gluster volume start devopsvolume start: devops: success

6.测试glusterfs存储

[root@linux-node1 ~]# mkdir /test[root@linux-node1 ~]# mount -t glusterfs linux-node1:/devops  /test[root@linux-node1 ~]# for i in `seq -w 1 100`; do echo "test" >> /test/copy-test-$i; done[root@linux-node1 ~]# ls -lA /test | wc -l101

此步骤可以看到100个文件;然后查看下:

GlusterFS在Kubernetes中怎么应用

因为是三个副本,所以每个机器上已经有了100个文件,好了glusterfs的实验就到这里。

【第二部分:在Kubernetes集群中使用】

GlusterFS在Kubernetes中怎么应用

1.将glusterfs当作pv和pvc在集群中使用

需要使用三个文件:

  1. glusterfs-endpoints.yaml 

  2. pv-demo.yaml

  3. pvc-demo.yaml

[root@linux-node1 glusterfs]# cat glusterfs-endpoints.yaml apiVersion: v1kind: Endpointsmetadata:  name: glusterfs-volumesubsets:- addresses:  - ip: 192.168.56.11  ports:  - port: 20- addresses:  - ip: 192.168.56.12  ports:  - port: 20- addresses:  - ip: 192.168.56.13  ports:  - port: 20[root@linux-node1 glusterfs]# cat pv-demo.yaml apiVersion: v1kind: PersistentVolumemetadata:  name: pv-glusterspec:  capacity:    storage: 5G  acceSSModes:  - ReadWriteMany  persistentVolumeReclaimPolicy: Recycle  glusterfs:    endpoints: "glusterfs-volume"    path: "devops"    readOnly: false[root@linux-node1 glusterfs]# cat pvc-demo.yaml kind: PersistentVolumeClaimapiVersion: v1metadata:  name: pvc-glusterfsspec:  accessModes:    - ReadWriteMany  resources:    requests:      storage: 1G

使用kubectl直接创建好资源即可。

2.用deployment进行验证

[root@linux-node1 glusterfs]# cat Nginx-ingress-deployment.yaml apiVersion: apps/v1kind: Deploymentmetadata:  name: nginx-deployment  labels:    app: nginxspec:  replicas: 2  selector:    matchLabels:      app: nginx  template:    metadata:      labels:        app: nginx    spec:      containers:      - name: nginx        image: nginx:1.13.12        ports:        - containerPort: 80        volumeMounts:        - name: www          subPath: nginxpvc-gluster          mountPath: /usr/share/nginx/html      volumes:      - name: www        persistentVolumeClaim:          claimName: pvc-glusterfs# kubectl  apply -f  nginx-ingress-deployment.yaml

3.自动化扩容pvc

  1、当glustefs的磁盘空间够大的时候,我们使用的pv跟我们申请的大小是不一样的,上限是GFS卷的大小,若gfs存储不够,只需扩容gfs的volume即可。

当存储管理员开启了这个参数的时候怎么办?

# gluster volume devops quota enable# gluster volume quota devops limit-usage / 1gb

扩容完存储之后,将我们的quota值调大,这个时候我们k8s里面的pod就可以使用大额的存储了,不需要重启。pv和pvc不做调整。

到此,关于“GlusterFS在Kubernetes中怎么应用”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: GlusterFS在Kubernetes中怎么应用

本文链接: https://lsjlt.com/news/237184.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • GlusterFS在Kubernetes中怎么应用
    这篇文章主要介绍“GlusterFS在Kubernetes中怎么应用”,在日常操作中,相信很多人在GlusterFS在Kubernetes中怎么应用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Gluster...
    99+
    2023-06-04
  • Kubernetes中怎么部署应用
    这期内容当中小编将会给大家带来有关Kubernetes中怎么部署应用,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。通过Eclipse构建一个Spring  Bo...
    99+
    2024-04-02
  • Kubernetes中怎么创建一个Nginx应用
    本篇文章给大家分享的是有关Kubernetes中怎么创建一个Nginx应用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。使用命令行kubectl run --image=ngi...
    99+
    2023-06-06
  • 怎么在kubernetes中创建Pod
    本篇文章给大家分享的是有关怎么在kubernetes中创建Pod,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。如何创建Pod?kubectl create ...
    99+
    2023-06-14
  • 怎么实现Kubernetes应用部署
    这篇文章主要讲解了“怎么实现Kubernetes应用部署”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么实现Kubernetes应用部署”吧!概述当希望在...
    99+
    2024-04-02
  • Kubernetes怎么简化应用部署
    Kubernetes简化应用部署的主要方式包括以下几点: 使用容器化技术:Kubernetes基于容器化技术(如Docker)来...
    99+
    2024-04-02
  • Kubernetes中EFK怎么用
    这篇文章给大家分享的是有关Kubernetes中EFK怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一:前言1.在安装Kubernetes集群的时候我们有下载过压缩包https://dl.k8s.io/v1...
    99+
    2023-06-04
  • Kubernetes应用部署问题怎么处理
    这篇文章主要讲解了“Kubernetes应用部署问题怎么处理”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Kubernetes应用部署问题怎么处理”吧!1、应用部署问题处理的整体思路在将容器...
    99+
    2023-06-04
  • 如何在PHP中使用Kubernetes?
    近年来,Kubernetes已经成为了容器化部署的重要工具之一,而PHP作为应用开发的常用语言,如何在PHP中使用Kubernetes就成为了一个重要的话题。本文将介绍如何在PHP中使用Kubernetes,包括如何创建Kubernetes...
    99+
    2023-05-14
    使用 PHP Kubernetes
  • 如何理解Kubernetes在大数据的应用
    本篇内容介绍了“如何理解Kubernetes在大数据的应用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!&...
    99+
    2024-04-02
  • Kubernetes应用性能分析工具Kubectl Flame怎么用
    这期内容当中小编将会给大家带来有关Kubernetes应用性能分析工具Kubectl Flame怎么用,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。什么是性能分析?性能分析是分析应用程序性能来改进代码质量...
    99+
    2023-06-15
  • Context怎么在React中应用
    本篇文章给大家分享的是有关Context怎么在React中应用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Context定义和目的Context 提供了一种在组件之间共享数据...
    99+
    2023-06-15
  • Android在Sqlite3中怎么应用
    这篇“Android在Sqlite3中怎么应用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Android在Sqlite3中...
    99+
    2023-06-30
  • skywalking在docker中怎么应用
    本文小编为大家详细介绍“skywalking在docker中怎么应用”,内容详细,步骤清晰,细节处理妥当,希望这篇“skywalking在docker中怎么应用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。准备工...
    99+
    2023-07-05
  • 怎么用Kubernetes监控
    本篇文章为大家展示了怎么用Kubernetes监控,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。 什么是KubernetesKubernetes 是一个可...
    99+
    2024-04-02
  • Kubernetes探针怎么用
    小编给大家分享一下Kubernetes探针怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、基本介绍当我们在 K8s 上运行应用时,应用是否运行正常这是我们...
    99+
    2023-06-29
  • Kubernetes Helm怎么使用
    本篇内容主要讲解“Kubernetes Helm怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Kubernetes Helm怎么使用”吧!什么是Helm?这可不是暗黑破坏神里装备的名称:...
    99+
    2023-06-04
  • YAML文件如何在kubernetes中使用
    YAML文件如何在kubernetes中使用?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。01 YAML文件介绍      K8S在启动Pod...
    99+
    2023-06-14
  • 如何在PHP中使用Kubernetes函数
    随着云计算技术不断发展,Kubernetes已经成为了管理容器化应用程序的标准平台。使用Kubernetes可以轻松地管理和扩展应用程序,而且该平台的可靠性和安全性也得到了广泛认可。对于PHP开发人员来说,在Kubernetes上运行PHP...
    99+
    2023-05-18
    函数 PHP Kubernetes
  • 怎么用KOps在AWS上部署和管理Kubernetes
    本篇内容主要讲解“怎么用KOps在AWS上部署和管理Kubernetes”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用KOps在AWS上部署和管理Kubernetes”吧!Kubernet...
    99+
    2023-06-19
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作