[ 
https://issues.apache.org/jira/browse/ZOOKEEPER-2184?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16276711#comment-16276711
 ] 

ASF GitHub Bot commented on ZOOKEEPER-2184:
-------------------------------------------

Github user sslavic commented on the issue:

    https://github.com/apache/zookeeper/pull/150
  
    @riccardofreixo have you tried using ClusterIP Service for ZooKeeper 
StatefulSet and providing that ClusterIP (or service hostname) to Kafka / 
ZooKeeper clients as sole ZooKeeper hostname?
    
    StatefulSet can have multiple replicas, but to ZooKeeper clients all of the 
members no matter how many of them there are (1, 3, 5, ..) would be accessible 
under single ClusterIP.
    
    Even when Pods of StatefulSet die and get re-scheduled for whatever reason, 
they will likely get new IP, but IP of ClusterIP Service remains stable so 
ZooKeeper clients should be able to reconnect, without need to reresolve IP 
address of the host.
    
    If there's a quorum, Pod that died does not necessarily have to become 
available quickly, clients should still be able to connect even without losing 
session.


> Zookeeper Client should re-resolve hosts when connection attempts fail
> ----------------------------------------------------------------------
>
>                 Key: ZOOKEEPER-2184
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2184
>             Project: ZooKeeper
>          Issue Type: Bug
>          Components: java client
>    Affects Versions: 3.4.6, 3.4.7, 3.4.8, 3.4.9, 3.4.10, 3.5.0, 3.5.1, 3.5.2, 
> 3.5.3, 3.4.11
>         Environment: Ubuntu 14.04 host, Docker containers for Zookeeper & 
> Kafka
>            Reporter: Robert P. Thille
>            Assignee: Flavio Junqueira
>            Priority: Blocker
>              Labels: easyfix, patch
>             Fix For: 3.5.4, 3.4.12
>
>         Attachments: ZOOKEEPER-2184.patch
>
>
> Testing in a Docker environment with a single Kafka instance using a single 
> Zookeeper instance. Restarting the Zookeeper container will cause it to 
> receive a new IP address. Kafka will never be able to reconnect to Zookeeper 
> and will hang indefinitely. Updating DNS or /etc/hosts with the new IP 
> address will not help the client to reconnect as the 
> zookeeper/client/StaticHostProvider resolves the connection string hosts at 
> creation time and never re-resolves.
> A solution would be for the client to notice that connection attempts fail 
> and attempt to re-resolve the hostnames in the connectString.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to