首页 >>  正文

硬盘smart缺失

来源:baiyundou.net   日期:2024-09-23

当今云原生环境中,Kubernetes(K8s)已成为既定的容器编排工具。随着 K8s 的普及,存储也成为 K8s 用户关注的一个重要问题:为了满足不同的场景需求,K8s 可以支持基于不同架构的多种存储方案。这些方案间有什么区别?用户应如何选择?本文将从架构角度出发,详细介绍本地磁盘、CSI 外接商用存储、K8s 原生存储 3 种 K8s 持久化存储方案,并在文末对比分析各个方案的能力与优劣势。

本地磁盘

首先,K8s 支持用户直接将本地盘插到服务器上作为存储设备。由于磁盘和应用系统中间的 I/O 路径最短,本地磁盘可以提供最佳的性能。同时 RAID 提供了一定程度的可靠性的保证,可以避免因单个磁盘故障而导致的数据丢失。因此,目前有大量用户采用这种方式为有状态的应用提供存储服务。

但同时,本地磁盘方案也在可用性和扩容方面存在着巨大的缺陷:

  • 本地磁盘无法提供节点级别的高可用,当物理节点发生故障时,应用无法被恢复到其他节点。如果业务系统有节点级高可用的要求,则必须由业务系统自己实现数据层面的高可用,这极大地增加了业务系统的复杂度。
  • 本地磁盘也无法满足 K8s 环境下的业务敏捷性需求:业务使用的存储空间受限于本地磁盘的大小,达到磁盘空间的上限后,增加磁盘的操作步骤复杂,要想使用新增的硬盘空间,必须手工修改 Pod 中的配置,难以实现敏捷的平滑扩容。此外,要想对物理节点内的硬盘实现高可用,就需要部署 RAID,这也是相当费时、费力、费钱的方案,难以实现在短时间内为大量的应用系统配置足够的存储容量。

此外,该方案无论是部署还是故障后的修复,都需要大量人力的参与,这使得本地存储方案的运维成本大大提高。同时由于节点间的存储空间无法共享,也很容易造成存储空间的浪费。

总的来说,本地磁盘的方案只适合在业务容器化的初期阶段进行小规模试用,或者作为较低重要性的数据存储使用,难以在大规模生产场景下被广泛使用。

CSI 外接商用存储

为 K8s 提供持久化存储的另一种方式是通过容器存储接口(CSI)将 K8s 平台与底层存储基础设施连接起来,从而允许 K8s 动态调配和配置存储、实现存储操作自动化。国际分析机构 GigaOm 将这些外接存储方案进一步划分为商用存储(Enterprise Storage)和 K8s 原生存储(Kuernetes-Native Storage)两个类型。

商用存储既包括软件定义式存储(如分布式存储),也包括传统的集中式存储。与专为 K8s 环境而设计的 K8s 原生存储不同,商用存储通常情况下主要为裸金属和虚拟化环境服务,由于在企业中被广泛使用,通过 CSI 插件让商用存储获得容器存储支持能力,是非常方便且经济的选择。

然而,正因为商用存储在本质上更侧重虚拟化时代的功能特性,一些厂商推出的存储方案对云原生环境的支持能力仍有欠缺。另外值得注意的是,CNCF 认可的“云原生存储”不仅包含 K8s 原生存储,也包含基于不同架构的商用存储方案,产品间特性与性能差异较大,因此需要用户多加甄别。

外接集中式存储

K8s 集群外接集中式存储提供了可远程访问共享存储的能力。和本地磁盘的方案相比,集中式存储解决了应用系统高可用的问题,当业务 Pod 所在的服务器发生故障时,可以通过共享存储在其他节点上把应用拉起来,很多基于集中式存储的商用存储方案也提供快照、克隆、容灾等高级功能。此外,由于数据集中存储,也一定程度解决了本地存储对磁盘空间浪费的问题。

然而,传统集中式存储的架构(存储控制器加盘柜的形式)决定了它不能很好满足云原生高并发与敏捷性需求:

  • 尽管集中式存储可以为单个业务系统提供较高的性能保证,但是当面临大量业务并发访问时,存储控制器则成为了性能瓶颈。如果想要满足大量业务对性能需求,需要采用多套集中式存储系统,存储系统的管理成本也会急剧上升。
  • 有碍于盘柜形式,集中式存储扩展能力较差,运维工作量较大,也难以应对短时间内大量 Volume 的并发创建和销毁需求,缺少云原生敏捷性。

外接分布式存储

通过将数据分散存储在网络上的多台独立设备上,分布式存储具有优秀的横向扩展能力和敏捷性,在对接基于分布式计算架构的云原生应用时,性能和高可用方面也远优于集中式存储。Gartner 在《如何在容器与 Kubernetes 环境进行存储选型和实践》分析报告中也强调,云原生数据服务应该使用的存储必须“基于分布式架构,可以任意规模部署”。

不过,市面上可用于 K8s 的分布式存储方案鱼龙混杂,一些产品仅基于开源技术简单包装,其性能、稳定性以及对 K8s 环境的支持能力都难以达到生产级别的标准。建议用户关注具备自研技术的存储方案,并以“生产级”为标准全方位评估产品性能、可用性、可靠性、安全性和可维护性。

K8s 原生存储

K8s 原生存储是专为支持容器而构建的存储方案。这种存储与 K8s 的集成程度更深,具有容器级别的数据服务粒度和自动化存储资源运维能力,也因此能够为 K8s 上的容器应用提供灵活扩展能力与自动化运维能力。

更多关于 K8s 原生存储的特性与能力,请参考这篇内容:一文看懂 K8s 持久化存储、云原生存储、容器原生存储、K8s 原生存储有何区别。

目前,主流 K8s 原生存储主要有两种类型:开源产品(以 Rook(基于 Ceph)和 Longhorn 为代表)和闭源商用产品(以 Portworx 和 IOMesh 为代表)。这两种方案都能提供 K8s 原生的数据存储功能,也各有利弊:开源产品没有采购成本,具有技术实力的客户可以自行开发,具有社区支持,但若出现严重故障或漏洞,很难像商业厂商那样通过专业团队提供快速相应、深度解决问题的服务支持。另外,通过性能测试可以看出,目前基于自研闭源技术的 K8s 存储方案,在性能和稳定性方面要优于开源产品。欲了解测试详情,请阅读:主流 K8s 持久化存储方案特性与性能对比(Longhorn / Rook / OpenEBS / Portworx / IOMesh)。

总结:不同架构的 K8s 持久存储方案优劣势分析

基于以上分析,结合 K8s 支撑生产级核心应用系统的存储需求(以常见的数据服务为业务场景),我们通过下面的表格整理了各个存储方案在架构、性能、存储资源共享*、扩展性、高可用、安全性、运维难度、K8s 原生支持**等方面的能力,供读者参考。

* 指支持有状态应用跨节点灵活调度、多 Pod 存储同时读写。

** 指与 K8s 紧密集成,可充分发挥 K8s 轻量化、自动化、标准化、敏捷等优势。

由此可见,K8s 原生存储对 K8s 环境有状态应用的支持能力,总体来说更具优势。目前,国内首款 K8s 原生的企业级分布式存储是志凌海纳 SmartX 推出的 IOMesh。IOMesh 以 SmartX 自主研发并经过生产环境验证的分布式块存储为核心,基于容器化部署模式,可无缝融入 K8s 原生的开发和运维体系,对 K8s 集群内的存储资源进行整合与管理,为运行在 K8s 集群上的各类有状态应用提供稳定、高性能的持久化存储资源。欲了解方案详情,您可阅读博客、观看产品解读视频,或点击获取《IOMesh 用户指南》。

参考文章:

1. Key Criteria for Evaluating Kubernetes Data Storage Solutions v4.0,GigaOm,2023

https://research.gigaom.com/report/key-criteria-for-evaluating-kubernetes-data-storage-solutions/

2. How Do I Approach Storage Selection and Implementation for Containers and Kubernetes Deployments,Gartner,2022

https://www.gartner.com/document/4013517

","gnid":"9fda42bfff18947ae","img_data":[{"flag":2,"img":[{"desc":"","height":"383","title":"","url":"https://p0.ssl.img.360kuai.com/t012669e862c1b7c8c1.jpg","width":"900"},{"desc":"","height":"889","title":"","url":"https://p0.ssl.img.360kuai.com/t01f84497db5f55b8a2.jpg","width":"1469"},{"desc":"","height":"721","title":"","url":"https://p0.ssl.img.360kuai.com/t01882cc85c2b71d786.jpg","width":"1008"}]}],"original":0,"pat":"art_src_3,fts0,sts0","powerby":"hbase","pub_time":1693465500000,"pure":"","rawurl":"http://zm.news.so.com/0eb887b9e8f359c25d16449e43de6f35","redirect":0,"rptid":"12f1d9843e458023","rss_ext":[],"s":"t","src":"志凌海纳SmartX","tag":[],"title":"一文了解 K8s 持久化存储主流架构优劣势

沃定关4637我的惠普笔记本找不到开机装置 -
利侍辉18699267612 ______ 按电源键反复开关机试试,放一段时间试试,确实不可以就重装系统吧,如果自己重装不了,花30元到维修那里找维修的人帮助您.只要自己的电脑不卡机、蓝屏、突然关机,开机就不会这样了.有问题请您追问我.

沃定关4637怎么知道电脑是硬盘坏了,电脑动作速度与硬盘大小有没有关系??
利侍辉18699267612 ______ 如果只是一般的坏道,那么会出现频繁的死机.电脑运行非常的慢.如果重装系统的话.也很有可能装不进去!如果坏道在主盘.那么连系统都进不去了! 还有一种坏法是硬盘的电路坏了.这种方法不可修.电脑运行后显示找不到硬盘,只能换块了:( ...

沃定关4637这些都是什么啊
利侍辉18699267612 ______ BIOS 选项. 当前页是基础信息

沃定关4637电脑无法从硬盘启动,只有光标在左上角闪.
利侍辉18699267612 ______ 1.没有操作系统请安装 2.使用PE系统进入修复开机引导功能(如果PE无效的话,可能主板出问题了??尽管几率不大!!) ------------------------------------------ 很正常!!USB在非视窗下兼容性不如老式的PS\2接口!!你换个PS\2接口的键盘再试试应该可以识别的!!!!!!!!!!

沃定关4637如何找回丢失的硬盘分区信息 -
利侍辉18699267612 ______ 在使用电脑时发生意外死机,重启后发现硬盘所有的分区都不见了,能否把分区信息找回来? 可以尝试使用DiskGenius这个软件来恢复硬盘分区表.该软件的“工具”菜单中有一个重建分区表的功能,主要用于通过未被破坏的分区引导记录信息重新建立分区表.它有“自动”和“交互”两种工作方式.前者保留发现的每一个分区,适用于大多数情况.后者对发现的每一个分区邹给出提示,由用户选择是否保留.在分区重建过程中,DiskGenius会把搜索到的分区立即显示在屏幕上,但并不存盘.

沃定关4637如何将电脑上的文件传到手机上 -
利侍辉18699267612 ______ 三星手机连接电脑传输文件如照片、视频等,请操作:1.通过数据线将手机和电脑连接,连接成功后,电脑桌面会弹出手机设备页面-点击"打开设备以查看文件"(或进入电脑/计算机-查找手机设备图标).以手机中照片复制到电脑为例,打开...

沃定关4637请问:一开机就出现这个,要按F1键才能继续开机,出现这个的原因是什么? 怎么解决?谢谢!有图求真相 -
利侍辉18699267612 ______ 这是主板的一个功能 如果上次关机或者重启前出现了硬软件报错 在启动主板的时候就会有这个提示 如果每次都有...

沃定关4637你好麻烦你下,请问我的笔记本用360重装系统后,已经修补好了漏洞,但 -
利侍辉18699267612 ______ 这种情况建议重新启动试试,如果开机有检查磁盘的过程,不要跳过,等待完成!如果看不到就右键点计算机---管理---存储---磁盘管理,看下磁盘状态!有可能硬盘已出现故障还可以直接使用U盘PE系统,看下能否看到E盘,检查下硬盘的SMART信息,看有没有错误或者警告的项目,估计是有,请及时更换硬盘!如果E盘有重要资料,取出硬盘,挂到其他台式机上看看,如果仍然缺少E盘,建议找专业数据恢复公司来处理

沃定关4637笔记本响应慢,硬盘长时间读取数据是什么原因 -
利侍辉18699267612 ______ 硬盘的磁头老化或者硬盘上有坏道.建议尽早更换硬盘备份重要数据.

沃定关4637系统文件丢失怎么办
利侍辉18699267612 ______ 如果可以进入桌面,在同版本的系统里拷贝文件即可.... 你说的系统文件丢失...那就需要把丢失的文件补上,,又么的盘,只能从同版本的系统里拷贝缺失文件了.... 如果你做了系统镜像的话,恢复一哈系统就行了..这样最简...

(编辑:自媒体)
关于我们 | 客户服务 | 服务条款 | 联系我们 | 免责声明 | 网站地图 @ 白云都 2024