2016-12-12 8 views
1

私は分散システムに新しく、動物園ののグループを設定するためにドッカーを使用しています。例えば動物園のグループから選択するホスト名

、私は sが開始3人の飼育係があります。カフカを開始するために

services: 
    zoo1: 
    image: zookeeper 
    restart: always 
    ports: 
     - 2181 
    environment: 
     ZOO_MY_ID: 1 
     ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888 

    zoo2: 
    image: zookeeper 
    restart: always 
    ports: 
     - 2181 
    environment: 
     ZOO_MY_ID: 2 
     ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888 

    zoo3: 
    image: zookeeper 
    restart: always 
    ports: 
     - 2181 
    environment: 
     ZOO_MY_ID: 3 
     ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888 

を、私はそのserver.propertiesを設定への持っています。
zookeeper.connection = localhost:2181例では、ここで何を設定すればよいですか?

zookeeper.connection=zoo1/zoo2/zoo3:2181? 

または私はそれらを3つ残す必要がありますか?当然のおかげ

[UPDATE]

カフカは同じdocker-compose.ymlファイル内で開始されるように構成されます。

Dockerfilekafkaがローカルに書き込まれました。 localhostを使用する代わりに、をserver.propertiesに変更する必要があります。あなたは、カンマ区切りリストとしてすべてを置く必要があります

+1

あなたのカフカはホストのコンテナで動作していますか? – luanbuingoc

+0

@BuiNgocLuan、はい、同じ 'docker-compose.yml'の中で' docker-compose'によって起動されました。同じネットワークに存在する必要があります。 – cinqS

答えて

3

zookeeper.connect=zoo1:2181,zoo2:2181,zoo3:2181 

だから、1 ZKはブローカーを停止した場合は、レプリカに接続することができます。

+0

私は既に答えを見つけたと思っていましたが、とにかく感謝して、あなたは正しい答えを持っています。 – cinqS

関連する問題