首先,贴上脚本
启动方式就是简单的ssh远程执行脚本
写好之后执行该脚本,显示一切正常
但是查看jps进程时,仍然显示zookeeper未启动,
解决过程:
查看zookeeper日志文档:cat /opt/module/zookeeper-3.4.10/zookeeper.out
发现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中添加:
之后再将zkEnv.sh分发到所有集群中(如果不分发,只能启动这一台节点)
然后就over了,当然,还有更简单的方法
二、这一种稍微简单点,直接在编写的命令中修改执行环境:
当然,别忘了为你写好的脚本添加权限,比较粗暴的就直接为自己的脚本执行“chmon 777 脚本名称”吧