Eu comecei a notar no meu cluster de 5,9 k8s de 5 nós, pods agendados no mesmo nó não podem se comunicar uns com os outros. O Nslookup falha em qualquer serviço de qualquer pod nesse nó, mas funciona bem quando executado em um nó diferente.
Não tenho certeza se esse é um problema de dns / flannel do kube, alguma ponte sobre como depurar isso?
Para corrigir isso, preciso reprogramar esses pods em um novo nó. Eu tentei reiniciar a flanela, não ajudou. Da próxima vez que isso acontecer, reiniciaremos os pods do kube-dns.
Exemplo:
Para dar um exemplo, tivemos o kafka e o zk agendados no mesmo nó. E kafka não foi capaz de encontrar zk. O Nslookup falhou desse kafka pod, mas funciona bem em qualquer outro pod. Este não é um problema de kafka, pois temos esse problema em outros nós entre diferentes pods. Como eu verifico as entradas do kube-dns - os logs do kube-dns parecem mostrar tudo configurado bem e sem erros.
[2017-11-22 12:00:56,194] FATAL Fatal error during KafkaServerStartable startup. Prepare to shutdown (kafka.server.KafkaServerStartable)
org.I0Itec.zkclient.exception.ZkTimeoutException: Unable to connect to zookeeper server 'zookeeper:2181' with timeout of 6000 ms
at org.I0Itec.zkclient.ZkClient.connect(ZkClient.java:1233)
at org.I0Itec.zkclient.ZkClient.<init>(ZkClient.java:157)
at org.I0Itec.zkclient.ZkClient.<init>(ZkClient.java:131)
at kafka.utils.ZkUtils$.createZkClientAndConnection(ZkUtils.scala:106)
at kafka.utils.ZkUtils$.apply(ZkUtils.scala:88)
at kafka.server.KafkaServer.initZk(KafkaServer.scala:329)
at kafka.server.KafkaServer.startup(KafkaServer.scala:187)
at kafka.server.KafkaServerStartable.startup(KafkaServerStartable.scala:39)
at kafka.Kafka$.main(Kafka.scala:67)
at kafka.Kafka.main(Kafka.scala)
[2017-11-22 12:00:56,208] INFO shutting down (kafka.server.KafkaServer)