1.ダウンロードして解凍します
Zookeeperのダウンロードアドレス:http://www.apache.org/dyn/closer.cgi/zookeeper/
ダウンロードが完了したら、特定のディレクトリに解凍します
同步时间所有节点的时间,并关闭防火墙
$ ntpdate -u ntp.sjtu.edu.cn
$ service iptables stop
2.Zookerの構成
Zookeeperクラスターモードでは、3つのホストServe1、Server2、およびServer3を構築、準備するために少なくとも3つのホストが必要です。
»Zookeeperconfディレクトリにmyidファイルを作成します。server1の内容は1、server2の内容は2、server3の内容は3です。
»構成ファイルzoo.cfg(赤でマーク)を作成します。 confディレクトリmain):
tickTime=2000
dataDir=/Users/zdandljb/zookeeper/data
dataLogDir=/Users/zdandljb/zookeeper/dataLog
clientPort=2181
initLimit=5
syncLimit=2
server.1=server1:2888:3888
server.2=server2:2888:3888
server.3=server3:2888:3888
構成が完了したら、構成ファイルを他のホストに配布します。
パラメータの説明:
•tickTime:ハートビートを送信するための間隔時間、単位:ミリ秒
•dataDir:zookeeperがデータを保存するディレクトリ。
•clientPort:クライアントがZookeeperサーバーに接続するために使用するポート。Zookeeperはこのポートをリッスンし、クライアントのアクセス要求を受け入れます。
•initLimit:この構成アイテムは、クライアントを受け入れるようにZookeeperを構成するために使用されます(ここに記載されているクライアントは、Zookeeperサーバーに接続しているユーザーのクライアントではありません。
これは、リーダーのフォロワーサーバーに接続されているZookeeperサーバークラスターで接続を初期化するときに許容できるハートビート間隔の最大数です。
5ハートビートの長さ(つまり、tickTime)を超えると、Zookeeperサーバーはクライアントからの戻りメッセージを受信せず、クライアント接続が失敗したことを示します。
合計時間は5 * 2000 = 10秒です
。•syncLimit:この構成アイテムは、リーダーとフォロワーの間のメッセージ、要求、および応答時間の長さを識別します。最長時間は、tickTimeの長さを超えることはできません。
合計時間は2 * 2000 = 4秒です
。•server.A = B:C:D:その中
Aは番号であり、どのサーバーがこの番号であるかを示します。
BはこのサーバーのIPアドレスです。
Cは、このサーバーがクラスター内のリーダーサーバーと情報を交換するためのポートを表します。
Dは、クラスター内のリーダーサーバーがダウンした場合に、新しいリーダーを再選して選択するためのポートが必要であることを意味します。
このポートは、選挙が行われるときに相互に通信するために使用されます。疑似クラスター構成方式の場合、Bは同じなので、
したがって、異なるZookeeperインスタンスの通信ポート番号を同じにすることはできないため、異なるポート番号をそれらに割り当てる必要があります。
3.zookeeperの環境変数を構成します
$ vim /root/.bash_profile
#写入
PATH=$PATH:/usr/local/zookeeper-3.4.6/bin
4. zookeeperを起動します(すべてのノードを起動する必要があります)
$ cd /usr/local/zookeeper
$ bin/zkServer.sh start
# 显示:Starting zookeeper ... STARTED 表示启动成功
公式アカウント 「Javaシニアアーキテクト」をフォローし、「面接の質問」に返信してください。入手:大廠からの実際の面接の質問のHD3585ページ