zookeeper-3.4.10をインストールすると、正常に起動し、エラーは報告されませんでしたが、bin / zkServer.shステータスでステータスを確認すると、次のようなエラーが発生しました。
これらは、以前に発生した問題となっている時には、まず、発生した問題は、接続がタイムアウトし、接続が拒否されたということでした短い、チェックで。。JDK ; zoo.cfgと環境変数: Doが忘れない/ソースを後にetc / profileが変更されました。etc/ profile; server.1とここのホスト名、および1に対応するmyidを確認する必要があります。確認したところ、問題はありませんでした。その後、jdkが再編成され、ファイアウォールが再切り替えされました。パーミッション、結局、それを前後に殺そうとして自分自身を救うことはできません。これは、3つのホストで動物園の飼育係を殺し、動物園の飼育係を開始し、最後まで繰り返すプロセスです。 。理由はわかりません。プロセスは何度か殺されました。記事の最後に、あなたが見てみるためのスクリプトがあります。
いくつかの理由が考えられます。
まず、zoo.cfgファイル構成エラー:dataLogDirで指定されたディレクトリが作成されていません。
次に、myidファイルの整数形式が正しくないか、zoo.cfgのサーバー整数に対応していません。
第三に、ファイアウォールは閉じられていません。
第四に、ポート2181が占有されています。
第5に、zoo.cfgファイルのホスト名が間違っています。
第6に、hostsファイルでは、マシンのホスト名の間に2つの対応関係があり、ホスト名とIPアドレスの間のマッピングのみが必要です。
Zookeeperは、3つのホストすべてを開始して開始します
zookeeper.out分析の理由を表示します(zookeeper-3.4.10ディレクトリの下)
- ログzookeeper.outを開いてエラー情報を表示し、エラー情報に従ってBaiduを実行します。
[root@zly1 zookeeper-3.4.10]# vim zookeeper.out
ルート権限が必要です
分析と考え方1:myidのシリアル番号がzoo.cfgで設定されたサーバーに正しく対応しているかどうか。*(zoo.cfg構成ファイルの問題)
zoo.cfgファイルのホスト名が間違っています-ファイルは問題なく何度も表示されています。
おそらく全員がチュートリアルに従ったので、この領域の問題がうまくいかない可能性は低いです。
誰もがまだmyidが間違っているかどうかをチェックします
分析と思考2:ファイアウォールの問題
ファイアウォールをオンにしてから、ファイアウォールをオフにすることをお勧めします
ファイアウォールファイアウォールがオンになっている
systemctl startfirewalld.service
ファイアウォールファイアウォールオフ
systemctl stopfirewalld.service
注:firewalld.serviceを閉じることです
分析と思考3:Java環境問題
Java環境を確認してください
javaバージョン
java
jdkを再インストールしてからjdk環境を再構成することは本当に不可能です
vim / etc / profile
分析と思考4:ポート占有のトラブルシューティング
netstat -apn | grep 2181 #默认2181端口为服务端提供端口
最初にjpsで始めた動物園の飼育係のスレッド番号を調べたところ、現在のポート2181が私の飼育係であることがわかりました。しかし、念のため、一度殺してから再開しました
注:クラスターが開始されていない場合は、ポートが占有されていないはずです。
kill -9 pid #pid为占用端口的进程id号
分析と思考5:
ノードの残りの情報を削除します(3つのホストすべてが動作します)
rm -rf version-2/ zookeeper_server.pid
分析と思考6:飼育係の許可を改善する
chmod -R 777zookeeper-3.4.10
分析と思考7:プロセスを殺す
各ホストの飼育係のプロセスを表示する
表示コマンド:
jps
対応するプロセスを強制終了し、各プロセスを操作し、各プロセスを強制終了した後にzookeeperを起動し、最後にステータスを確認します
bin / zkServer.sh start
bin /zkServer.shステータス
bin / zkServer.sh restart #Restart、これを数回使用しましたが、そのようなプロセスがないことが示されています。現時点では、それがこのホストの原因であるかどうかを確認できます。主に上記の2つのコマンドを使用します。
3つのプロセスが強制終了されて開始されたが、ステータスを確認してもエラーが報告される場合は、さらに数回強制終了します。これが私のやり方です。4〜5回強制終了するのが適切です。
Zookeeperクラスターを起動し、ステータススクリプトを表示します
#!/bin/bash
echo "***********正在启动zookeeper集群************ "
ssh root@zly1 source /etc/profile;/usr/zookeeper/zookeeper-3.4.10/bin/zkServer.sh start
ssh root@zly2 source /etc/profile;/usr/zookeeper/zookeeper-3.4.10/bin/zkServer.sh start
ssh root@zly3 source /etc/profile;/usr/zookeeper/zookeeper-3.4.10/bin/zkServer.sh start
echo "* * * * * * *查看是否启动成功及状态信息* * * * * * * * * * "
echo "* * * * * * * * * localzly查看 * * * * * * * * * *"
ssh root@zly1 "source /etc/profile;jps;/usr/zookeeper/zookeeper-3.4.10/bin/zkServer.sh status"
echo "* * * * * * * * * slave1查看 * * * * * * * * * * *"
ssh root@zly2 "source /etc/profile;jps;/usr/zookeeper/zookeeper-3.4.10/bin/zkServer.sh status"
echo "* * * * * * * * * slave3查看 * * * * * * * * * * *"
ssh root@zly3 "source /etc/profile;jps;/usr/zookeeper/zookeeper-3.4.10/bin/zkServer.sh status"
それがうまくいけば、再訪することができ、質問があれば、一緒に話し合うことができます。つまり、行き来することができます。