<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>oracle-cloud on </title>
    <link>/tags/oracle-cloud/</link>
    <description>Recent content in oracle-cloud on </description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en</language>
    <lastBuildDate>Sat, 07 Mar 2026 22:45:00 +0800</lastBuildDate><atom:link href="/tags/oracle-cloud/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Oracle Cloud K3s 迁移到 Cilium：一次把网络、密钥和状态数据都翻出来的升级</title>
      <link>/posts/oracle-k3s-cilium-migration/</link>
      <pubDate>Sat, 07 Mar 2026 22:45:00 +0800</pubDate>
      
      <guid>/posts/oracle-k3s-cilium-migration/</guid>
      <description>背景 我的 homelab 现在是双集群结构：
homelab 跑在 Proxmox 上，负责 Vault、ZITADEL、ArgoCD、Grafana、Kopia 这类核心服务。 oracle-k3s 跑在 Oracle Cloud A1 免费机上，负责 Homepage、Miniflux、KaraKeep、Uptime Kuma、Timeslot 等轻量工作负载。 前一阵我先把 homelab 主集群从 Flannel 切到了 Cilium。迁移完成后，整个架构留下了一个非常明显的不对称：一边是 Cilium，一边还是 K3s 默认 Flannel。
这件事短期看没有坏处，但中长期会越来越烦：
网络问题的排障路径不一致。 两套集群文档会慢慢分叉。 以后不管是做 ClusterMesh PoC，还是只是想统一认知模型，都会被这块技术债反咬。 所以这次我决定把 oracle-k3s 也迁到 Cilium。
这次迁移真正的目标 表面目标是把 CNI 从 Flannel 换成 Cilium，但真正目标其实有三个：
统一双集群数据面：以后提到 Pod 网络、Hubble、NetworkPolicy，两个集群说的是同一套东西。 验证恢复能力：既然是重装 K3s，就顺手检验一下 GitOps、Vault、备份、PVC 恢复到底是不是纸上谈兵。 识别复杂度来源：哪些问题是 Cilium 带来的，哪些其实是之前就存在，只是这次被重建过程暴露出来了。 迁移步骤概览 最终流程大致是这样：
备份本地 PVC 数据 -&amp;gt; 卸载 K3s -&amp;gt; 关闭 Flannel，重装 K3s -&amp;gt; 安装 Cilium Helm chart -&amp;gt; 重装 ESO / Traefik 配置 / 各类 manifests -&amp;gt; 修 Vault Secret / Cloudflare Tunnel / 探针 / 数据库连接 -&amp;gt; 恢复 PVC 数据 -&amp;gt; 验证所有对外服务 其中真正耗时间的不是安装 Cilium，而是安装完以后把整条依赖链重新扶起来。</description>
    </item>
    
  </channel>
</rss>
