(二)zookeeper的安装与配置
参考
https://blog.csdn.net/master_hunter/article/details/108704148?utm_source=app
安装
1.先从网上下载zookeeper,
这里我用的版本是zookeeper-3.4.14
下载好了之后,(这里我吧安装包放在了家目录下),安装
tar -zxvf ~/zookeeper-3.4.14.tar.gz
命令自动解压安装到家目录下,家目录生成一个zookeeper-3.4.14文件夹
在zookeeper-3.4.14里面出现这些目录
2.将zookeeper3.4.14文件夹爱移至local目录下
mv zookeeper- 3.4.14 /usr/local/
(这里有一个要注意的地方:
如果是在普通用户下,将会报错
mv: cannot move /home/had/zookeeper-3.4.14' to
/usr/local/zookeeper-3.4.14’: Permission denied
==原因:==这是因为/usr/local目录的权限和普通用户权限不够,但是如果进入root用户则会找不到~/zookeeper.3.14这个文件。
我的解决方案:
1.更改目录的权限
chmod -R 755 /usr
chmod -R 755 /usr/local
2.在普通用户下增加sudo权限
a.切换到root用户下
方法为直接在命令行输入:su,然后输入密码(即你的登录密码,且密码默认不可见)。
su root
b./etc/sudoers文件默认是只读的,对root来说也是,因此需先添加sudoers文件的写权限,命令是:
chmod u+w /etc/sudoers
c.编辑sudoers文件
即执行:vi /etc/sudoers
找到这行 root ALL=(ALL) ALL,在他下面添加xxx ALL=(ALL) ALL (这里的xxx是你的用户名)
做完以上步骤之后,
sudo mv ~/zookeeper-3.4.14 /usr/local
再输入密码,就成功将zookeeper3.4.14文件夹移动到了/usr/local目录下。
)
过程中如遇以下问题:启动后貌似启动成功,检查状态报错,实则没有启动成功
解决方法:
①检查防火墙状态(要进入root用户)
systemctl status firewalld
关闭防火墙并检查其状态
service iptables stop
service iptables status
②先把所有结点上的zookeeper启动成功(再zookeeper安装目录下),再使用检查zookeeper状态命令
第一台:
cd ~/zookeeper/zookeeper-3.4.14
bin/zkServer.sh start
第二台:
cd ~/zookeeper/zookeeper-3.4.14
bin/zkServer.sh start
第二台:
cd ~/zookeeper/zookeeper-3.4.14
bin/zkServer.sh start
分别到三台机器下检查,如
我的第一台:
bin/zkServer.sh status
我的第二台:
bin/zkServer.sh status
我的第三台:
bin/zkServer.sh status
可以用jps命令检查运行的进程
③如果做了前两步,依然报错
使用命令查看错误原因
vi zookeeper.out
比如这个是因为缺失了myid文件,所以在/tmp/zookeeper目录下创建myid就好了