首先,贴上脚本

编写zookeeper群启脚本时遇到的问题

启动方式就是简单的ssh远程执行脚本

写好之后执行该脚本,显示一切正常

编写zookeeper群启脚本时遇到的问题

但是查看jps进程时,仍然显示zookeeper未启动,

解决过程:

查看zookeeper日志文档:cat /opt/module/zookeeper-3.4.10/zookeeper.out

编写zookeeper群启脚本时遇到的问题

发现zookeeper一直在拒绝连接,怀疑是环境变量问题,查询资料发现:

在非登陆shell中,环境信息会读取/etc/bash.bashrc和/home/user/.bashrc

在登陆shell中,环境信息会读取/etc/profile和依次执行读取 /home/user/下的.bash_profile, .bash_login, .profile

因此,我有了两种方案:

一、把我在profile中的配置信息复制到.bashrc中:cat /etc/profile >> /home/user/.bashrc

并且,在/opt/module/zookeeper-3.4.10/bin/zkEnv.sh中添加:编写zookeeper群启脚本时遇到的问题

之后再将zkEnv.sh分发到所有集群中(如果不分发,只能启动这一台节点)

然后就over了,当然,还有更简单的方法

二、这一种稍微简单点,直接在编写的命令中修改执行环境:

编写zookeeper群启脚本时遇到的问题

当然,别忘了为你写好的脚本添加权限,比较粗暴的就直接为自己的脚本执行“chmon 777 脚本名称”吧

相关文章: