Alex,
so I have 2 nodes .. the first has itself in the dynamic list with an id of
1.
server.1=10.1.1.104:2888:3888:participant;0.0.0.0:2181

I have brought the second node up with an id of 2
server.1=10.1.1.104:2888:3888:participant;0.0.0.0:2181
server.2=10.1.1.40:2888:3888:participant;2181

then i am trying to run from the second node.  zkCli.sh -server 10.1.1.104
reconfig -add "server.2=10.1.1.40:2888:3888:participant;2181"



I get this error on the first server
2021-12-30 17:37:02,880 [myid:1] - INFO  [ProcessThread(sid:1
cport:-1)::PrepRequestProcessor@461] - Incremental reconfig
2021-12-30 17:37:02,880 [myid:1] - WARN  [ProcessThread(sid:1
cport:-1)::PrepRequestProcessor@532] - Reconfig failed - there must be a
connected and synced quorum in new configuration
2021-12-30 17:37:02,880 [myid:1] - INFO  [ProcessThread(sid:1
cport:-1)::PrepRequestProcessor@935] - Got user-level KeeperException when
processing sessionid:0x1002dfe65610014 type:reconfig cxid:0x1
zxid:0x1600000033 txntype:-1 reqpath:n


on the second server issuing the reconfig command I get this error
No quorum of new config is connected and up-to-date with the leader of last
commmitted config - try invoking reconfiguration after new servers are
connected and synced

I have not set any security at this point.

I am not sure what I am missing at this point, assuming I don't need 2
nodes fully clustered in advance as mentioned by Chris.

Thanks,
Eric

On Thu, Dec 30, 2021 at 11:03 AM Alexander Shraer <shra...@gmail.com> wrote:

> This is already possible, since the 3.5.0 release:
>
> https://zookeeper.apache.org/doc/r3.5.3-beta/zookeeperReconfig.html#sc_reconfig_standaloneEnabled
>
> After your single node is up and running, you can connect other nodes to it
> as described in the reconfig manual. See "Adding servers" in the link
> above.
> Essentially, you need to specify the new server's initial config files so
> that they can find some existing server and start syncing data. Once a
> quorum
> of the new config is up to date, you can invoke the reconfig command to
> officially make them part of the configuration.
>
> Thanks,
> Alex
>
> On Thu, Dec 30, 2021 at 8:57 AM Eric Edgar
> <eric.ed...@smartthings.com.invalid> wrote:
>
> > Also would it be possible to update the code for this edge case,  eg if
> the
> > current quorum is 1, and you want to add a node then add a flag saying I
> > trust the single master and reconfigure itself into a 2 node cluster?
> > Thanks,
> > Eric
> >
> > On Thu, Dec 30, 2021 at 10:49 AM Eric Edgar <eric.ed...@smartthings.com>
> > wrote:
> >
> > > Are there any examples with a k8 orchestrator or some sort of docker
> init
> > > scripts handling the initial cluster configuration?
> > > Thanks,
> > > Eric
> > >
> > > On Thu, Dec 30, 2021 at 9:44 AM Chris T. <c.turks...@gmail.com> wrote:
> > >
> > >> If you want to run a zookeeper cluster you have to start with at
> least 2
> > >> members. From there you can scale up with the dynamic reconfig
> commands.
> > >> Regards
> > >> Chris
> > >>
> > >> On 30 December 2021 16:40:40 Eric Edgar
> > >> <eric.ed...@smartthings.com.INVALID> wrote:
> > >>
> > >> > I am experimenting with zk and the reconfig feature and trying to
> > >> > understand if I can start a single zk node and then
> reconfig/bootstrap
> > >> the
> > >> > other 2 nodes into the ensemble.  The reconfig command is throwing
> an
> > >> error
> > >> > that there isn't a quorum yet.  Is this line of thinking possible?
> or
> > >> do I
> > >> > need to setup the first 3 nodes manually the first time?
> > >> > I am basing this experiment off of this web page.
> > >> >
> > >>
> >
> https://blog.container-solutions.com/dynamic-zookeeper-cluster-with-docker
> > >> >
> > >> > /opt/zookeeper/zookeeper/bin/zkCli.sh -server 10.1.1.104:2181
> > reconfig
> > >> -add
> > >> > "server.2=10.1.1.40:2888:3888:participant;2181"
> > >> > No quorum of new config is connected and up-to-date with the leader
> of
> > >> last
> > >> > commmitted config - try invoking reconfiguration after new servers
> are
> > >> > connected and synced
> > >> >
> > >> > /opt/zookeeper/zookeeper/bin/zkCli.sh -server 10.1.1.104:2181
> config
> > >> > server.1=10.1.1.104:2888:3888:participant;0.0.0.0:2181
> > >> >
> > >> > cat ./zoo.cfg
> > >> > autopurge.purgeInterval=1
> > >> > initLimit=10
> > >> > syncLimit=5
> > >> > autopurge.snapRetainCount=6
> > >> > tickTime=2000
> > >> > dataDir=/mnt/zookeeper/data
> > >> > reconfigEnabled=true
> > >> > standaloneEnabled=false
> > >> >
> > >>
> >
> dynamicConfigFile=/opt/zookeeper/zookeeper/conf/zoo.cfg.dynamic.1600000000
> > >> >
> > >> > What is the best solution for an unattended bootstrap setup of a new
> > >> > cluster from scratch?
> > >> >
> > >> >
> > >> > This was something that we were able to accomplish with exhibitor on
> > >> older
> > >> > versions of zookeeper in the past.
> > >>
> > >>
> >
>

Reply via email to