[root@master ~]# vim /etc/salt/minion#master: salt //第16行下方添加
master: 192.168.1.10 //说明服务端的地址
[root@master ~]# systemctl start salt-master[root@master ~]# systemctl start salt-minion[root@minion ~]# vim /etc/salt/minion#master: salt //第16行下方添加
master: 192.168.1.10 //指定服务端的地址
[root@minion ~]# systemctl start salt-minion[root@master ~]# ps aux | grep salt
root 11175 0.0 0.8 234056 15508 ? Ss 08:19 0:00 /usr/bin/python /usr/bin/salt-minion
root 11181 0.3 1.4 533332 27040 ? Sl 08:19 0:00 /usr/bin/python /usr/bin/salt-minion
......
3、配置认证
[root@master ~]# salt-key -a minion //增加一个minion的密钥认证
The following keys are going to be accepted:
Unaccepted Keys:
minion
Proceed? [n/Y] y
Key for minion minion accepted.
[root@master ~]# salt-key -A|d //签名所有主机|删除指定的主机[root@minion ~]# cd /etc/salt/pki/minion/[root@minion minion]# ls //在被监控端看到生成的密钥minion_master.pub
minion_master.pub minion.pem minion.pub
[root@master ~]# salt 'minion' test.ping //探测主机是否在线
minion:
True
[root@master ~]# salt 'minion' cmd.run 'df -hT' //查看分区
4、grains组件
[root@master ~]# salt 'minion' grains.ls //列出所有的grains项目名称[root@master ~]# salt 'minion' grains.items //列出所有的grains项和对应的值[root@minion ~]# vim /etc/salt/grains //自定义grains组件
role: zabbix_server
env: test
myname: linux-zabbix
myhostname: minion
[root@minion ~]# systemctl restart salt-minion[root@master ~]# salt 'minion' grains.items env
domain:
env:
test
fqdn:
minion
myhostname:
minion
myname:
linux-zabbix
role:
zabbix_server
[root@master ~]# salt -G env:test cmd.run 'w' //指定env:test子项运行‘w’命令
5、pillar组件
[root@master ~]# vim /etc/salt/master //取消下面三行的注释
pillar_roots: //pillar_roots 前面有一个空格
base:
- /srv/pillar
[root@master ~]# mkdir -p /srv/pillar //创建pillar文件的存放目录[root@master ~]# cd /srv/pillar/[root@master pillar]# vim test.sls //创建配置文件
conf: /etc/123.conf //注意冒号后有空格
myname: saltstack-server
[root@master ~]# vim /srv/pillar/top.sls //创建编写入口配置文件
base:
'minion':
- test //注意- 后有空格
[root@master ~]# salt '*' pillar.items
master:
----------
minion:
----------
conf:
/etc/123.conf
myname:
saltstack-server
[root@master ~]# salt '*' saltutil.refresh_pillar
master:
True
minion:
True
二、Saltstack 配置管理服务
1、配置安装apache
[root@master ~]# vim /etc/salt/master //取消注释
file_roots:
base:
- /srv/salt/
[root@master ~]# mkdir /srv/salt[root@master ~]# cd /srv/salt[root@master salt]# vim top.sls
base:
'minion':
- apache
[root@master salt]# systemctl restart salt-master[root@master salt]# vim /srv/salt/apache.sls
apache-service:
pkg.installed:
- names:
- httpd
- httpd-devel
service.running:
- name: httpd
- enable: True
[root@master salt]# salt 'minion' state.highstate
minion:
----------
ID: apache-service
Function: pkg.installed
Name: httpd
Result: True
Comment: Package httpd is already installed.
Started: 09:11:33.886157
Duration: 1135.946 ms
Changes:
----------
ID: apache-service
Function: pkg.installed
Name: httpd-devel
Result: True
Comment: The following packages were installed/updated: httpd-devel
Started: 09:11:35.022221
Duration: 29384.803 ms
Changes:
----------
[root@minion ~]# httpd -v
Server version: Apache/2.4.6 (CentOS)
Server built: Apr 2 2020 13:13:23