Kubernetes 集群使用 GlusterFS 作为数据持久化存储

简介: Kubernetes 集群使用 GlusterFS 作为数据持久化存储

安装 GlusterFS

可以看我的另一篇博客:CentOS 7.6 部署 GlusterFS 分布式存储系统

整合到 Kubernetes 集群

配置 endpoint
---
apiVersion: v1
kind: Endpoints
metadata:
  annotations:
  name: glusterfs
  # 注意修改成自己需要使用的 namespace
  namespace: monitor
subsets:
- addresses:
  # 配置成自己的 GlusterFS 节点 ip
  - ip: 172.72.0.96
  - ip: 172.72.0.97
  ports:
  # GlusterFS 默认端口是 49152,注意修改
  - port: 49152
    protocol: TCP
配置 service
---
apiVersion: v1
kind: Service
metadata:
  annotations:
  name: glusterfs
  # 注意修改成自己需要使用的 namespace
  namespace: monitor
spec:
  ports:
  # GlusterFS 默认端口是 49152,注意修改
  - port: 49152
    protocol: TCP
    targetPort: 49152
  sessionAffinity: None
  type: ClusterIP
创建 pv
  • accessModes-访问模式
  • ReadWriteOnce - 卷可以被一个节点以读写方式挂载。 ReadWriteOnce 访问模式也允许运行在同一节点上的多个 Pod 访问卷。
  • ReadOnlyMany - 卷可以被多个节点以只读方式挂载
  • ReadWriteMany - 卷可以被多个节点以读写方式挂载
  • ReadWriteOncePod - 卷可以被单个 Pod 以读写方式挂载;这只支持 CSI 卷以及需要 Kubernetes 1.22 以上版本
  • persistentVolumeReclaimPolicy-定义当从持久卷声明释放持久卷时会发生什么
  • Retain - 手动创建
  • Delete - 动态制备 PersistentVolumes 所用的默认值
  • Recycle - 已弃用
---
apiVersion: v1
kind: PersistentVolume
metadata:
  annotations:
  labels:
  name: monitor-config-pv
spec:
  accessModes:
  - ReadOnlyMany
  capacity:
    storage: 10Gi
  glusterfs:
    endpoints: glusterfs
    # k8s-gfs-data 是我的 GlusterFS 卷的名称,注意修改成自己的
    # config 是我定义的路径,注意修改成自己的
    path: k8s-gfs-data/kubernetest/config
    readOnly: false
  persistentVolumeReclaimPolicy: Retain

验证

kubectl get pv | grep monitor

pv 目前处于 Available 状态

monitor-config-pv   10Gi       ROX            Retain           Available                                   21s
创建 pvc
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  annotations:
  labels:
  name: monitor-config-pvc
  namespace: monitor
spec:
  accessModes:
  - ReadOnlyMany
  resources:
    requests:
      storage: 10Gi
  selector:
    matchLabels:

验证

查看 pv 的状态

kubectl get pv | grep monitor

pv 此时处于 Bound 状态

monitor-config-pv   10Gi       ROX            Retain           Bound    monitor/monitor-config-pvc                           22s

查看 pvc 的状态

kubectl get pvc -n monitor | grep monitor

pvc 处于 Bound 的状态,绑定的 pvmonitor-config-pv

monitor-config-pvc   Bound    monitor-config-pv   10Gi       ROX                           5s

接下来就可以在 pod 中应用 pvc

相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
云原生实践公开课
课程大纲 开篇:如何学习并实践云原生技术 基础篇: 5 步上手 Kubernetes 进阶篇:生产环境下的 K8s 实践 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
|
4天前
|
运维 Kubernetes 监控
Kubernetes 集群的持续性能优化实践
【4月更文挑战第26天】 在动态且不断增长的云计算环境中,维护高性能的 Kubernetes 集群是一个挑战。本文将探讨一系列实用的策略和工具,旨在帮助运维专家监控、分析和优化 Kubernetes 集群的性能。我们将讨论资源分配的最佳实践,包括 CPU 和内存管理,以及集群规模调整的策略。此外,文中还将介绍延迟和吞吐量的重要性,并提供日志和监控工具的使用技巧,以实现持续改进的目标。
|
7天前
|
存储 运维 Kubernetes
Kubernetes 集群的监控与维护策略
【4月更文挑战第23天】 在微服务架构日益盛行的当下,容器编排工具如 Kubernetes 成为了运维工作的重要环节。然而,随着集群规模的增长和复杂性的提升,如何确保 Kubernetes 集群的高效稳定运行成为了一大挑战。本文将深入探讨 Kubernetes 集群的监控要点、常见问题及解决方案,并提出一系列切实可行的维护策略,旨在帮助运维人员有效管理和维护 Kubernetes 环境,保障服务的持续可用性和性能优化。
|
9天前
|
存储 运维 Kubernetes
Kubernetes 集群的持续性能优化实践
【4月更文挑战第22天】在动态且复杂的微服务架构中,确保 Kubernetes 集群的高性能运行是至关重要的。本文将深入探讨针对 Kubernetes 集群性能优化的策略与实践,从节点资源配置、网络优化到应用部署模式等多个维度展开,旨在为运维工程师提供一套系统的性能调优方法论。通过实际案例分析与经验总结,读者可以掌握持续优化 Kubernetes 集群性能的有效手段,以适应不断变化的业务需求和技术挑战。
|
19天前
|
运维 Kubernetes 监控
Kubernetes 集群的监控与维护策略
【4月更文挑战第12天】在微服务架构日益普及的当下,Kubernetes 作为容器编排的事实标准,承载着运行和管理大量服务的重要职责。本文将深入探讨 Kubernetes 集群的监控要点,并提出一系列切实可行的维护策略,旨在帮助运维人员确保集群的稳定性和性能优化。
|
28天前
|
Kubernetes Cloud Native 容器
完全免费的K8S学习平台:在线集群环境助力你的云原生之路!
完全免费的K8S学习平台:在线集群环境助力你的云原生之路!
35 1
|
27天前
|
数据库 存储 监控
什么是 SAP HANA 内存数据库 的 Delta Storage
什么是 SAP HANA 内存数据库 的 Delta Storage
17 0
什么是 SAP HANA 内存数据库 的 Delta Storage
|
21天前
|
Kubernetes 搜索推荐 网络协议
使用 kubeadm 部署 Kubernetes 集群(三)kubeadm 初始化 k8s 证书过期解决方案
使用 kubeadm 部署 Kubernetes 集群(三)kubeadm 初始化 k8s 证书过期解决方案
36 8
|
2天前
|
Kubernetes 网络协议 Python
一文教会你,如何通过kubeadm,在生产环境部署K8S高可用集群(二)
一文教会你,如何通过kubeadm,在生产环境部署K8S高可用集群(二)
|
2天前
|
Kubernetes 应用服务中间件 开发工具
一文教会你,如何通过kubeadm,在生产环境部署K8S高可用集群(一)
一文教会你,如何通过kubeadm,在生产环境部署K8S高可用集群(一)
|
6天前
|
Kubernetes 应用服务中间件 nginx
【博客大赛】搭建一套完整的企业级Kubernetes高可用集群(v1.20,二进制)
【博客大赛】搭建一套完整的企业级Kubernetes高可用集群(v1.20,二进制)

推荐镜像

更多