saltsack自动化配置day01:之远程执行-Modules
1. 官方模块链接
官网可执行模块文档:
https://docs.saltstack.com/en/latest/ref/modules/all/
2. 常用模块
network模块
收集和管理网络信息的模块
service模块
管理minion系统服务的模块
state模块
控制minion端state系统的模块
file模块
管理minion端文件和目录相关的模块
3. 禁用cmd模块方法
vim /etc/salt/master publisher_acl_blacklist: # users: # - root # - '^(?!sudo_).*$' # all non sudo users modules: - cmd
[root@salt-master ~]# salt '10.1.0.112' cmd.run 'uptime' 10.1.0.112: 00:51:52 up 204 days, 6:38, 2 users, load average: 0.00, 0.01, 0.05 [root@salt-master ~]# systemctl restart salt-master [root@salt-master ~]# salt '10.1.0.112' cmd.run 'uptime' Failed to authenticate! This is most likely because this user is not permitted to execute commands, but there is a small possibility that a disk error occurred (check disk/inode usage). [root@salt-master ~]#
4、Salt远程执行命令的原理
salt-master和salt-minion属于订阅发布模式。salt-master默认会启动两个监听端口,默认是4505和4506。
- 4506作用:Salt Master Ret接口,支持认证、文件服务、结果收集等功能;
- 4505作用:Salt Master Pub接口,提供远程执行命令发送功能。
1)salt-minion启动时从配置文件中获取master地址,如果为域名,则进行解析。解析完成后,会连接master的4506进行key认证。认证通过后,会连接4505端口订阅来自master pub接口的任务;
2)当master下发操作指令时,所有minion都能接收到,然后minion会检查本机是否匹配。如果匹配,则执行。执行完毕后,把结果发送到master的4506由master进行处理。
附:master和minion命令发送通信完全是异步的,并且命令包通过maqpack进行序列化后数据会进一步压缩,所以salt的网络负载非常低
作者:罗阿红
出处:http://www.cnblogs.com/luoahong/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。