1.为了方便ssh连接,最好把所有的主机之间实现免密登录
ssh-keygen
sh-copy-id 主机名
2.在根目录下新建bin文件夹,并创建部署的脚本start.sh
#!/bin/bash
for i in 1 2 3
dossh weijie$i "source /etc/profile; /root/apps/zookeeper-3.4.5/bin/zkServer.sh start"
done
补充:
2.1 在linux中的root目录下去创建bin目录通过脚本名可以直接启动脚本
2.2 source命令作用:由于ssh在终端命令登录到指定的主机是不能不能自动去获取环境变量,例如:ssh weijie$i " /root/apps/zookeeper-3.4.5/bin/zkServer.sh start"
是不能获取环境变量,但是通过ssh可视化工具登录或者ssh去链接到指定主机是可以获取环境变量。
3.运行创建的脚本
sh start.sh
补充:
export作用:它所修饰的作用域为当前shell进程以及子进程。不加export修饰的变量只能在当前进程有效
例如:
在v1.sh文件中写入:
#!/bin/bash
a=1
v2.sh
在v2.sh文件写入:
#!/bin/bash
echo $a
运行v1.sh没有内容输出。
当把v1中的a=1定义成export再运行v1.sh就会输出1