salt环境介绍
本文的在master中配置的file_roots如下:
1 2 3 4 5 6 7
| file_roots: base: - /srv/salt/base prod: - /srv/salt/prod test: - /srv/salt/test
|
salt目录配置
1 2 3 4 5 6 7 8 9
| [root@localhost java]# pwd /srv/salt/prod/java [root@localhost prod]# tree java/ java/ ├── files │ └── jdk-8u65-linux-x64.tar.gz └── java-install.sls
1 directory, 2 files
|
salt文件内容
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| [root@localhost java]# cat java-install.sls java_install: file.managed: - name: /usr/local/src/jdk-8u65-linux-x64.tar.gz - source: salt://java/files/jdk-8u65-linux-x64.tar.gz - user: root - group: root - mode: 755 cmd.run: - name: mkdir -p /data/app/ && cd /usr/local/src/ && tar -zxf jdk-8u65-linux-x64.tar.gz && mv jdk1.8.0_65/ /data/app/ && ln -s /data/app/jdk1.8.0_65/ /data/app/java - unless: test -d /data/app/jdk1.8.0_65/ - require: - file: java_install
java_init: file.append: - name: /etc/profile - text: - '###setup java by niu at 2015-12-10' - export JAVA_HOME=/data/app/java - export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
|
注意文件的缩进和空格。
jinja模板对空格有强依赖。
在所有minion端安装java程序。
1
| salt '*' state.sls java.java-install env=prod
|
登录minion端 查看结果。
1 2 3 4
| > java -version java version "1.8.0_65" Java(TM) SE Runtime Environment (build 1.8.0_65-b17) Java HotSpot(TM) 64-Bit Server VM (build 25.65-b01, mixed mode)
|
注意
- salt文件的书写要注意空格的缩进。
- 以上内容只在centos6,7系统下测试过。