- 08/29更新:
貌似docker1.13以上版本会多一条规则,导致这个问题:
iptables -P FORWARD DROP
执行以下即可:
iptables -P FORWARD ACCEPT
- 08/25 原文:
最近通过kubeadm安装kubernetes,选择网络flannel时发现,跨vm的容器之间网络不通,测试过0.8.0和0.7.1都是同样的问题。
经过研究发现,在所有node上添加以下iptables 后能解决:
iptables -I FORWARD 1 -i cni0 -j ACCEPT -m comment --comment "flannel subnet"
iptables -I FORWARD 1 -o cni0 -j ACCEPT -m comment --comment "flannel subnet"
iptables -t nat -A POSTROUTING -s 10.244.0.0/16 ! -d 10.244.0.0/16 -j MASQUERADE