[
https://issues.apache.org/jira/browse/ZOOKEEPER-3764?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17310282#comment-17310282
]
Zhewei Hu commented on ZOOKEEPER-3764:
--------------------------------------
For a ZooKeeper ensemble with N servers, if N is odd, the ensemble is able to
tolerate up to N/2 server failures without losing any znode data; if N is even,
the ensemble is able to tolerate up to N/2-1 server failures.
For example, if we have a ZooKeeper ensemble with 5 servers, the ensemble is
able to tolerate up to 2 (5/2) server failures. If the ZooKeeper ensemble with
6 servers, the ensemble is also able to tolerate up to 2 (6/2-1) server
failures without losing data and prevent the "brain split" issue.
Note, that is the reason that we recommend setting one ZooKeeper ensemble with
the odd number of servers. This is because, with the even number of servers,
the capacity of failure tolerance is the same (2 for both 5-node ensemble and
6-node ensemble). However, for an ensemble with an even number of servers, it
has to maintain extra connections and data transfers for one more server.
> Add High Availability Guarantee Into Docs
> -----------------------------------------
>
> Key: ZOOKEEPER-3764
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3764
> Project: ZooKeeper
> Issue Type: Improvement
> Components: documentation
> Reporter: David Mollitor
> Assignee: Zhewei Hu
> Priority: Trivial
>
> {quote}
> For a topic with replication factor N, we will tolerate up to N-1 server
> failures without losing any records committed to the log.
> * https://kafka.apache.org/documentation/
> {quote}
> Please add a similar statement to the ZK docs, to include the formula for
> calculating the maximum number of server failures.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)