ZooKeeperの設定
ZooKeeperのインストール
ZooKeeperのダウンロード
wget -P /export/software/ https://repo.huaweicloud.com/apache/zookeeper/zookeeper-3.8.5/apache-zookeeper-3.8.5-bin.tar.gz
ZooKeeperをインストール
tar -zxvf /export/software/apache-zookeeper-3.8.5-bin.tar.gz -C /export/servers/
cd /export/servers/
mv /export/servers/apache-zookeeper-3.8.5-bin /export/servers/zookeeper
環境変数の設定
sudo vim /etc/profile
ファイルの末尾に次の構成を追加
export ZOOKEEPER_HOME=/export/servers/zookeeper
export PATH=$PATH:$ZOOKEEPER_HOME/bin
! [] httr2.hoshi.z_img/画像 15.png
環境変数の再ロード
source /etc/profile
設定ファイルの編集
cd /export/servers/zookeeper/conf
テンプレートを正式プロファイルとしてコピー
sudo cp /export/servers/zookeeper/conf/zoo_sample.cfg /export/servers/zookeeper/conf/zoo.cfg
sudo vim zoo.cfg
次に、ggdGすべてを削除大文字小文字と入力して、次の構成を入力します。
# 数据同步的基本时间单位(毫秒),默认2000
tickTime=2000
# follower初始化连接到leader的最大心跳数(tickTime的倍数)
initLimit=10
# follower与leader之间发送消息的最大心跳数(超过则认为连接失效)
syncLimit=5
# ZooKeeper数据存储目录(需与HBase的hbase.zookeeper.property.dataDir一致)
dataDir=/export/servers/zookeeper/data
# 客户端连接ZooKeeper的端口(默认2181,HBase会通过此端口连接)
clientPort=2181
# 集群节点配置(格式:server.编号=主机名:通信端口:选举端口)
# 编号需与每个节点的myid文件内容一致
server.1=hadoop01:2888:3888
server.2=hadoop02:2888:3888
server.3=hadoop03:2888:3888
# 允许客户端连接的最大数量(默认60,按需调整)
maxClientCnxns=60
# 自动清理事务日志的时间(小时),默认0表示不自动清理
autopurge.purgeInterval=1! [] httr2.hoshi.z_img/画像 16.png
Hadoop01でデータディレクトリを作成し、myidに書き込む
mkdir -p /export/servers/zookeeper/data
sudo vim /export/servers/zookeeper/data/myid
以下を書く。
1
! [] httr2.hoshi.z_img/画像 17.png
ZooKeeperの配信
環境変数の分散
scp /etc/profile hadoop02:/tmp/profile
ssh hadoop02 "sudo cp /tmp/profile /etc/profile && sudo rm /tmp/profile"
scp /etc/profile hadoop03:/tmp/profile
ssh hadoop03 "sudo cp /tmp/profile /etc/profile && sudo rm /tmp/profile"
ZooKeeperの配布
scp -r /export/servers/zookeeper hadoop02:/tmp/
ssh hadoop02 "sudo cp -r /tmp/zookeeper/ /export/servers/ && sudo rm -rf /tmp/zookeeper"
scp -r /export/servers/zookeeper hadoop03:/tmp/
ssh hadoop03 "sudo cp -r /tmp/zookeeper/ /export/servers/ && sudo rm -rf /tmp/zookeeper"
他の2つのサーバのmyidを個別に編集する
Hadoop02への移行:
sudo vim /export/servers/zookeeper/data/myid
! [] httr2.hoshi.z_img/画像 18.png
Hadoop 0 3へのアクセス
sudo vim /export/servers/zookeeper/data/myid
! [] https//r2.hoshiumi.xyz/old_img/画像 19.png
環境変数の再ロード
ssh hadoop02 "bash -c 'source /etc/profile'"
ssh hadoop03 "bash -c 'source /etc/profile'"
ZooKeeperの使い方
ポートが使用されているかどうかの確認
sudo netstat -tunlp | grep 2181
もしあれば,sudo kill pidを用いてプロセスを強制終了する.
ZooKeeperフォルダの機能強化
sudo chown -R hadooper /export/servers/zookeeper
sudo chmod -R 755 /export/servers/zookeeper
ssh hadoop02 "sudo chown -R hadooper /export/servers/zookeeper && sudo chmod -R 755 /export/servers/zookeeper"
ssh hadoop03 "sudo chown -R hadooper /export/servers/zookeeper && sudo chmod -R 755 /export/servers/zookeeper"
ファイアウォールのシャットダウン
sudo ufw disable
ssh hadoop02 "sudo ufw disable"
ssh hadoop03 "sudo ufw disable"
ZooKeeperコマンドの実行
以下のコマンドを実行し、jpsを実行してzookeeperが正常に起動するかどうかを確認します。
$ZOOKEEPER_HOME/bin/zkServer.sh start
ssh hadoop02 "bash -c 'source /etc/profile && $ZOOKEEPER_HOME/bin/zkServer.sh start'"
ssh hadoop03 "bash -c 'source /etc/profile && $ZOOKEEPER_HOME/bin/zkServer.sh start'"
! [] httr2.hoshi.z_img/画像 20.png
選挙結果を見る
$ZOOKEEPER_HOME/bin/zkServer.sh status
ssh hadoop02 "bash -c 'source /etc/profile && $ZOOKEEPER_HOME/bin/zkServer.sh status'"
ssh hadoop03 "bash -c 'source /etc/profile && $ZOOKEEPER_HOME/bin/zkServer.sh status'"
リーダーはどこにいても
! [] httr2.hoshi.z_img/画像 21.png
気に入ったならばコメントを残してくださいね~