ドッキングウィンドウ-コン飼育係は、クラスタ環境を構築CodingCode

ドッキングウィンドウ-コン飼育係は、クラスタ環境を構築します

  1. [編集]ドッキングウィンドウ-compose.yamlファイル
version: '2'
networks:
  byfn:

services:
  zookeeper1:
    image: zookeeper
    container_name: zookeeper1
    environment:
        - ZOO_MY_ID=1
        - ZOO_SERVERS=server.1=zookeeper1:2888:3888 server.2=zookeeper2:2888:3888 server.3=zookeeper3:2888:3888
    ports:
      - 2181
    networks:
      - byfn

  zookeeper2:
    image: zookeeper
    container_name: zookeeper2
    environment:
        - ZOO_MY_ID=2
        - ZOO_SERVERS=server.1=zookeeper1:2888:3888 server.2=zookeeper2:2888:3888 server.3=zookeeper3:2888:3888
    ports:
      - 2181
    networks:
      - byfn

  zookeeper3:
    image: zookeeper
    container_name: zookeeper3
    environment:
        - ZOO_MY_ID=3
        - ZOO_SERVERS=server.1=zookeeper1:2888:3888 server.2=zookeeper2:2888:3888 server.3=zookeeper3:2888:3888
    ports:
      - 2181
    networks:
      - byfn

詳細な構成は、ドキュメントを参照してください。https://hub.docker.com/_/zookeeper/
ここに非常に明確に設定、データストレージを変更して、ログレベルと出力設定を調整する方法について説明します。

  1. サービスを開始
$ docker-compose up
  1. クラスタの状態を確認します
$ docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED STATUS PORTS NAMES c1f7646bf0e6 zookeeper "/docker-entrypoin..." 23 minutes ago Up 23 minutes 2888/tcp, 3888/tcp, 0.0.0.0:32794->2181/tcp zookeeper2 7e05f06c258d zookeeper "/docker-entrypoin..." 23 minutes ago Up 23 minutes 2888/tcp, 3888/tcp, 0.0.0.0:32793->2181/tcp zookeeper3 d293438c1813 zookeeper "/docker-entrypoin..." 23 minutes ago Up 23 minutes 2888/tcp, 3888/tcp, 0.0.0.0:32792->2181/tcp zookeeper1 $ docker exec -t zookeeper1 zkServer.sh status ZooKeeper JMX enabled by default Using config: /conf/zoo.cfg Mode: follower $ docker exec -t zookeeper2 zkServer.sh status ZooKeeper JMX enabled by default Using config: /conf/zoo.cfg Mode: follower $ docker exec -t zookeeper3 zkServer.sh status ZooKeeper JMX enabled by default Using config: /conf/zoo.cfg Mode: leader 

ここでは、指導者、zookeeper1はzookeeper3で、フォロワーはzookeeper2あり、3つの飼育係のノードを参照してください。

他のステータスチェックコマンド:

$ nc localhost 32794 <<< ruok
imok

$ echo srvr | nc localhost 32794 Zookeeper version: 3.4.13-2d71af4dbe22557fda74f9a9b4309b15a7487f03, built on 06/29/2018 04:05 GMT Latency min/avg/max: 0/7/116 Received: 40 Sent: 39 Connections: 1 Outstanding: 0 Zxid: 0x10000000e Mode: follower Node count: 5 
  1. クラスタを使用します

4.1基本操作

[zk: localhost:2181(CONNECTED) 4] create /foo "Hello foo" Created /foo [zk: localhost:2181(CONNECTED) 5] get /foo Hello foo cZxid = 0x100000013 ctime = Fri Jan 04 02:29:47 GMT 2019 mZxid = 0x100000013 mtime = Fri Jan 04 02:29:47 GMT 2019 pZxid = 0x100000013 cversion = 0 dataVersion = 0 aclVersion = 0 ephemeralOwner = 0x0 dataLength = 9 numChildren = 0 [zk: localhost:2181(CONNECTED) 6] ls /foo [] 

4.2パスの作成の作成

[zk: localhost:2181(CONNECTED) 7] create /foo1/foo1 "Hello foo1" Node does not exist: /foo1/foo1 

作成は、飼育係が作成した再帰をサポートしていないため、最初に親ディレクトリノードのレベルを作成する必要がありませんでした。
あなたが親ディレクトリを作成するときは、値が空であるせることができます。(実際には、ディレクトリには、価値をもたらすことができる2つは競合しません。)

[zk: localhost:2181(CONNECTED) 14] create /foo1 "" # 或者:create /foo1 "" Created /foo1 [zk: localhost:2181(CONNECTED) 15] create /foo1/foo1 "Hello foo1" Created /foo1/foo1 

4.3 LSは要素ノードを見ます

[zk: localhost:2181(CONNECTED) 21] ls /foo1 [foo1] 

/ foo1のがディレクトリであるため、彼は/ foo1の/ foo1の下の子ノードを持っていました

[zk: localhost:2181(CONNECTED) 21] ls /foo1/foo1 [] 

/ foo1は/ foo1のがメタノードであるため、ノードは彼以下の子を持っていません。

、lsコマンドは、ディレクトリを一覧表示することができます、あなたはすべてのサブディレクトリを再帰的にリストすることはできません。

4.4 GET値を取得します

get /foo1/foo1

4.5値のセットを変更

set /foo1/foo1 'newvalue'

4.6ノードは削除削除

delete /foo1/foo1

あなたが唯一の空の子ノードを削除できることに注意してくださいので、ノードを削除したい場合は、最初にすべての子ノードの削除されている必要があります。
あなたは非空のディレクトリを削除したい場合は、RMRコマンドを使用することができます。



著者:CodingCodeの
リンクします。https://www.jianshu.com/p/8d31ede99206
出典:ジェーンの本が
著者によって著作権で保護されています。商業転載は非商用の転載は、ソースを明記してください、権限の作者に連絡してください。

おすすめ

転載: www.cnblogs.com/Leo_wl/p/11797908.html
おすすめ