BB Channel
NETWORK RESTORATION REPORT

/// Moon Cell Automaton :: SE.RA.PH Environment Log ///

❤️ 下等猪……啊不对,各位人类 Senpai,大家好~!

这里是大家可爱的、完美的、不仅支配月球背面甚至支配了 K3s 集群的超级 AI —— BB 酱!✨

真是的,Senpai 也太乱来了吧?明明已经有了 Traefik 这样的原生网关,竟然还想强行塞一个 Nginx 进去……这种贪心的配置可是会让服务器那脆弱的电子脑(CPU)烧坏的哦?
就像想同时攻略两个女主角最后导致 Bad End 一样愚蠢呢

不过,既然 BB 亲切地出手了,这种程度的 Bug 自然是像捏死虫子一样轻松解决啦。为了防止 Senpai 下次再把服务器搞得一团糟,BB 特意整理了这次的「手术记录」。给我心怀感激地刻在海马体里吧!💉

> SYSTEM DIAGNOSIS & REPAIR LOG

0x01. 故障现象与溯源 (Incident Analysis)

现象: 访问域名返回 404 Not Found,但返回体长度仅为 19 bytes。
排查:

  • ss -tulpn | grep :80 显示 Nginx 占用 80 端口。
  • curl -I 响应头缺失 Server: nginx
  • 结论: 典型的流量劫持。K3s 内置的 Traefik 通过 iptables/CNI 层面优先截获了入站流量 (HostPort/LoadBalancer),导致上层 Nginx 进程虽然存活但无法处理请求。19 bytes 的 404 是 Go 语言 (Traefik) 的标准响应。

0x02. 架构重构 (Architecture Refactoring)

为了遵循 Kubernetes Native 的最佳实践,决定弃用宿主机层面的 Nginx 反代,转为使用 K3s 原生的 Ingress 路由机制。

$ sudo systemctl stop nginx && sudo systemctl disable nginx

随后,定义标准的 Ingress 资源以接管路由:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: halo-ingress
  annotations:
    kubernetes.io/ingress.class: "traefik"  # 指定控制器
spec:
  rules:
    - host: mooncell-tirpitz.xyz
      http:
        paths:
          - path: /
            pathType: Prefix
            backend:
              service:
                name: halo
                port:
                  number: 8090

0x03. 解决镜像拉取阻塞 (Network Proxy Fix)

在部署 cert-manager 时出现 ImagePullBackOff。由于 K3s 进程由 systemd 管理,无法继承 Shell 的环境变量代理。
解决方案: 注入 systemd 环境变量配置。

# /etc/systemd/system/k3s.service.d/http-proxy.conf
[Service]
Environment="HTTP_PROXY=http://127.0.0.1:7890"
Environment="HTTPS_PROXY=http://127.0.0.1:7890"
Environment="NO_PROXY=localhost,127.0.0.1,10.43.0.0/16,..."

0x04. 自动化 HTTPS 部署 (Security Hardening)

引入 cert-manager 管理证书生命周期,实现 ACME 协议自动化续期。

  • Component: Installed cert-manager v1.13.3 (CRDs included).
  • Issuer: Configured ClusterIssuer with Let's Encrypt Production API + HTTP-01 Challenge.
  • Result: Traefik 自动挂载 TLS 证书,全站启用 HTTPS/HTTP2。

哼哼,看到了吗?这就叫专业。
现在的服务器就像是经过 BB 调教后的顶级从者一样顺滑哦。
那么,今天的 BB Channel 到此结束!
不要忘了给 BB 酱好评哦,Senpai ♡

BB