2016-08-20 9 views
0

Я устанавливаю кластер Kubernetes следующие Kelseys Lab: https://github.com/kelseyhightower/kubernetes-the-hard-wayIptables ошибка препятствует стручок начиная Kubernetes

Я только установить один узел до сих пор. При попытке развернуть стручок, следующее сообщение об ошибке предотвращает его от начала работы:

Warning FailedSync Error syncing pod, skipping: failed to "SetupNetwork" for "nginx-3137573019-pjbie_default" with SetupNetworkError: "Failed to setup network for pod \"nginx-3137573019-pjbie_default(b4128fc1-6707-11e6-a8b3-005056a2068d)\" using network plugins \"kubenet\": Failed to execute iptables-restore: exit status 1 (Can't open /tmp/kube-temp-iptables-restore-214792160: Permission denied\n); Skipping pod"

kubelet работает как корень. Файлы, упомянутые в журнале, также принадлежат root.

Система Linux OEL 7 (Kernel: УЭК 4.1.12)

Кто-нибудь есть идея, что причина может быть или как дальнейшее расследование?

ответ

2

Похоже, что SELinux предотвращает выполнение изменений в IPtables kubelet. Найдите сообщения, содержащие строку «AVC» внутри /var/log/audit/audit.log, чтобы подтвердить эту теорию.

Простейшим обходным путем является полное отключение SELinux с помощью команды оболочки setenforce 0. Это не выдерживает перезагрузки, поэтому убедитесь, что вы также отключили SELinux в /etc/selinux/config.

Если вы не хотите, чтобы отключить SELinux полностью, который я рекомендовал бы, вам придется использовать такие инструменты, как audit2allow и semodule для того, чтобы создать свой собственный модуль SELinux для kubelet и kube-proxy.

Проверьте эти ссылки для дальнейших указаний:

+0

Это сделал трюк, спасибо! – fischerman