API原理是通过调用master client模块,实例化一个LocalClient对象,再调用cmd()方法来实现的。
以下API实现test.ping的示例:(其他API调用只需要改变cmd即可)
常用模块
功能:实现系统层面的压缩包调用,支持gzip、gunzip、rar、tar、unrar、unzip等
示例:
API调用:
功能:实现远程的命令行调用执行(默认具备root操作权限,使用时需评估风险)
示例:
API调用:
功能:实现远程文件、目录的复制,以及下载URL文件等操作
示例:
API调用:
功能:实现被控主机的crontab操作
示例:
API调用:
功能:实现被控主机通用DNS操作
示例:
API调用:
功能:被控主机常见的文件操作,包括文件读写、权限、查找、校验
示例:
API调用:
功能:被控主机的iptables支持
示例:
API调用:
功能:返回被控主机的网络信息
示例:
API调用:
功能:被控主机程序包管理,如:yum、apt-getdegn
示例:
API调用:
功能:被控主机程序包服务管理
示例:
API调用:
除了上述模块外,saltstack还提供了user(系统用户模块)、group(系统组模块)、partition(系统分区模块)、puppet(puppet管理模块)、system(系统重启、关机模块)、timezone(时区管理模块)、nginx(nginx管理模块)、mount(文件系统挂载模块)等等。当然我们也可以通过Python扩展模块来满足需求。
参考资料:
根据刘天斯《Python自动化运维技术与最佳实践》整理
Original: https://www.cnblogs.com/andy6/p/11705007.html
Author: 张冲andy
Title: Saltstack系列3:Saltstack常用模块及API
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/551208/
转载文章受原作者版权保护。转载请注明原作者出处!