1.7 KiB
1.7 KiB
03-05-k3s Cloudflare Tunnel 配置接入
本文只讲 K3s 侧如何接入 Cloudflare Tunnel(
cloudflared部署、验证、排查)。
前置条件
- 已完成
01-04-cloudflare-tunnel.md - 已拿到 Tunnel Token 或凭据文件
- Traefik 已可用(单节点/多节点均可)
操作步骤
-
在 K3s 中创建保存 token/凭据的 Secret + Deployment。唯一真源:
ansible/files/cloudflare-tunnel/cloudflared.yaml(替换TUNNEL_TOKEN占位符)。 -
部署
cloudflared并确保重启后自动生效(按实际路径选择其一复制执行):
# 默认路径
kubectl apply -f /var/lib/rancher/k3s/server/manifests/cloudflared.yaml
kubectl -n kube-system rollout status deploy/cloudflared
# 自定义 data-dir(如 /storage)
kubectl apply -f /storage/server/manifests/cloudflared.yaml
kubectl -n kube-system rollout status deploy/cloudflared
- 将
cloudflared.yaml放入上述 manifests 目录后,K3s 重启时会自动加载。
建议要点:
- 使用官方
cloudflared镜像 - Secret 不写死在明文 YAML
cloudflared放在kube-system或专用 namespace
验证命令
kubectl -n kube-system get pods | grep cloudflared
kubectl -n kube-system logs deploy/cloudflared --tail=100
预期
- 日志中可见 tunnel connected
- 访问域名可到达 Traefik 路由
失败排查
- 域名解析正常但访问超时:先看 Tunnel 状态与
cloudflared日志 - 返回
404:通常是 Traefik 路由未命中 - 返回
502:优先排查后端链路(06-01-k3s-networkpolicy-故障排查.md)
下一步
05-03-k3s-安装gitlab-含runner.md05-01-k3s-部署homer首页面板.md