Estou tentando configurar um cluster de kubernetes em vários hosts ESXi. O etcd / kube-apiserver / kube-scheduler / kube-controller-manager parece bom, no entanto, nos hosts docker (neste caso, hosts estáveis ​​coreos), o kubelet parece funcionar, mas o kube-proxy não.

Estou executando os comandos a seguir e obtendo o erro conforme listado.

coreos1 core # /opt/bin/kube-proxy --master=10.42.0.51:8080 --v=0
E0817 13:51:29.558463    6506 proxier.go:164] Error removing pure-iptables proxy rule: error checking rule: exit status 2: iptables v1.4.21: Couldn't load target `KUBE-SERVICES':No such file or directory

Try `iptables -h' or 'iptables --help' for more information.
E0817 13:51:29.560023    6506 proxier.go:167] Error removing pure-iptables proxy rule: error checking rule: exit status 2: iptables v1.4.21: Couldn't load target `KUBE-SERVICES':No such file or directory

Try `iptables -h' or 'iptables --help' for more information.

Várias cadeias de iptables, não incluindo aquela referenciada, são criadas, não tenho certeza do que se trata esta. Eu tenho a configuração de flanela neste host testado em funcionamento. Posso disparar um pod de teste, no entanto, nunca obtenho um IP externo e nenhum host que ativar manualmente não pode atingir o intervalo de IP configurado para no kubernetes.

A documentação para v1.0 / 1.0.1 parece muito leve, eu continuo correndo para log howto docs em versões beta muito antigas.

answer

Você substituiu algum parâmetro de comando kube-proxy para usar o modo pure-iptables?

Você deve ser capaz de usar o modo de proxy do espaço de usuário para kube-proxy.

Estamos trabalhando para habilitar o modo pure-iptables também, mas enquanto isso, o modo userspace pode desbloquear você.

(O sinalizador é legacy-userspace-proxy [= true])

Antes dessas linhas, você deve ver esta linha de registro:

"Derrubando regras de proxy pure-iptables. Erros aqui são aceitáveis."

O que está acontecendo é que o proxy tem dois modos e o código de inicialização está garantindo que o modo não utilizado foi limpo. Se você nunca usou o outro modo, não há nada para limpar. Decidimos que era melhor registrar os erros do que ocultá-los, caso algo inesperado apareça. É difícil diferenciar programaticamente "nada a fazer" de "erro ao fazer algo", então simplesmente não o fizemos.

Resumindo - não acho que seja um erro. Você está realmente tendo um problema?