saltstack相关
假设:
盐服务器: AMH
盐爪牙: AMH , 客户1741 , cdn-nginx , cdn清漆
查看salt-minion是否 在线
[根@ AMH〜]# 盐 '*’ 测试.ping
cdn-nginx:
真的
客户1741:
真的
AMH:
真的
cdn清漆:
真的
查看所有的minion,包括认证的和没有认证的
[根@ AMH〜]# 盐键-L
接受的密钥:
AMH
cdn-nginx
cdn清漆
客户1741
拒绝密钥:
未接受的密钥:
被拒绝的密钥:
添加一个minion
[根@ AMH〜]# 盐键-a
添加所有的minion
[根@ AMH〜]# 盐键-A
删除一个minion
[根@ AMH〜]# 盐键-d
例如:
[根@ AMH〜]# 盐键-d 192.168.17.111
以下密钥将被删除:
接受的密钥:
192.168.17.111
继续? [不适用] ÿ
奴才的钥匙 192.168.17.111 已删除.
删除所有的minion
[根@ AMH〜]# 盐键-D
执行salt-key –help 可以看到更多用法
命令.run
执行简单的命令
[根@ AMH〜]# 盐 '*’ cmd.run '日期’
cdn-nginx:
星期二 四月 17 14:11:31 科学技术委员会 2018
客户1741:
星期二 四月 17 14:11:31 科学技术委员会 2018
AMH:
星期二 四月 17 14:11:31 科学技术委员会 2018
cdn清漆:
星期二 四月 17 14:11:32 科学技术委员会 2018
[根@ AMH〜]# 盐 '*’ cmd.run 'df -h’
客户1741:
已使用的文件系统大小可用百分比已安装在
/dev/mapper/VolGroup-lv_root 28G 7.3G 19G 29% /
tmpfs 242M 12K 242M 1% /dev / shm
/dev / sda1 485M 35M 426M 8% /开机
cdn清漆:
已使用的文件系统大小可用百分比已安装在
/dev/mapper/VolGroup-lv_root 28G 7.3G 19G 29% /
tmpfs 242M 12K 242M 1% /dev / shm
/dev / sda1 485M 35M 426M 8% /开机
AMH:
已使用的文件系统大小可用百分比已安装在
/dev/mapper/VolGroup-lv_root 28G 13G 14G 47% /
tmpfs 301M 16K 301M 1% /dev / shm
/dev / sda1 485M 35M 426M 8% /开机
cdn-nginx:
已使用的文件系统大小可用百分比已安装在
/dev/mapper/VolGroup-lv_root 28G 9.4G 17G 37% /
tmpfs 242M 12K 242M 1% /dev / shm
/开发/sda1 477M 55M 398M 12% /开机
让master上的脚本在远程执行
vim /等/盐/主人配置文件
添加红框中的内容
/etc/init.d/salt-master 重启
在/srv/salt/下创建script目录,编辑查看日期的脚本
vim /srv/salt/script/date.sh
#!/垃圾桶
echo "显示当前时间"
重启MySQL即可生效
#结束
master执行这个脚本
盐 '*’ cmd.script 盐://脚本/数据.sh
[root@AMH 脚本]# 盐 '*’ cmd.script 盐://脚本/日期.sh
AMH:
———-
进程号:
2022
重新编码:
0
标准错误:
标准输出:
显示当前时间
星期二 四月 17 14:28:51 科学技术委员会 2018
cdn-nginx:
———-
进程号:
50672
重新编码:
0
标准错误:
标准输出:
显示当前时间
星期二 四月 17 14:28:51 科学技术委员会 2018
客户1741:
———-
进程号:
2488
重新编码:
0
标准错误:
标准输出:
显示当前时间
星期二 四月 17 14:28:51 科学技术委员会 2018
cdn清漆:
———-
进程号:
3195
重新编码:
0
标准错误:
标准输出:
显示当前时间
星期二 四月 17 14:28:51 科学技术委员会 2018
cp.get_file 和 cp.get_dir
将master上的脚本传到远程服务器的/opt目录下
假设脚本sysinfo.sh 放在 /srv/salt/上
[根@AMH盐]# 盐 '*’ cp.get_file 盐://sysinfo.sh /opt/sysinfo.sh
或者采用gzip压缩方式分发该脚本
[根@AMH盐]# 盐 '*’ cp.get_file 盐://sysinfo.sh /opt/sysinfo.sh gzip=6
然后执行 salt ‘*’ cmd.run ‘ls /opt/sysinfo.sh’ 看每台服务器是否存在该文件
每一台minion执行此脚本
[根@AMH盐]# 盐 '*’ cmd.script '/opt/sysinfo.sh’
将test_dir目录传到 minion的/tmp下
[根@AMH盐]#盐 '*' cp.get_dir 盐://test_dir /tmp gzip=6
pkg模块
相当于RHEL的yum 和ubuntu的apt-get
盐 '*’ pkg.安装包
盐 '*’ pkg.remove包
举例
[根@AMH盐]# 盐 '*’ pkg.install httpd
客户1741:
———-
AMH:
———-
cdn-nginx:
———-
httpd:
———-
新的:
2.2.15-60.el6.centos.6
老的:
2.2.15-29.el6.centos
httpd-手册:
———-
新的:
2.2.15-60.el6.centos.6
老的:
2.2.15-29.el6.centos
httpd工具:
———-
新的:
2.2.15-60.el6.centos.6
老的:
2.2.15-29.el6.centos
mod_ssl:
———-
新的:
1:2.2.15-60.el6.centos.6
老的:
1:2.2.15-29.el6.centos
cdn清漆:
———-
httpd:
———-
新的:
2.2.15-60.el6.centos.6
老的:
2.2.15-29.el6.centos
httpd-手册:
———-
新的:
2.2.15-60.el6.centos.6
老的:
2.2.15-29.el6.centos
httpd工具:
———-
新的:
2.2.15-60.el6.centos.6
老的:
2.2.15-29.el6.centos
mod_ssl:
———-
新的:
1:2.2.15-60.el6.centos.6
老的:
1:2.2.15-29.el6.centos
[根@AMH盐]# 盐 '*’ cmd.run ‘rpm -qa | grep httpd’
cdn-nginx:
httpd-tools-2.2.15-60.el6.centos.6.x86_64
httpd-2.2.15-60.el6.centos.6.x86_64
httpd-manual-2.2.15-60.el6.centos.6.noarch
cdn清漆:
httpd-manual-2.2.15-60.el6.centos.6.noarch
httpd-tools-2.2.15-60.el6.centos.6.x86_64
httpd-2.2.15-60.el6.centos.6.x86_64
客户1741:
httpd-manual-2.2.15-60.el6.centos.6.noarch
httpd-2.2.15-60.el6.centos.6.x86_64
httpd-tools-2.2.15-60.el6.centos.6.x86_64
httpd-devel-2.2.15-60.el6.centos.6.x86_64
AMH:
httpd-tools-2.2.15-60.el6.centos.6.x86_64
httpd-2.2.15-60.el6.centos.6.x86_64
httpd-devel-2.2.15-60.el6.centos.6.x86_64
[根@AMH盐]# 盐 '*’ pkg.remove httpd
cdn-nginx:
———-
gnome 用户共享:
———-
新的:
老的:
2.28.2-3.el6
httpd:
———-
新的:
老的:
2.2.15-60.el6.centos.6
httpd-手册:
———-
新的:
老的:
2.2.15-60.el6.centos.6
mod_auth_kerb:
———-
新的:
老的:
5.4-10.el6
mod_perl:
———-
新的:
老的:
2.0.4-10.el6
mod_ssl
———-
新的
老的:
1:2.2.15-60.el6.centos.6
mod_wsgi:
———-
新的:
老的:
3.2-3.el6
php:
———-
新的:
老的:
5.3.3-26.el6
食人鱼:
———-
新的:
老的:
0.8.6-4.el6
AMH:
———-
httpd:
———-
新的:
老的:
2.2.15-60.el6.centos.6
httpd开发
———-
新的:
老的:
2.2.15-60.el6.centos.6
php
———-
新的:
老的:
5.3.3-49.el6
客户1741:
———-
gnome 用户共享:
———-
新的
老的:
2.28.2-3.el6
httpd:
———-
新的:
老的:
2.2.15-60.el6.centos.6
httpd开发:
———-
新的:
老的:
2.2.15-60.el6.centos.6
httpd-手册:
———-
新的:
老的:
2.2.15-60.el6.centos.6
ipa服务器:
———-
新的:
老的:
3.0.0-37.el6
ipa-server-selinux:
———-
新的:
老的:
3.0.0-37.el6
mod_auth_kerb:
———-
新的:
老的:
5.4-10.el6
mod_perl:
———-
新的:
老的:
2.0.4-10.el6
mod_ssl:
———-
新的:
老的:
1:2.2.15-60.el6.centos.6
mod_wsgi:
———-
新的:
老的:
3.2-3.el6
php:
———-
新的:
老的:
5.3.3-26.el6
食人鱼:
———-
新的:
老的:
0.8.6-4.el6
网络化器:
———-
新的:
老的:
2.21_02-3.3.el6
cdn清漆:
———-
gnome 用户共享:
———-
新的:
老的:
2.28.2-3.el6
httpd:
———-
新的:
老的:
2.2.15-60.el6.centos.6
httpd-手册:
———-
新的:
老的:
2.2.15-60.el6.centos.6
ipa服务器:
———-
新的:
老的:
3.0.0-37.el6
ipa-server-selinux:
———-
新的:
老的:
3.0.0-37.el6
mod_auth_kerb:
———-
新的:
老的:
5.4-10.el6
mod_perl:
———-
新的:
老的:
2.0.4-10.el6
mod_ssl:
———-
新的:
老的:
1:2.2.15-60.el6.centos.6
mod_wsgi:
———-
新的:
老的:
3.2-3.el6
php:
———-
新的:
老的:
5.3.3-26.el6
食人鱼:
———-
新的:
老的:
0.8.6-4.el6
网络化器:
———-
新的:
老的:
2.21_02-3.3.el6
service模块
salt ‘*’ service.enable service_name
salt ‘*’ service.disable service_name
salt ‘*’ service.start service_name
salt ‘*’ service.stop service_name
salt ‘*’ service.restart service_name
举例