saltstack入门##
安装###
- server安装
- 三大功能:远程执行,配置管理,云管理
yum install salt-master salt-minion -y
- minion安装
yum install salt-minion -y
设置为开机自动启动 chkconfig salt-master on
启动:
/etc/init.d/salt-master start
配置minion(minion需要知道主人是谁)
vim /etc/salt/minion
master: IP地址
还有一个需要注意的是ID,默认为空,为空的时候就是默认为fqdn名,可以配ip。
- 同意秘钥
salt-key -a linux*
salt-key -A
sallt-key --help
salt-key -L
saltstack 远程执行
salt '*' test.ping
刚才的问题就是, salt-key -L显示Accepted Keys:test.29.216但是远程连接这台机器又是不能执行指令的,一开始我把master和minion上
/etc/salt/pki/minion
里面的minion.pub全部删掉了,结果全部不能连接。于是我又恢复,但是29.218就不能连接了。
- 安装Apache
vim /etc/salt/master
file_roots:
base:
- /srv/salt
**没有目录的话要先创建。改完要重启 **
vim /srv/salt/apache.sls
apache-install:
pkg.installed:
- names:
- httpd
- httpd-devel
apache-service:
service.running:
- enable: True
- reload: True
执行
salt '*' state.sls apache
- 高级状态
一台机器不可能只有一个状态,可能有多个状态
默认情况下,使用高级状态的话有个入口文件,入口文件上写明,这台机器上有这个状态,这台机器上有这个状态。就不用指定哪台机器有什么状态了,直接从入口文件上读就行。使用top.sls
默认top.sls必须放在base环境下/srv/salt
vim top.sls
base:
'192.168.29.216' :
- apache
salt '*' state.highstate