ドッカーベースの環境、 3つの物理ホスト192.168.0.27、192.168.0.28、192.168.0.29、ホストの容器を使用して、飼育係に3人のネットワークノードの飼育係、カフカ3つのノードの総数のうち、各ホストノード、ノードカフカを、展開モード
1.プルミラー
2. [スタート]コンテナ
STEP1。プロファイルを作成し、コンテナ内のファイルを置き換えzoo.cfg、それはzoo.cfgは異なる画像に異なる位置可能です
#それぞれのミリ秒数がダニ tickTime = 2000 位に初期ことティック数 #の同期位相が取ることができるが initLimit = 10 #との間を通過することができるダニの数 #要求を送信し、確認応答取得 syncLimit = 5 #ディレクトリをスナップショットはどこに保存されています。 #は、ストレージ用に/ tmpを使用していない、/ tmpが、ここだけです #例酒。 DATADIR =は/ opt /飼育係-3.4.13 / データ #クライアントが接続するポート CLIENTPORTは= 2181 #クライアント接続の最大数を。 # あなたがより多くのクライアントを処理する必要がある場合は、これを増やす #1 maxClientCnxnsを60 = # #はのメンテナンス部に必ずお読みください #のautopurgeをオンにする前に、管理者ガイドを。 # #http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance # #スナップショットの数は、DATADIRに保持する 。#autopurge.snapRetainCount = 3 #時間でパージタスク間隔 #「0」に設定します自動パージ機能を無効 #autopurge.purgeInterval = 1 2888:3888 server.27 = 192.168.0.27 サーバーを。28 = 192.168.0.28:2888:3888 のサーバー。29 = 192.168.0.29:2888:3888 MYID = 27
3.各マシンが異なるMYIDノート、下部ないミラー/opt/zookeeper-3.4.13/data MYIDを必要とする、交換する必要があり、追加する必要があるか、または作成の方法により容器に取り付けられました
4.スタート飼育係(各マシンの実行)
ドッキングウィンドウの実行-p 2181:-p 2888 2181:2888 -p 3888:3888 --name zookeeper27 --networkホスト-v -v /images/zoo.cfg:/opt/zookeeper-3.4.13/conf/zoo.cfg /images/myid:/opt/zookeeper-3.4.13/data/myid -it wurstmeister /カフカ:最新
5.飼育係の動作を確認
#容器に ドッカーExecの- IT zookeeper27 #操作ビューのZooKeeper エコーSTAT | NC 192.168.0.27
私は、飼育係のクラスタが正常に起動を参照して自動的にLADER選出することができます
6.スタートカフカ
カフカのクラスタは、同じホストモードを使用しています
zks="192.168.0.27:2181,192.168.0.28:2181,192.168.0.29:2181"; docker run -p 9092:9092 --name kafka27 --network host -d -e KAFKA_BROKER_ID=27 -e KAFKA_ZOOKEEPER_CONNECT=${zks} -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://宿主机IP:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 wurstmeister/kafka:latest
7.分别进入容器kafka27、kafka28、kafka29创建主题test27、test28、test29。下面以kafka27为例。
#创建topic ./kafka-topics.sh --create --zookeeper 192.168.0.27:2181,192.168.0.28:2181,192.168.0.29:2181 --replication-factor 3 --partitions 3 --topic test27 #replication-factor 表示该topic需要在不同的broker中保存几份, partitions为几个分区 #查看已经创建的topic ./kafka-topics.sh --list --zookeeper 192.168.0.27:2181,192.168.0.28:2181,192.168.0.29:2181 #查看指定topic详情 ./kafka-topics.sh --zookeeper 192.168.0.27:2181,192.168.0.28:2181,192.168.0.29:2181 --topic test27 --describe #创建生产者 ./kafka-console-producer.sh --broker-list 192.168.0.27:9092,192.168.0.28:9092,192.168.0.29:9092 --topic test、 #创建消费者 ./kafka-console-consumer.sh --bootstrap-server 192.168.0.27:9092,192.168.0.28:9092,192.168.0.29:9092 --topic test --from-beginning