knight_ka | 生活及学习笔记

多台Centos服务器自动化部署jdk

自动化部署脚本

部署免密登录

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
##!/bin/bash
# 自动化部署jdk主程序
# 1.前期准备工作 ip地址固定 可以访问局域网
# 2.在一台centos中创建httpd,其他服务器安装wget
# 3.下载jdk源码包,解压,配置环境变量,并自动进行人机交互
# 定义变量
SERVERS="192.168.1.101 192.168.1.102 192.168.1.104"
PASSWORD=000000
# 自动创建进行ssh-copy-id 配置免密登录
auto_ssh_copy_id() {
echo '服务器开始copy-id:' + $1 + ' : ' $2
# 永久等待
expect -c "set timeout -1;
spawn ssh-copy-id -i /Users/tnp/.ssh/id_rsa.pub root@$1;
expect {
*(yes/no)* {send -- yes\r;exp_continue;}
*assword:* {send -- $2\r;exp_continue;}
eof {exit 0;}
}";
}
# 遍历所有的服务器 配置免密登录
ssh_copy_id_all(){
for SERVER in $SERVERS
do
auto_ssh_copy_id $SERVER $PASSWORD
done
}
# 调用方法
ssh_copy_id_all
# 拷贝安装脚本到各应用服务器中
for SERVER in $SERVERS
do
scp ./install.sh root@$SERVER:/root/
ssh root@$SERVER
chmod +x /root/install.sh
/root/install.sh
done

下载jdk 配置环境变量

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#!/bin/bash
if false
then
jdk自动安装脚本
1. 安装wget,下载jdk包(下载jdk源码到本机中192.168.1.92)
2. 解压jdk
3. 配置环境变量
fi
# HTTP地址
HTTP_SERVER=192.168.1.92:8080
yum install -y wget
wget $HTTP_SERVER/soft/jdk-8u91-linux-x64.tar.gz
tar -zxvf jdk-8u91-linux-x64.tar.gz -C /usr/local
cat >> ~/.bash_profile << EOF
export JAVA_HOME=/usr/local/jdk1.8.0_91
export PATH=\$PATH:\$JAVA_HOME/bin
EOF
source ~/.bash_profile