java salt_salt一键部署jdk

1.准备工作

ac7a20baea8be07de0be364611e703b8.png

我们来看一下一键部署jdk的脚本。

[root@bgs-5p173-wangwenting jdk]# more init.sls

jdk-file:

file.managed:

- source: salt://jdk/jdk1.8.0_74.tar.gz //这里的salt:// 表示的salt的工作目录,在/etc/salt/master中file_roots有配置的。后面的目录文件是工作区下的安装包

- name: /opt/jdk1.8.0_74.tar.gz //这个参数的意思是拷贝到minion机器上的哪个位置上。我这里是放到/opt下面的。

- user: root                  //用是什么用户和用户组的权限去执行这个命令

- group: root

jdk-install:

cmd.run:

- name: 'cd /opt && tar zxf jdk1.8.0_74.tar.gz && ln -s /opt/jdk1.8.0_74 /opt/java && chown -R root:root /opt/jdk* && chown -R j

ava:java /opt/java' //解压,创建软件接,改变用户和用户组的指令

- unless: test -d /opt/jdk1.8.0_74 //unless:用于检查的命令,仅当``unless``选项指向的命令返回false时才执行name指向的命令,检查是否安装。

- require:                       //require要求jdk-file模块成功执行后,这里才会继续执行该模块。 - file: jdk-file

jdk-rmtgz:

file.absent: //删除minion机器上,上述jdk-file模块中copy过去的安装包,在安装完毕后,删除这个安装包。

- name: /opt/jdk1.8.0_74.tar.gz //制定删除的位置和包名。

- require: //依赖关系,先安装然后才删除。

- cmd: jdk-install

/etc/profile: //修改环境变量。

file.append:

- text:

- export JAVA_HOME=/opt/java

- export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH

- export CLASSPATH=.$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar

- require:

- file: jdk-rmtgz

485aa0ffe59f0bb5b277f594426f6616.png

我们查看salt的入口文件,top.sls中的内容:

69b4a7dbd263cf39ccfaa34163a449dd.png

2.一键部署执行命令。

821ce5a141c343d6c3aafddbd7104aaf.png

s2:

----------

ID: jdk-file

Function: file.managed

Name: /opt/jdk1.8.0_74.tar.gz

Result: True

Comment: File /opt/jdk1.8.0_74.tar.gz updated

Started: 02:40:07.024556

Duration: 5037.368 ms

Changes:

----------

diff:

New file

mode:

0644

----------

ID: jdk-install

Function: cmd.run

Name: cd /opt && tar zxf jdk1.8.0_74.tar.gz && ln -s /opt/jdk1.8.0_74 /opt/java && chown -R root:root /opt/jdk* && chown -R hadoop:hadoop /opt/java

Result: True

Comment: unless execution succeeded

Started: 02:40:12.063435

Duration: 15.891 ms

Changes:

----------

ID: jdk-rmtgz

Function: file.absent

Name: /opt/jdk1.8.0_74.tar.gz

Result: True

Comment: Removed file /opt/jdk1.8.0_74.tar.gz

Started: 02:40:12.080015

Duration: 32.4 ms

Changes:

----------

removed:

/opt/jdk1.8.0_74.tar.gz

----------

ID: /etc/profile

Function: file.append

Result: True

Comment: File /etc/profile is in correct state

Started: 02:40:12.112970

Duration: 6.612 ms

Changes:

Summary for s2

------------

Succeeded: 4 (changed=2)

Failed: 0

------------

Total states run: 4

Total run time: 5.092 s

这样我们去s2机器上就可以看到jdk已经安装成功了。

d1d15c46e72a9d60116a1433166e315c.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值