前几周又把家庭集群从 docker swarm 切到 k3s 了,我把系统全装上了最新的 debian ,然后遇到好几个坑。
## 一、 [kilo]( https://kilo.squat.ai/docs/introduction) 会一直报规则不支持
容器会一直报 iptables 某个规则不支持,请使用 nftables...
但是能正常安装,使用也没问题,但是正常几天后,会突然出现集群网络不通的问题,不知道是不是也是 nftables 的问题
排查一路是发现 kilo 生成的 WireGuard ip 是一个旧的 ip ,一直没变
最后没找到解决方案,所以换成 tailscale 了,k3s 唯一给出的 vpn 方案。
## 二、tailscale subnet 无效
tailscale subnet 按官方教程配置好了,结果只能 ping 通装了 tailscale 的那个节点的内网 ip ,ping 不通其它的,看 iptables 规则也是有的。
只能搜索引擎慢慢翻,试了几种都没用,最后 reddit 找到个说修改 [firewall-mode]( https://tailscale.com/kb/1294/firewall-mode#how-to-set-the-firewall-mode) 的,加上就解决了...
```bash
TS_DEBUG_FIREWALL_MODE=nftables
```
行吧,好歹是解决了。
## 三、 安装 Calico 替换 flannel ,来解决获取不到用户真实 ip 的问题
装上这个之后,直接给我集群干崩了,无限重启。
翻官网 issues ,给得方案是不要使用 nftables https://github.com/projectcalico/calico/issues/8025
绷不住了,一路踩坑过来,是不是不能用 nftables 了,**有人用上了吗**
关键是 debian 最新的两个版本,默认使用 nftables |
|