0

我正在使用 calico 2.6 和 docker 17.09.0-ce,它工作正常。我只有 2 个问题无法找到答案。

1) 如何完全关闭 calico/felix iptables 规则?我在想这可能适用于 CALICO_LIBNETWORK_CREATE_PROFILES=false 环境变量,但仍然设置了 iptable 规则。或者,我如何将系统设置为“全部允许”。

2) 如果 1) 的答案是这是不可能的,那么我如何允许集群中的任何主机与任何工作负载端点对话(例如 ping 或 curl)?我可以从运行工作负载的主机与工作负载通信,但不能从集群中的任何其他主机通信。我尝试过应用带有“egress:action:allow”和“ingress:action:allow”的配置文件,但它仍然会阻止来自其他主机的流量。我证实这确实是由于 calico 通过跟踪它们以及禁用它们而生成的 iptables 规则。然后它工作。我在停止 calico/node 容器后使用了以下脚本:https ://github.com/projectcalico/calico/blob/master/hack/remove-calico-policy/remove-calico-policy.sh

顺便说一句, FELIX_DEFAULTENDPOINTTOHOSTACTION=ACCEPT 标志似乎也不起作用。

4

1 回答 1

1

我刚刚通过 slack 频道得到回复:https ://calicouers.slack.com/archives/C0BCA44LA/p1512125998000122

答案是使用如下策略文件:

apiVersion: v1
kind: policy
metadata:
  name: allow-all
spec:
  selector: "all()"
  types:
  - ingress
  - egress
  ingress:
  - action: allow
  egress:
  - action: allow
于 2017-12-01T11:07:58.657 回答