You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@bigtop.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2016/06/08 21:46:21 UTC
[jira] [Commented] (BIGTOP-2467) Zookeeper Puppet script does not
setup Zookeeper node ids correctly
[ https://issues.apache.org/jira/browse/BIGTOP-2467?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15321497#comment-15321497 ]
ASF GitHub Bot commented on BIGTOP-2467:
----------------------------------------
GitHub user petevg opened a pull request:
https://github.com/apache/bigtop/pull/116
BIGTOP-2467 Zookeeper Puppet script does not setup Zookeeper node ids correctly
Zookeeper wants its peer ids to be consistent across nodes, but the
current puppet script auto-generates ids for nodes, based on their index
in a list. This breaks Zookeeper quorum.
We fix the issue by requiring that puppet take a list comprising
explicit ids and ip addresses, rather than just a list of ip addresses.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/juju-solutions/bigtop BIGTOP-2467
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/bigtop/pull/116.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #116
----
commit 6dd1e673ca5577fa8e4c41dfc8542301c591af36
Author: Pete Vander Giessen <pe...@gmail.com>
Date: 2016-06-08T20:02:15Z
BIGTOP-2467 Zookeeper Puppet script does not setup Zookeeper node ids correctly
Zookeeper wants its peer ids to be consistent across nodes, but the
current puppet script auto-generates ids for nodes, based on their index
in a list. This breaks Zookeeper quorum.
We fix the issue by requiring that puppet take a list comprising
explicit ids and ip addresses, rather than just a list of ip addresses.
----
> Zookeeper Puppet script does not setup Zookeeper node ids correctly
> -------------------------------------------------------------------
>
> Key: BIGTOP-2467
> URL: https://issues.apache.org/jira/browse/BIGTOP-2467
> Project: Bigtop
> Issue Type: Bug
> Components: deployment
> Affects Versions: 1.1.0
> Environment: Ubuntu Linux (though likely other environments, as well)
> Reporter: Pete Vander Giessen
> Assignee: Pete Vander Giessen
>
> In order to increase Zookeeper quorum, one needs to add a list of nodes to the zoo.cfg in the following format:
> server.<node id>=<ip address>:2888:3888
> server.<node id>=<ip address>:2888:3888
> ...
> A Zookeeper node assumes that the first entry in the list is itself, and it assumes that the <node id> it has for a node is consistent across nodes. A working setup for a node with id "2" might look like this:
> server.2=10.0.1.24:2888:3888
> server.0=10.0.1.35:2888:3888
> server.1=10.0.1.12:2888:3888
> Bigtop's template for zoo.cfg does the following, however:
> <% @ensemble.each_with_index do |server,idx| %>
> server.<%= idx %>=<%= server %>
> <% end %>
> "ensemble" is simply an array of strings in the format "<ip address>:2888:3888". Note that the template uses ruby to auto generate an index for each entry, so the first entry in the list will always have an id of "0".
> This means that, when the nodes try to talk to each other, they all claim to be peer 0, and they fail to connect with the following error:
> 2016-06-02 18:26:01,195 [myid:0] - INFO [WorkerSender[myid=0]:QuorumCnxManager@193] - Have smaller server identifier, so dropping the connection: (1, 0)
> I'm working on a proposed patch for this issue, where the ensemble variable takes an array of two element arrays; each sub array would be an id and a properly formatted ip string. I'm definitely open to other ideas, though.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)