Я использую calico 2.6 с докером 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», но он по-прежнему блокирует трафик с других хостов. Я подтвердил, что это действительно из-за правил iptables, которые calico генерирует, отслеживая их, а также отключая их. Тогда это работает. После остановки контейнера calico / node я использовал следующий сценарий: https://github.com/projectcalico/calico/blob/master/hack/remove-calico-policy/remove-calico-policy.sh
Кстати, флаг FELIX_DEFAULTENDPOINTTOHOSTACTION = ACCEPT тоже вроде не работает.