I used to deploy our application into 200 centos machine, and these machines are far from my current office site. The deployment is simple.
Firstly sync the code and build in the Head Linux ( one of the machine in the Linux farm). Then copy the build to the other 199 machines.
Finally start the application on all the machines.
Yes, it is very simple. But if you deploy it in hand ,it will be crazy. It's the place to show the power of the shell script.
1. Sync code and build in one "build.sh" scipt.
2. Copy the build to other machine in scp-range.sh script, which use the scp command.
#!/bin/sh
build=$1
destination=$2
iplists=$3
for host in $(cat $iplists)
do
scp $1 host:$destination
done
Wow, so cool!
One way , you can see, is that it without typing password. I has two way to solve it. One is use the ssh authorized using the key-pair. The other way is to use the expect script.
Note: All the machine have the same password.
3. Start the application in the remote.
#!/bin/sh
cmd=$1
iplists=$3
for host in $(cat $iplists)
do
ssh -t -t -f host "$cmd"
doneWow, so cool. When I run these script, it give my sharp surprise.
Of course, all the 3 steps can be automated. You can just type one command to execute whole the thing.
If I want to automate these in window os, OMG, it will be impossible for me .
This is the way I see the power of Linux .
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步