saltstack 基础模块

 Salt 在 linux 系统下 基础操作

1、更改权限
# salt '172.16.3.9' file.set_mode /root/test 777

2、更改用户
# salt '172.16.3.9' file.chown /root/test test test

3、复制文件
# salt '172.16.3.9' file.copy /root/test /root/

cmd 模块:实现远程的命令行调用执行(默认具有root权限)

# salt '172.16.3.9' cmd.run 'free -m' 

cp模块:实现远程文件、目录的复制,以及下载URL文件等操作

1、将主服务器的目录复制到被控主机
# salt '172.16.3.9' cp.get_dir salt://test/dir /minion/test

2、将主服务器文件复制到被控主机
# salt '172.16.3.9' cp.get_file salt://test/file /minion/test

3、下载URL内容到被控主机指定位置
# salt '172.16.3.9' cp.get_url http://www.qq.com/qq /tmp/qq

file 模块

1、file.stats 文件的信息状态

salt '10.207.141.22' file.stats /root/11.sh

1、更改用户组
# salt '172.16.3.9' file.chown /root/test test test

2、拷贝  /root/11.sh 到 /data/11.sh 
# salt '172.16.3.9' file.copy /root/11.sh  /data/11.sh 

3、更改权限  (cp.get_mode 获取权限)
# salt '172.16.3.9' file.get_mode /root/11.sh
# salt '172.16.3.9' file.set_mode /root/test 0777

4
、创建文件 # salt '172.16.3.9' file.mkdir /root/test2 5、sed 编辑替换 # salt '172.16.3.9' file.sed /root/file1 ‘one’ ‘two’ 6、编辑文件 在最后一行添加 一行 line123 # salt '172.16.3.9' file.append /root/file1 'line123' 7、备份文件 (备份文件为 file1.bak )
# salt '172.16.3.9' file.flie_exists /root/file1
8、备份文件夹
# salt '172.16.3.9' file.directory_exists /root/test
9、删除文件
# salt '172.16.3.9' file.remove /root/file1

pkg 包管理 (安装包)

# salt '172.16.3.9' pkg install nginx
# salt '172.16.3.9' pkg.remove nginx
# salt '172.16.3.9' pkg.upgrade nginx

service 服务模块:被控主机程序包服务管理

# salt '172.16.3.9' service.enable nginx
# salt '172.16.3.9' service.disable nginx
# salt '172.16.3.9' service.reload nginx
# salt '172.16.3.9' service.restart nginx
# salt '172.16.3.9' service.start nginx
# salt '172.16.3.9' service.stop nginx
# salt '172.16.3.9' service.status nginx

iptables 模块

1、添加一个端口 123456
# salt '172.16.3.9' iptables.append filter INPUT rule='-m state --state NEW -m tcp -p tcp --dport 12345 -j ACCEPT'

2、在 filter 规则第六行 插入 
salt '172.16.3.9' iptables.insert filter INPUT position=6 rule='-m state --state NEW -m tcp -p tcp --dport 7788 -j ACCEPT'

3、删除 filter 规则下的第六行
# salt '172.16.3.9' iptables.delete filter INPUT position=6

4、保存 iptables 
# salt '172.16.3.9' iptables.save /etc/sysconfig/iptables

cron模块:实现被控主机的crontab操作

1、查看 root 账户下的 crontab 任务
# salt '172.16.3.9' cron.raw_cron root
2、添加  任务 
# salt '172.16.3.9' cron.set_job root  30 23 * * * /usr/local/etc/rc.d/httpd restart
3、删除任务
# salt '172.16.3.9' cron.rm_job root 30 23 * * * /usr/local/etc/rc.d/httpd restart

network 模块 :返回被控主机的网络信息

1、指定被控主机获取dig、ping、traceroute目录域名信息
salt '172.16.3.9' network.dig www.qq.com
salt '172.16.3.9' network.ping www.qq.com
salt
'172.16.3.9' network.traceroute www.qq.com 2、取指定被控主机的mac地址 salt '172.16.3.9' network.hwaddr eth0 3、测指定被控主机是否属于10.0.0.0/16子网范围,属于则返回 True salt '172.16.3.9' network.in_subnet 10.0.0.0/16 4、取指定被控主机的网卡配置信息 salt '172.16.3.9' network.interfaces 5、取指定被控主机的IP地址配置信息 salt '172.16.3.9' network.ip_addrs 6、取指定被控主机的子网信息 salt '172.16.3.9' network.subnets
原文地址:https://www.cnblogs.com/sharesdk/p/10815933.html