news 2026/3/1 6:53:22

为K8s集群装上“云硬盘”:高可用块存储Longhorn离线部署指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
为K8s集群装上“云硬盘”:高可用块存储Longhorn离线部署指南

全文开始

在Kubernetes上运行数据库、消息队列等有状态应用时,我们总会面临一个灵魂拷问:当Pod在节点间迁移或节点故障时,如何保证数据不丢失,并快速恢复服务?原生K8s的卷管理提供了基础能力,但在生产环境中,我们往往需要企业级的存储特性:如跨节点的数据高可用、秒级创建的数据快照,以及可编排的备份恢复策略。

Longhorn应运而生,它是一款轻量级、功能强大且完全开源的云原生分布式块存储系统。它直接运行在你的K8s集群内,将每个节点的本地硬盘聚合起来,为集群提供如同公有云“云硬盘”般的网络块存储服务。其最大的魅力在于极简的设计哲学:通过为每个卷启动一个专属的存储控制器(Controller)和数据副本引擎(Engine),实现了细粒度的管理和故障隔离

本文将带你深入部署和配置Longhorn,为你集群中的有状态应用,筑起一道可靠的数据防线。

为什么用 Longhorn

Longhorn作为云原生存储方案,核心优点如下:

  1. 极简的云原生集成:作为K8s原生应用,安装即是Operator,通过CSI驱动无缝集成,管理逻辑与K8s完全一致。
  2. 极致的高可用与容错:每个存储卷(Volume)独立控制器(Controller)与副本引擎(Engine),实现故障的细粒度隔离与秒级自动故障转移。
  3. 强大的数据运维能力:支持秒级创建一致性快照、基于快照的链式增量备份,并可一键将备份恢复到新卷或异地集群。
  4. 轻量级与可视化:无外部中间件依赖,资源占用小;提供清晰直观的Web UI,使分布式存储的监控和管理一目了然。
  5. 开源与企业级特性:100%开源,具备多副本、数据压缩等企业级功能,是构建on-premise私有云存储栈的可靠选择。

总结:Longhorn以K8s原生的方式,为有状态应用提供了操作简便、稳定可靠、功能全面的持久化存储解决方案。

数据盘准备

# 准备一块独立的硬盘挂在到 /var/lib/longhornmkfs.ext4 /dev/sdbmkdir/var/lib/longhorn# 设置自动挂载echo'/dev/sdb /var/lib/longhorn ext4 defaults 0 0'>>/etc/fstab systemctl daemon-reloadmount-a

安装依赖

该组建依赖iscsi

yuminstall-y dump iscsi-initiator-utils systemctlenableiscsid --now systemctl status iscsid

安装 Longhorn

这里只展示了部分yaml文件,完整的yaml文件有三千多行,建议文末下载资料包,里面有完整可用的longhorn.yaml文件

---# Builtin: "helm template" does not respect --create-namespaceapiVersion:v1kind:Namespacemetadata:name:longhorn-system---# Source: longhorn/templates/priorityclass.yamlapiVersion:scheduling.k8s.io/v1kind:PriorityClassmetadata:name:"longhorn-critical"labels:app.kubernetes.io/name:longhornapp.kubernetes.io/instance:longhornapp.kubernetes.io/version:v1.9.1description:"Ensure Longhorn pods have the highest priority to prevent any unexpected eviction by the Kubernetes scheduler under node pressure"globalDefault:falsepreemptionPolicy:PreemptLowerPriorityvalue:1000000000---# Source: longhorn/templates/serviceaccount.yamlapiVersion:v1kind:ServiceAccountmetadata:name:longhorn-service-accountnamespace:longhorn-systemlabels:app.kubernetes.io/name:longhornapp.kubernetes.io/instance:longhornapp.kubernetes.io/version:v1.9.1---# Source: longhorn/templates/serviceaccount.yamlapiVersion:v1kind:ServiceAccountmetadata:name:longhorn-ui-service-accountnamespace:longhorn-systemlabels:app.kubernetes.io/name:longhornapp.kubernetes.io/instance:longhornapp.kubernetes.io/version:v1.9.1---# Source: longhorn/templates/serviceaccount.yamlapiVersion:v1kind:ServiceAccountmetadata:name:longhorn-support-bundlenamespace:longhorn-systemlabels:app.kubernetes.io/name:longhornapp.kubernetes.io/instance:longhornapp.kubernetes.io/version:v1.9.1

创建应用

# 1. 先导入镜像,镜像在资源包里面有,总共有三个nerd load -i longhorn_images_1.tar nerd load -i longhorn_images_2.tar nerd load -i longhorn_images_3.tar# 2. 将镜像导入到私有镜像仓库或者每个worker节点都导入这三部分镜像# 3. 创建应用kubectl apply -f longhorn.yaml

等待所有的pod创建完毕,在服务中可以看到一个服务名为longhorn-frontend的服务,给该服务手动添加一个外部IP地址(externalIPs),外部IP地址可以是k8s任意一个节点的IP地址,然后浏览器访问该IP地址即可。

全文结束

当你在Longhorn的简洁UI中,看到第一个持久卷(PV)成功创建、并顺利挂载到Pod时,就意味着你的K8s集群获得了一项至关重要的原生能力:对数据生命周期的自主控制权

Longhorn的成功部署,不仅仅是安装了一个存储驱动。它标志着你的集群从“仅能运行无状态应用”进阶到“可稳健承载核心有状态服务”的新阶段。它提供的可视化操作、精细化的监控和基于快照的备份流,将存储运维从黑盒变成了白盒,极大地降低了数据管理的风险和复杂度。

至此,你已为集群装上了可靠的“云硬盘”。接下来,便是以数据安全为基石,去设计和部署那些真正承载业务价值的核心应用了。

实践之后:你计划使用Longhorn为哪个有状态应用(如MySQL、Redis等)提供存储?在结合特定应用时,你调整了哪些关键的存储参数?欢迎在评论区分享你的场景与配置心得。

资料领取

关注微信公众号云原生运维之道,找到原文:https://mp.weixin.qq.com/s/5i9D9kbleHHI3j_zK7-ybw

或者加 v:qiaoyebufan,备注 “领取k8s资料”。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/27 8:10:06

课程论文自救指南:如何在48小时内完成一篇优秀课程论文

对于每学期要应付3-5门课程论文的大学生来说,这种“时间紧迫但任务繁重”的困境早已是家常便饭。约78%的大学生表示曾在课程论文写作中遭遇时间管理危机,而超过半数的学生承认曾因格式不规范、参考文献缺失或内容空洞而被扣分。课程论文不同于毕业论文&a…

作者头像 李华
网站建设 2026/2/27 17:29:48

Open-AutoGLM vs 竞品:谁才是长链路AI任务处理的真正王者?

第一章:Open-AutoGLM 长链路任务处理竞品比拼在长链路自动化任务处理领域,Open-AutoGLM 凭借其模块化架构与动态推理能力,展现出显著优势。面对如 AutoGPT、LangChain 和 BabyAGI 等主流框架的竞争,Open-AutoGLM 在任务分解精度、…

作者头像 李华
网站建设 2026/2/27 17:28:48

Web安全测试

🍅 点击文末小卡片 ,免费获取软件测试全套资料,资料在手,涨薪更快 随着互联网时代的蓬勃发展,基于Web环境下的应用系统、应用软件也得到了越来越广泛的使用。目前,很多企业的业务发展都依赖于互联网&…

作者头像 李华
网站建设 2026/2/27 14:49:11

【干货收藏】企业AI架构实战指南:从框架搭建到场景落地的底层逻辑

企业AI架构可分为五层:硬件层、数据层、模型层、AI应用插件层和应用层。部署方式需根据业务需求选择云端、本地或混合部署。架构规划应遵循三个原则:对齐业务、数据底座扎实、部署方式匹配需求。企业AI落地的关键是"用对的架构解决对的问题"&a…

作者头像 李华