You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@zookeeper.apache.org by ph...@apache.org on 2016/03/20 05:23:03 UTC

svn commit: r1735836 - in /zookeeper/trunk: ./ docs/ src/docs/src/documentation/content/xdocs/

Author: phunt
Date: Sun Mar 20 04:23:03 2016
New Revision: 1735836

URL: http://svn.apache.org/viewvc?rev=1735836&view=rev
Log:
ZOOKEEPER-2240 Make the three-node minimum more explicit in documentation and on website (Shawn Heisey and Arshad Mohammad via phunt)

Modified:
    zookeeper/trunk/CHANGES.txt
    zookeeper/trunk/docs/index.pdf
    zookeeper/trunk/docs/javaExample.pdf
    zookeeper/trunk/docs/linkmap.pdf
    zookeeper/trunk/docs/recipes.pdf
    zookeeper/trunk/docs/releasenotes.pdf
    zookeeper/trunk/docs/zookeeperAdmin.html
    zookeeper/trunk/docs/zookeeperAdmin.pdf
    zookeeper/trunk/docs/zookeeperHierarchicalQuorums.pdf
    zookeeper/trunk/docs/zookeeperInternals.pdf
    zookeeper/trunk/docs/zookeeperJMX.pdf
    zookeeper/trunk/docs/zookeeperObservers.pdf
    zookeeper/trunk/docs/zookeeperOver.pdf
    zookeeper/trunk/docs/zookeeperProgrammers.pdf
    zookeeper/trunk/docs/zookeeperQuotas.pdf
    zookeeper/trunk/docs/zookeeperReconfig.pdf
    zookeeper/trunk/docs/zookeeperStarted.html
    zookeeper/trunk/docs/zookeeperStarted.pdf
    zookeeper/trunk/docs/zookeeperTutorial.pdf
    zookeeper/trunk/src/docs/src/documentation/content/xdocs/zookeeperAdmin.xml
    zookeeper/trunk/src/docs/src/documentation/content/xdocs/zookeeperStarted.xml

Modified: zookeeper/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/zookeeper/trunk/CHANGES.txt?rev=1735836&r1=1735835&r2=1735836&view=diff
==============================================================================
--- zookeeper/trunk/CHANGES.txt (original)
+++ zookeeper/trunk/CHANGES.txt Sun Mar 20 04:23:03 2016
@@ -398,6 +398,9 @@ IMPROVEMENTS:
   ZOOKEEPER-2300: Expose SecureClientPort and SecureClientAddress JMX properties
   (Arshad Mohammad via rgs)
 
+  ZOOKEEPER-2240 Make the three-node minimum more explicit in 
+  documentation and on website (Shawn Heisey and Arshad Mohammad via phunt)
+
 Release 3.5.0 - 8/4/2014
 
 NEW FEATURES:

Modified: zookeeper/trunk/docs/index.pdf
URL: http://svn.apache.org/viewvc/zookeeper/trunk/docs/index.pdf?rev=1735836&r1=1735835&r2=1735836&view=diff
==============================================================================
Binary files - no diff available.

Modified: zookeeper/trunk/docs/javaExample.pdf
URL: http://svn.apache.org/viewvc/zookeeper/trunk/docs/javaExample.pdf?rev=1735836&r1=1735835&r2=1735836&view=diff
==============================================================================
Binary files - no diff available.

Modified: zookeeper/trunk/docs/linkmap.pdf
URL: http://svn.apache.org/viewvc/zookeeper/trunk/docs/linkmap.pdf?rev=1735836&r1=1735835&r2=1735836&view=diff
==============================================================================
Binary files - no diff available.

Modified: zookeeper/trunk/docs/recipes.pdf
URL: http://svn.apache.org/viewvc/zookeeper/trunk/docs/recipes.pdf?rev=1735836&r1=1735835&r2=1735836&view=diff
==============================================================================
Binary files - no diff available.

Modified: zookeeper/trunk/docs/releasenotes.pdf
URL: http://svn.apache.org/viewvc/zookeeper/trunk/docs/releasenotes.pdf?rev=1735836&r1=1735835&r2=1735836&view=diff
==============================================================================
Binary files - no diff available.

Modified: zookeeper/trunk/docs/zookeeperAdmin.html
URL: http://svn.apache.org/viewvc/zookeeper/trunk/docs/zookeeperAdmin.html?rev=1735836&r1=1735835&r2=1735836&view=diff
==============================================================================
--- zookeeper/trunk/docs/zookeeperAdmin.html (original)
+++ zookeeper/trunk/docs/zookeeperAdmin.html Sun Mar 20 04:23:03 2016
@@ -519,6 +519,35 @@ document.write("Last Published: " + docu
       only handle the failure of a single machine; if two machines fail, the
       remaining two machines do not constitute a majority. However, with five
       machines ZooKeeper can handle the failure of two machines. </p>
+<div class="note">
+<div class="label">Note</div>
+<div class="content">
+         
+<p>
+            As mentioned in the
+            <a href="zookeeperStarted.html">ZooKeeper Getting Started Guide</a>
+            , a minimum of three servers are required for a fault tolerant
+            clustered setup, and it is strongly recommended that you have an
+            odd number of servers.
+         </p>
+         
+<p>Usually three servers is more than enough for a production
+            install, but for maximum reliability during maintenance, you may
+            wish to install five servers. With three servers, if you perform
+            maintenance on one of them, you are vulnerable to a failure on one
+            of the other two servers during that maintenance. If you have five
+            of them running, you can take one down for maintenance, and know
+            that you're still OK if one of the other four suddenly fails.
+         </p>
+         
+<p>Your redundancy considerations should include all aspects of
+            your environment. If you have three ZooKeeper servers, but their
+            network cables are all plugged into the same network switch, then
+            the failure of that switch will take down your entire ensemble.
+         </p>
+      
+</div>
+</div>
 <p>Here are the steps to setting a server that will be part of an
       ensemble. These steps should be performed on every host in the
       ensemble:</p>

Modified: zookeeper/trunk/docs/zookeeperAdmin.pdf
URL: http://svn.apache.org/viewvc/zookeeper/trunk/docs/zookeeperAdmin.pdf?rev=1735836&r1=1735835&r2=1735836&view=diff
==============================================================================
Binary files - no diff available.

Modified: zookeeper/trunk/docs/zookeeperHierarchicalQuorums.pdf
URL: http://svn.apache.org/viewvc/zookeeper/trunk/docs/zookeeperHierarchicalQuorums.pdf?rev=1735836&r1=1735835&r2=1735836&view=diff
==============================================================================
Binary files zookeeper/trunk/docs/zookeeperHierarchicalQuorums.pdf (original) and zookeeper/trunk/docs/zookeeperHierarchicalQuorums.pdf Sun Mar 20 04:23:03 2016 differ

Modified: zookeeper/trunk/docs/zookeeperInternals.pdf
URL: http://svn.apache.org/viewvc/zookeeper/trunk/docs/zookeeperInternals.pdf?rev=1735836&r1=1735835&r2=1735836&view=diff
==============================================================================
Binary files - no diff available.

Modified: zookeeper/trunk/docs/zookeeperJMX.pdf
URL: http://svn.apache.org/viewvc/zookeeper/trunk/docs/zookeeperJMX.pdf?rev=1735836&r1=1735835&r2=1735836&view=diff
==============================================================================
Binary files zookeeper/trunk/docs/zookeeperJMX.pdf (original) and zookeeper/trunk/docs/zookeeperJMX.pdf Sun Mar 20 04:23:03 2016 differ

Modified: zookeeper/trunk/docs/zookeeperObservers.pdf
URL: http://svn.apache.org/viewvc/zookeeper/trunk/docs/zookeeperObservers.pdf?rev=1735836&r1=1735835&r2=1735836&view=diff
==============================================================================
Binary files zookeeper/trunk/docs/zookeeperObservers.pdf (original) and zookeeper/trunk/docs/zookeeperObservers.pdf Sun Mar 20 04:23:03 2016 differ

Modified: zookeeper/trunk/docs/zookeeperOver.pdf
URL: http://svn.apache.org/viewvc/zookeeper/trunk/docs/zookeeperOver.pdf?rev=1735836&r1=1735835&r2=1735836&view=diff
==============================================================================
Binary files - no diff available.

Modified: zookeeper/trunk/docs/zookeeperProgrammers.pdf
URL: http://svn.apache.org/viewvc/zookeeper/trunk/docs/zookeeperProgrammers.pdf?rev=1735836&r1=1735835&r2=1735836&view=diff
==============================================================================
Binary files - no diff available.

Modified: zookeeper/trunk/docs/zookeeperQuotas.pdf
URL: http://svn.apache.org/viewvc/zookeeper/trunk/docs/zookeeperQuotas.pdf?rev=1735836&r1=1735835&r2=1735836&view=diff
==============================================================================
Binary files zookeeper/trunk/docs/zookeeperQuotas.pdf (original) and zookeeper/trunk/docs/zookeeperQuotas.pdf Sun Mar 20 04:23:03 2016 differ

Modified: zookeeper/trunk/docs/zookeeperReconfig.pdf
URL: http://svn.apache.org/viewvc/zookeeper/trunk/docs/zookeeperReconfig.pdf?rev=1735836&r1=1735835&r2=1735836&view=diff
==============================================================================
Binary files - no diff available.

Modified: zookeeper/trunk/docs/zookeeperStarted.html
URL: http://svn.apache.org/viewvc/zookeeper/trunk/docs/zookeeperStarted.html?rev=1735836&r1=1735835&r2=1735836&view=diff
==============================================================================
--- zookeeper/trunk/docs/zookeeperStarted.html (original)
+++ zookeeper/trunk/docs/zookeeperStarted.html Sun Mar 20 04:23:03 2016
@@ -522,8 +522,30 @@ numChildren = 0
       ZooKeeper in replicated mode. A replicated group of servers in the same
       application is called a <em>quorum</em>, and in replicated
       mode, all servers in the quorum have copies of the same configuration
-      file. The file is similar to the one used in standalone mode, but with a
-      few differences. Here is an example:</p>
+      file.</p>
+<div class="note">
+<div class="label">Note</div>
+<div class="content">
+      
+<p>
+         For replicated mode, a minimum of three servers are required,
+         and it is strongly recommended that you have an odd number of
+         servers. If you only have two servers, then you are in a
+         situation where if one of them fails, there are not enough
+         machines to form a majority quorum. Two servers is inherently
+         <strong>less</strong>
+         stable than a single server, because there are two single
+         points of failure.
+      </p>
+   
+</div>
+</div>
+<p>
+      The required
+      <strong>conf/zoo.cfg</strong>
+      file for replicated mode is similar to the one used in standalone
+      mode, but with a few differences. Here is an example:
+   </p>
 <pre class="code">
 tickTime=2000
 dataDir=/var/lib/zookeeper
@@ -572,6 +594,14 @@ server.3=zoo3:2888:3888
         (in the above replicated example, running on a
         single <em>localhost</em>, you would still have
         three config files).</p>
+        
+<p>Please be aware that setting up multiple servers on a single
+            machine will not create any redundancy. If something were to
+            happen which caused the machine to die, all of the zookeeper
+            servers would be offline. Full redundancy requires that each
+            server have its own machine. It must be a completely separate
+            physical server. Multiple virtual machines on the same physical
+            host are still vulnerable to the complete failure of that host.</p>
       
 </div>
 </div>

Modified: zookeeper/trunk/docs/zookeeperStarted.pdf
URL: http://svn.apache.org/viewvc/zookeeper/trunk/docs/zookeeperStarted.pdf?rev=1735836&r1=1735835&r2=1735836&view=diff
==============================================================================
Binary files - no diff available.

Modified: zookeeper/trunk/docs/zookeeperTutorial.pdf
URL: http://svn.apache.org/viewvc/zookeeper/trunk/docs/zookeeperTutorial.pdf?rev=1735836&r1=1735835&r2=1735836&view=diff
==============================================================================
Binary files - no diff available.

Modified: zookeeper/trunk/src/docs/src/documentation/content/xdocs/zookeeperAdmin.xml
URL: http://svn.apache.org/viewvc/zookeeper/trunk/src/docs/src/documentation/content/xdocs/zookeeperAdmin.xml?rev=1735836&r1=1735835&r2=1735836&view=diff
==============================================================================
--- zookeeper/trunk/src/docs/src/documentation/content/xdocs/zookeeperAdmin.xml (original)
+++ zookeeper/trunk/src/docs/src/documentation/content/xdocs/zookeeperAdmin.xml Sun Mar 20 04:23:03 2016
@@ -186,7 +186,28 @@
       only handle the failure of a single machine; if two machines fail, the
       remaining two machines do not constitute a majority. However, with five
       machines ZooKeeper can handle the failure of two machines. </para>
-
+      <note>
+         <para>
+            As mentioned in the
+            <ulink url="zookeeperStarted.html">ZooKeeper Getting Started Guide</ulink>
+            , a minimum of three servers are required for a fault tolerant
+            clustered setup, and it is strongly recommended that you have an
+            odd number of servers.
+         </para>
+         <para>Usually three servers is more than enough for a production
+            install, but for maximum reliability during maintenance, you may
+            wish to install five servers. With three servers, if you perform
+            maintenance on one of them, you are vulnerable to a failure on one
+            of the other two servers during that maintenance. If you have five
+            of them running, you can take one down for maintenance, and know
+            that you're still OK if one of the other four suddenly fails.
+         </para>
+         <para>Your redundancy considerations should include all aspects of
+            your environment. If you have three ZooKeeper servers, but their
+            network cables are all plugged into the same network switch, then
+            the failure of that switch will take down your entire ensemble.
+         </para>
+      </note>
       <para>Here are the steps to setting a server that will be part of an
       ensemble. These steps should be performed on every host in the
       ensemble:</para>

Modified: zookeeper/trunk/src/docs/src/documentation/content/xdocs/zookeeperStarted.xml
URL: http://svn.apache.org/viewvc/zookeeper/trunk/src/docs/src/documentation/content/xdocs/zookeeperStarted.xml?rev=1735836&r1=1735835&r2=1735836&view=diff
==============================================================================
--- zookeeper/trunk/src/docs/src/documentation/content/xdocs/zookeeperStarted.xml (original)
+++ zookeeper/trunk/src/docs/src/documentation/content/xdocs/zookeeperStarted.xml Sun Mar 20 04:23:03 2016
@@ -342,8 +342,25 @@ numChildren = 0
       ZooKeeper in replicated mode. A replicated group of servers in the same
       application is called a <emphasis>quorum</emphasis>, and in replicated
       mode, all servers in the quorum have copies of the same configuration
-      file. The file is similar to the one used in standalone mode, but with a
-      few differences. Here is an example:</para>
+      file.</para>
+   <note>
+      <para>
+         For replicated mode, a minimum of three servers are required,
+         and it is strongly recommended that you have an odd number of
+         servers. If you only have two servers, then you are in a
+         situation where if one of them fails, there are not enough
+         machines to form a majority quorum. Two servers is inherently
+         <emphasis role="bold">less</emphasis>
+         stable than a single server, because there are two single
+         points of failure.
+      </para>
+   </note>
+   <para>
+      The required
+      <emphasis role="bold">conf/zoo.cfg</emphasis>
+      file for replicated mode is similar to the one used in standalone
+      mode, but with a few differences. Here is an example:
+   </para>
 
 <programlisting>
 tickTime=2000
@@ -396,6 +413,13 @@ server.3=zoo3:2888:3888
         (in the above replicated example, running on a
         single <emphasis>localhost</emphasis>, you would still have
         three config files).</para>
+        <para>Please be aware that setting up multiple servers on a single
+            machine will not create any redundancy. If something were to
+            happen which caused the machine to die, all of the zookeeper
+            servers would be offline. Full redundancy requires that each
+            server have its own machine. It must be a completely separate
+            physical server. Multiple virtual machines on the same physical
+            host are still vulnerable to the complete failure of that host.</para>
       </note>
     </section>