<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Kubernetes on IT技术交流</title><link>http://shimamura.vip/tags/kubernetes/</link><description>Recent content in Kubernetes on IT技术交流</description><generator>Hugo</generator><language>zh-cn</language><lastBuildDate>Mon, 27 Jul 2026 15:28:53 +0800</lastBuildDate><atom:link href="http://shimamura.vip/tags/kubernetes/index.xml" rel="self" type="application/rss+xml"/><item><title>Kubernetes回滚导致Git代码与线上版本不一致问题分析</title><link>http://shimamura.vip/posts/kubernetes_version_drift/</link><pubDate>Mon, 27 Jul 2026 15:28:53 +0800</pubDate><guid>http://shimamura.vip/posts/kubernetes_version_drift/</guid><description>&lt;p&gt;在基于 Kubernetes 的 CI/CD 流程中，版本管理是非常重要的一环。&lt;/p&gt;
&lt;p&gt;在实际搭建 HybridBlog 混合云 DevOps 平台过程中，我遇到了一个典型问题：&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Git仓库中的文章已经删除，但是通过 Kubernetes 版本回滚后，线上网站中的文章又重新出现。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;这个问题表面看起来像是 Kubernetes 回滚异常，实际上属于 &lt;strong&gt;源码版本与运行环境版本不一致问题&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;本文记录问题产生原因、排查过程以及解决方案。&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="一项目cicd流程"&gt;一、项目CI/CD流程&lt;/h2&gt;
&lt;p&gt;当前博客系统采用以下发布流程：&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;Gitea
 |
 | git push
 ↓
 Jenkins
 |
 | docker build
 ↓
 Harbor
 |
 | image push
 ↓
 Kubernetes Deployment
 |
 ↓
 Hugo静态博客
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;具体过程：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;开发者修改 Hugo Markdown 文件&lt;/li&gt;
&lt;li&gt;提交代码到 Gitea&lt;/li&gt;
&lt;li&gt;Gitea Webhook 触发 Jenkins&lt;/li&gt;
&lt;li&gt;Jenkins 拉取代码并构建 Docker 镜像&lt;/li&gt;
&lt;li&gt;镜像上传到 Harbor&lt;/li&gt;
&lt;li&gt;Jenkins 使用 kubectl 更新 Kubernetes Deployment&lt;/li&gt;
&lt;li&gt;Pod 使用新镜像提供网站服务&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;正常情况下：&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;Git代码

Docker镜像

Kubernetes运行版本
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;三者保持一致。&lt;/p&gt;</description></item></channel></rss>