网易首页 > 网易号 > 正文 申请入驻

Velero把70%备份变废纸,运维凌晨3点才发现

0
分享至


2024年某电商平台大促,凌晨2点集群崩溃,运维按预案切到备份集群——恢复失败。排查6小时后结论:备份文件损坏,最近3个月数据全丢。这不是孤例,Gartner数据显示,未经测试的备份在真实灾难中失败率高达70%

Kubernetes备份工具Velero(原Heptio Ark)被CNCF毕业项目光环笼罩,但"能备份"和"能恢复"是两件事。本文用MinIO自建S3后端,走完一条可验证的备份-恢复闭环。所有配置可直接复制,但那个70%的坑,你得自己跳过去才算真懂。

MinIO:把云厂商的S3账单掐死在本地

Velero需要对象存储当"仓库",AWS S3、阿里云OSS都能接。但开发环境、涉密场景、或者单纯想省钱的团队,MinIO是更干净的选择——一个二进制文件跑起来的S3兼容存储,没有API调用费,没有 egress 流量焦虑

Docker Compose一键启动:

```yaml version: '3.7' services: minio: image: minio/minio:latest ports: - "9000:9000" # S3 API端口 - "9001:9001" # 管理控制台 environment: MINIO_ROOT_USER: velero MINIO_ROOT_PASSWORD: Velero123StrongPass! command: server /data --console-address ":9001" ```

注意那个`mc`服务——MinIO Client在容器里等着,MinIO健康后自动创建`backup-bucket`并设公开读。很多人漏了这步,Velero后面会报`NoSuchBucket`。

启动后访问`http://<宿主机IP>:9001`,别用localhost——Velero在集群里跑,localhost指向的是Pod自己,不是宿主机。这是新手踩坑第一名。

Velero安装:Helm里的"云凭证"陷阱

Velero 1.15之后推荐用Helm部署,但官方文档有个沉默的假设:你在公有云。自建MinIO时,凭证要手动塞进Secret。

先加仓库:


```bash helm repo add vmware-tanzu https://vmware-tanzu.github.io/helm-charts helm repo update ```

关键在`velero-secret.yaml`——AWS SDK的格式,填的是MinIO的账号:

```yaml apiVersion: v1 kind: Secret metadata: name: velero-secrets namespace: velero stringData: cloud: | [default] aws_access_key_id = velero aws_secret_access_key = Velero123StrongPass! ```

Helm values里指定S3 URL时,必须用`forcePathStyle: true`——MinIO不支持虚拟主机风格的bucket域名(如`bucket.minio.local`),只认`minio.local/bucket`这种路径风格。这选项默认关闭,关了就连不上。

完整values片段:

```yaml configuration: backupStorageLocation: - name: default provider: aws bucket: backup-bucket config: region: minio s3ForcePathStyle: "true" s3Url: http://<宿主机IP>:9000 ```

部署完看Pod日志,`level=info msg="Backup storage location valid"`才算过。报错`RequestError: send request failed`?回去检查9000端口通不通,以及IP是不是写成了localhost。

备份与恢复:命令行背后的"一致性"博弈

Velero的备份粒度是Namespace,命令很简单:

```bash velero backup create prod-backup --include-namespaces production --wait ```

但`--wait`只是等API返回,不代表数据落盘。PVC快照依赖CSI驱动,裸Minikube环境可能不支持。用`--snapshot-volumes=false`跳过快照,只备份YAML定义,是本地测试的务实选择


恢复命令同样直白:

```bash velero restore create --from-backup prod-backup --wait ```

这里有个产品思维细节:Velero的恢复是"非破坏性合并"——目标Namespace已存在的资源不会被覆盖,只会创建缺失的。这意味着反复恢复不会把在线数据冲掉,但也意味着你改过的配置不会自动回滚。要完全还原,得先删Namespace再恢复。

验证恢复是否成功,别只看Pod Running。进容器查数据,对比备份前后的文件哈希。很多运维只到"服务起来了"这一步,数据静默损坏就是从这里埋下的

那个70%:为什么备份工具救不了懒人

Velero支持定时备份(Schedule CRD),可以设`@every 24h`自动执行。但自动备份不等于自动验证——存储桶里有文件,和文件能解析、能恢复、数据完整,是三级不同的事。

Netflix的混沌工程团队有个做法:每月随机选一个备份,在隔离环境恢复全量,跑一遍核心业务流程。他们管这叫"备份消防演习"。成本不高,但能提前发现备份脚本漏了Secret、PVC快照跨AZ失败、或者新加的CRD不在备份范围

Velero 1.15新增了`restore-helper`镜像的自定义配置,但文档里埋了一句:默认镜像从Docker Hub拉,国内环境可能超时。Helm values里改`image.repository`到镜像源,是生产部署的必选项。

MinIO侧也有坑——单节点部署没有纠删码,磁盘挂了数据就丢。生产用分布式模式,至少4节点起步:`minio server http://minio{1...4}/data{1...4}`。这不是Velero的问题,但备份链的可靠性取决于最弱一环。

回到开头那个70%。Velero把备份变成了`kubectl`一样的日常操作,但"操作便捷"和"结果可信"之间,隔着测试、验证、和一套把恢复纳入SLA的运维流程。工具负责把数据搬过去,人负责证明搬过去的东西还能搬回来

你的团队上次成功恢复备份是什么时候?如果答案是"还没试过",那Velero装得再顺,也只是给那个70%的失败率交了份子钱。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
春遇:一种关于意外的温柔碰撞

春遇:一种关于意外的温柔碰撞

疾跑的小蜗牛
2026-03-28 23:20:35
第二个 “富士康” 诞生,年收7771亿,员工96万,郭台铭后悔了吗

第二个 “富士康” 诞生,年收7771亿,员工96万,郭台铭后悔了吗

老谢谈史
2026-03-28 21:39:04
黄金白银深夜急速飙涨,国内多家品牌金饰克价逼近1400元

黄金白银深夜急速飙涨,国内多家品牌金饰克价逼近1400元

财闻
2026-03-28 18:14:24
胡塞陪葬下场参战,伊朗豢养的这群儿子还真孝顺

胡塞陪葬下场参战,伊朗豢养的这群儿子还真孝顺

移光幻影
2026-03-28 22:33:28
罗马诺:前皇马前锋何塞卢已决定自由身离开加拉法体育

罗马诺:前皇马前锋何塞卢已决定自由身离开加拉法体育

懂球帝
2026-03-28 21:40:23
四年不生孩子的鸮鹦鹉终于交配了!但太能生,被发配到单身汉岛…?

四年不生孩子的鸮鹦鹉终于交配了!但太能生,被发配到单身汉岛…?

万物杂志
2026-03-27 06:47:40
这跟不穿有啥区别?内裤外露、开叉开到腰,有钱人的时尚真看不懂

这跟不穿有啥区别?内裤外露、开叉开到腰,有钱人的时尚真看不懂

潮鹿逐梦
2026-03-02 17:19:02
也门胡塞武装:向以色列发射了一枚导弹作为警告

也门胡塞武装:向以色列发射了一枚导弹作为警告

环球网资讯
2026-03-28 14:57:06
疯了!17家券商年报全盈利,中信狂赚302亿,黑马暴增423%

疯了!17家券商年报全盈利,中信狂赚302亿,黑马暴增423%

慧眼看世界哈哈
2026-03-28 14:29:11
曾经中国第一车模兽兽翟凌宣布回归,容貌和风格大变

曾经中国第一车模兽兽翟凌宣布回归,容貌和风格大变

微微热评
2026-03-23 12:30:06
女子深夜打车回家,发现司机绕路她准备报警,司机:你仔细看后面

女子深夜打车回家,发现司机绕路她准备报警,司机:你仔细看后面

千秋文化
2026-02-12 20:06:26
伊朗导弹撑了近一个月,中国能撑多久?俄专家断言:半小时定胜负

伊朗导弹撑了近一个月,中国能撑多久?俄专家断言:半小时定胜负

阿雹娱乐
2026-03-25 11:03:11
要不是先帝中秋宴当众捉奸魏严和淑妃,谢征永不知,母亲自缢真相

要不是先帝中秋宴当众捉奸魏严和淑妃,谢征永不知,母亲自缢真相

慢半拍sir
2026-03-27 23:30:05
保卫处招聘要求“京内生源、硕士及以上学历”,北师大回应:事业编制,不是“部分网友认为的保安”

保卫处招聘要求“京内生源、硕士及以上学历”,北师大回应:事业编制,不是“部分网友认为的保安”

大象新闻
2026-03-27 20:45:06
为什么闲鱼很多卖家只支持自提?网友:等你碰上到手刀的就老实了

为什么闲鱼很多卖家只支持自提?网友:等你碰上到手刀的就老实了

另子维爱读史
2026-03-22 22:34:48
一个关于中国人长久的谣言因为昨天张雪峰的突然离世从而被打破

一个关于中国人长久的谣言因为昨天张雪峰的突然离世从而被打破

动物奇奇怪怪
2026-03-28 09:40:42
剧情反转!重庆举报案持续发酵,纪检部门火速介入

剧情反转!重庆举报案持续发酵,纪检部门火速介入

好笑娱乐君每一天
2026-03-22 07:03:02
心如死灰!一乳腺癌患者哭诉抗癌1年,在丈夫外套翻出他达拉非…

心如死灰!一乳腺癌患者哭诉抗癌1年,在丈夫外套翻出他达拉非…

火山詩话
2026-03-27 06:26:22
不顾央视警告顶风作案,与刘涛传出绯闻的杨烁,终究还是自食恶果

不顾央视警告顶风作案,与刘涛传出绯闻的杨烁,终究还是自食恶果

小兔子的快乐
2026-03-29 00:45:58
大爷每月电费1800,儿子关掉电闸,第二天警方上门,你邻居出事了

大爷每月电费1800,儿子关掉电闸,第二天警方上门,你邻居出事了

奶茶麦子
2026-03-28 15:28:10
2026-03-29 02:08:49
灰度测试中
灰度测试中
生活正在重构,目前还在灰度测试阶段,暂不全量发布。
345文章数 2关注度
往期回顾 全部

科技要闻

华为盘古大模型负责人王云鹤确认离职

头条要闻

美媒:和欧盟"外长"发生激烈交锋 鲁比奥"显然很恼火"

头条要闻

美媒:和欧盟"外长"发生激烈交锋 鲁比奥"显然很恼火"

体育要闻

“我是全家最差劲的运动员”

娱乐要闻

陈牧驰陈冰官宣得子 晒一家三口握拳照

财经要闻

卧底"科技与狠活"培训:化工调味剂泛滥

汽车要闻

置换补贴价4.28万起 第五代宏光MINIEV正式上市

态度原创

家居
游戏
手机
健康
公开课

家居要闻

曲线华尔兹 现代简约

《异替》现已登陆Steam

手机要闻

华为手机全面回归!畅享90 Pro Max下周首销:1699元起

干细胞抗衰4大误区,90%的人都中招

公开课

李玫瑾:为什么性格比能力更重要?

无障碍浏览 进入关怀版