私は動物園の飼育係(http://zookeeper.Apache.org/)と協力しています。 3.3.5をダウンロードしてZoo.cfgを作成し、$ ZOOKEEPER/confに配置し、zkServer startを使用してzookeeperを起動しました。しかし、以下はエラーです
ここで私を助けてください..
nfig or no quorum defined in config, running in standalone mode
2012-08-01 23:20:32,175 [myid:] - ERROR [main:ZooKeeperServerMain@54] - Invalid
arguments, exiting abnormally
Java.lang.NumberFormatException: For input string: "C:\Development\apps\zookeeper\zookeeper3.4.1\bin\..\conf\Zoo.cfg"
at Java.lang.NumberFormatException.forInputString(NumberFormatException.Java:48)
at Java.lang.Integer.parseInt(Integer.Java:449)
at Java.lang.Integer.parseInt(Integer.Java:499)
at org.Apache.zookeeper.server.ServerConfig.parse(ServerConfig.Java:60)
at org.Apache.zookeeper.server.ZooKeeperServerMain.initializeAndRun(ZooKeeperServerMain.Java:83)
at org.Apache.zookeeper.server.ZooKeeperServerMain.main(ZooKeeperServerMain.Java:52)
at org.Apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.Java:116)
at org.Apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.Java:78)
2012-08-01 23:20:32,177 [myid:] - INFO [main:ZooKeeperServerMain@55] - Usage: Z
ooKeeperServerMain configfile | port datadir [ticktime] [maxcnxns]
Usage: ZooKeeperServerMain configfile | port datadir [ticktime] [maxcnxns]
「start」パラメータを省略して、代わりに「bin\zkServer」を呼び出すだけです。
Java.lang.NumberFormatException:入力文字列の場合:「C:\ Development\apps\zookeeper\zookeeper3.4.1\bin ..\conf\Zoo.cfg」
「start」とZoo.cfgファイルの場所、つまり「C:\ Development\apps\zookeeper\zookeeper3.4.1\bin ..\conf\Zoo.cfg」を使用してzkServerを実行しているようです。最大3つのパラメーターを追加するパラメーター:
./zkServer start C:\ Development\apps\zookeeper\zookeeper3.4.1\bin ..\conf\Zoo.cfg xxx
したがって、2番目と3番目のパラメーターを削除するだけで問題を解決でき、次のコマンドが実行されます。
./zkServer start
この背後にある理由は、クラス(QuorumPeerMain、ZooKeeperServerMain)zkServerがzookeeperシステムの初期化に使用して、さまざまな数のパラメーターを受け入れ、それに応じて動作するためです。 2つのパラメーターをzkServerにフィードする場合、2つのパラメーターの背後にある意味は、portとdatadirであることになっています。ええ、ポートは数字でなければなりません、そしてあなたの爆弾がここに来ます。
ところで、bootstrapスクリプトは、パラなしで実行すると、ヘルプの指示が付属しています。
Zoo.cfgファイルに移動dataDir =/usr/zookeeper/data
dataフォルダーにmyidという名前のファイルを作成して書き込みます1.ファイルを保存してzkServerを起動します
複数のインスタンスを実行している場合、すべてのインスタンスについて、データフォルダーにmyidファイルを作成し、それぞれ1、2、3で書き込む必要があります。実際、これはノードリーダーの選出に使用されます。