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 /等/盐/主人配置文件

添加红框中的内容

会议1

/etc/init.d/salt-master 重启

在/srv/salt/下创建script目录,编辑查看日期的脚本

vim /srv/salt/script/date.sh

#!/垃圾桶

echo "显示当前时间"

重启MySQL即可生效

#结束

salt_config2

master执行这个脚本

盐 '*’ cmd.script 盐://脚本/数据.sh

salt_config3

 

[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’ 看每台服务器是否存在该文件

salt_config4

 

每一台minion执行此脚本

[根@AMH盐]# 盐 '*’ cmd.script '/opt/sysinfo.sh’

salt_config5

 

将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

举例

salt_config7

salt_config8

 

发表评论