You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by "Tharindu Kumara (JIRA)" <ji...@apache.org> on 2017/03/09 07:15:38 UTC
[jira] [Updated] (ZOOKEEPER-2715) Sessions Expire due to Network
partitioning in Zookeeper
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2715?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Tharindu Kumara updated ZOOKEEPER-2715:
---------------------------------------
Description:
Recently, carried out a test to to find the behavior of clients when a
client is partitioned from the ensemble.
Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was set up like below.
A - Follower
B - Leader
C - Follower​
A <---> B <---> C
|____________|
And 3 clients are connected to ensemble like below.
C1 is connected A
C2 is connected B
C3 is connected C.
To remove the network link between B and C iptables utility is used.
command used:
iptables -I INPUT -s Server_B_IP -j DROP
iptables -I INPUT -s Server_C_IP -j DROP
After removing the link connections looks like below.
A <----> B C
|____________|
Simply there is no way to send any packets from from B to C and vice versa. But the connection exists between between B and C.
Here What I noticed is that the client connected to Zookeeper Server "C", could not connect to the ensemble resulting a session expiration timeout.
For this experiment I used tickTime of 3000ms and client session expiration timeout of 45000ms. And tested with different combinations also.
was:
Recently, carried out a test to to find the behavior of clients when a
client is partitioned from the ensemble.
Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was set up like below.
A - Follower
B - Leader
C - Follower​
A <---> B <---> C
\__________/
And 3 clients are connected to ensemble like below.
C1 is connected A
C2 is connected B
C3 is connected C.
To remove the network link between B and C iptables utility is used.
command used:
iptables -I INPUT -s Server_B_IP -j DROP
iptables -I INPUT -s Server_C_IP -j DROP
After removing the link connections looks like below.
A <----> B C
\___________/
Simply there is no way to send any packets from from B to C and vice versa. But the connection exists between between B and C.
Here What I noticed is that the client connected to Zookeeper Server "C", could not connect to the ensemble resulting a session expiration timeout.
For this experiment I used tickTime of 3000ms and client session expiration timeout of 45000ms. And tested with different combinations also.
> Sessions Expire due to Network partitioning in Zookeeper
> ---------------------------------------------------------
>
> Key: ZOOKEEPER-2715
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2715
> Project: ZooKeeper
> Issue Type: Bug
> Components: c client
> Affects Versions: 3.4.9
> Reporter: Tharindu Kumara
>
> Recently, carried out a test to to find the behavior of clients when a
> client is partitioned from the ensemble.
> Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was set up like below.
> A - Follower
> B - Leader
> C - Follower​
> A <---> B <---> C
> |____________|
> And 3 clients are connected to ensemble like below.
> C1 is connected A
> C2 is connected B
> C3 is connected C.
> To remove the network link between B and C iptables utility is used.
> command used:
> iptables -I INPUT -s Server_B_IP -j DROP
> iptables -I INPUT -s Server_C_IP -j DROP
> After removing the link connections looks like below.
> A <----> B C
> |____________|
> Simply there is no way to send any packets from from B to C and vice versa. But the connection exists between between B and C.
> Here What I noticed is that the client connected to Zookeeper Server "C", could not connect to the ensemble resulting a session expiration timeout.
> For this experiment I used tickTime of 3000ms and client session expiration timeout of 45000ms. And tested with different combinations also.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)