首页 > 其他分享 >在k8S中,K8S持久化可以对接哪些储存,为什么要选择它?

在k8S中,K8S持久化可以对接哪些储存,为什么要选择它?

时间:2024-02-20 09:11:25浏览次数:22  
标签:存储 K8S 持久 Kubernetes AWS 存储系统 对接 Storage k8S

在 Kubernetes (k8s) 中,持久化存储可以对接多种类型的存储系统,以满足不同场景下的需求。Kubernetes 的设计使得它可以与各种云服务提供商的存储解决方案、本地存储系统以及第三方开源或商业存储产品进行集成。以下是一些常见的存储类型:

  1. 云服务提供商的块存储/卷

    • AWS EBS(Elastic Block Store)
    • Google Cloud Persistent Disks
    • Azure Disk Storage
    • Alibaba Cloud Disk
  2. 网络文件系统

    • NFS (Network File System)
    • GlusterFS
    • CephFS
    • Azure Files
    • AWS EFS (Elastic File System)
  3. 块存储系统

    • iSCSI
    • RBD (Ceph Block Device)
    • Portworx Volume
  4. 对象存储(通常通过支持的插件间接使用)

    • AWS S3
    • Google Cloud Storage
    • Azure Blob Storage
  5. 本地存储

    • Local Persistent Volumes (kubelet 的 local 存储驱动程序)
    • Local Static Provisioning 或者 CSI Drivers for local storage like OpenEBS LocalPV

选择 Kubernetes 持久化存储的原因:

  • 数据持久性:容器是临时和短暂的,而应用往往需要持久化的存储来保存重要数据,如数据库、日志和其他状态信息,确保即使容器重启或迁移,数据也能保持完整。
  • 可移植性和灵活性:Kubernetes 通过抽象层提供了统一的接口来管理存储资源,使得应用程序对底层存储系统的具体实现无关,可以根据环境或成本需求轻松切换不同的存储方案。
  • 动态分配与自动回收:通过 StorageClass 和动态卷供应功能,集群能够根据用户需求自动创建和绑定 PV,同时也可以在 PVC 不再使用时按照指定策略回收存储资源。
  • 容灾与高可用:许多 Kubernetes 支持的存储系统本身就具备高可用和容灾特性,这有助于构建更加健壮的应用架构。

综上所述,在Kubernetes中选择持久化存储对接方式时,需要综合考虑数据可靠性、性能需求、可扩展性、成本和可运维性等因素,以选择最适合业务需求的存储系统。

标签:存储,K8S,持久,Kubernetes,AWS,存储系统,对接,Storage,k8S
From: https://www.cnblogs.com/huangjiabobk/p/18022354

相关文章

  • 在k8S中,rook概念是什么?
    在Kubernetes(k8s)中,Rook是一个开源的云原生存储编排系统,它为容器环境提供了一种便捷的方式来部署、管理和扩展多种分布式存储解决方案。Rook通过Operator模式将复杂的存储集群配置和管理任务自动化,使得存储服务能够与Kubernetes的资源模型无缝集成。具体来说:自定义......
  • 在k8S中,Fluentd的工作原理是什么?
    在Kubernetes(k8s)中,Fluentd作为日志收集器和转发器,其工作原理主要包括以下几个关键步骤:数据收集:Fluentd在Kubernetes集群中通常以DaemonSet形式部署,确保每个Node节点上都有一个Fluentd实例运行。Fluentd使用输入插件(InputPlugins)从各个容器的日志源获取数据......
  • 普罗米修斯监控k8s
    目录安装普罗米修斯1.下载kube-Prometheus文件3.解压文件安装4.配置端口转发5.浏览器访问6.配置dashboard7.卸载安装普罗米修斯k8s版本1.26安装过程非常的容易,非常的轻松,这篇文章只说安装步骤1.下载kube-Prometheus文件官网地址:https://github.com/prometheus-operator/k......
  • 在k8S中,Master节点高可用是如何做的?
    在Kubernetes集群中,为了确保Master节点的高可用性(HighAvailability,HA),通常采用以下几种策略和组件:APIServer高可用多实例部署:通过部署多个APIServer实例,并使用负载均衡器(如云服务提供商提供的负载均衡或内部负载均衡软件)将流量均匀分发到各个实例上。云端托管的Kuberne......
  • 在k8S中,QoS作用是什么?
    在Kubernetes(k8s)中,QoS(QualityofService,服务质量)是一种资源管理策略,它通过评估Pod对CPU和内存资源的需求与限制来决定在资源紧张时如何优先分配资源。QoS确保集群在面临资源竞争时能够公平地处理不同类型的Pod,并尽可能维持系统的稳定性和响应性。Kubernetes根据Pod的资源配置将......
  • 在k8S中,Helm优缺点是什么?
    Helm是Kubernetes的一个包管理工具,用于简化应用程序在Kubernetes集群上的安装、升级和管理过程。它采用chart(一种打包格式)来定义、配置和发布Kubernetes应用及其依赖关系。Helm的优点:标准化与复用:Helmchart提供了一种标准化的方式来描述Kubernetes资源,使得应用的部署变得可复......
  • 在k8S中,flannel和calico的作用和区别是什么?
    在Kubernetes(k8s)中,Flannel和Calico都是用于提供容器网络解决方案的CNI(ContainerNetworkInterface)插件,它们的主要作用是为集群中的Pod提供跨主机之间的网络通信能力。以下是两者的基本作用和主要区别:Flannel:作用:Flannel设计简洁且易于部署,主要用于实现集群内Pod间的IP地址空间......
  • 在k8S中,容器内日志是怎么采集的?
    在Kubernetes(k8s)中,容器内日志的采集通常采用以下几种方法:标准输出和错误流:Kubernetes默认将容器的标准输出(stdout)和标准错误输出(stderr)作为日志源。当容器运行时,这些信息会通过kubectllogs命令或API直接访问。Dockerdaemon会将这些输出捕获并存储在宿主机上的一个特定......
  • k8s网络
    k8s网络学习之前使用docker的时候,容器可以直接使用宿主机开放的端口,外部就可以访问了。现在使用k8s后就不能使用这种方法了,我们需要采用另外的方法实现外部访问内部pod。了解pod,跨主机数据包通信图同节点通信不同节点通信pod数据包,到cni0网关,通过flannel封装到udp,走......
  • 在k8S中,Pod生命周期是什么?
    在Kubernetes(k8s)中,Pod是应用的最小可部署单元,它包含了至少一个容器以及存储资源和网络标识符。Pod的生命周期从创建开始,经历一系列阶段直至最终终止或被删除。以下是Pod生命周期的主要阶段:创建(Creation):用户通过创建一个新的Pod对象来请求Kubernetes调度器为Pod分配资源。......