1.获得某些命令,或者模块的帮助
例如:
salt '*' sys.doc test salt '*' sys.doc test.ping salt '*' sys.doc state salt '*' sys.doc ....
2.当某个文件内容发生变化就执行某个命令
cmd.wait - name: 'sysctl -p' - user: root - watch: - file:sysctl.conf
3.编写sls文件分发目录
/tmp: file.recurse: - source: salt://somedir
4.检测节点状态
salt-run manage.status salt-run manage.up salt-run manage.down
5.salt-ssh(需要安装sshpass软件包)
配置的官方链接
http://docs.saltstack.com/topics/ssh/index.html
salt-ssh 'yourid' test.ping salt-ssh 'yourid' -r 'uname -a' salt-ssh 'yourid' disk.usage salt-ssh 'yourid' grains.item os salt-ssh 'yourid' state.sls sometest
6.salt halite配置
参照官方链接
http://docs.saltstack.com/topics/tutorials/halite.html
7.salt gitfs配置
参照官方链接
http://docs.saltstack.com/topics/tutorials/gitfs.html
8.salt所有模块列表
参照官方链接
http://docs.saltstack.com/py-modindex.html
9.salt关于svn应用
参照官方链接
http://docs.saltstack.com/ref/states/all/salt.states.svn.html
http://your-svn-repo: svn.latest: - rev: 50 - target: /tmp - username: yourname - password: yourpassword
10.salt个例机子操作
除了yourid以外的monion都执行该操作
salt -C '* not yourid' test.ping
11.salt 计划任务
查看root的计划任务 salt '*' cron.raw_cron root 创建一个计划任务 salt '*' cron.set_job root '*' '*' '*' '*' 5 "/bin/touch /tmp/test" 删除一个计划任务 salt '*' cron.rm_job root "你计划任务中所执行的命令" 例如: salt '*' cron.rm_job root "/bin/touch /tmp/test 注意,使用salt删除计划任务的时候,这个计划任务一定是在 # Lines below here are managed by Salt, do not edit 这行下面。如果你的计划任务是在这行上面,则salt删除不会生效。如果在这行下面,则生效 从文件中创建计划任务(这个文件要使用绝对路径) salt '*' cron.write_cron_file root /tmp/new_cron 其中new_cron文件中首行内容为 # Lines below here are managed by Salt, do not edit 不然可以创建,但是删除不了。其中这个new_cron所在的路径不能有中文路径。 其中cron.write_cron_file_verbose为查看详细内容。基本用不到。 salt '*' cron.write_cron_file_verbose root /tmp/new_cron
12. salt hosts
添加主机记录 salt '*' hosts.add_host <ip> <alias> 根据IP获取别名 salt '*' hosts.get_alias <ip addr> 根据别名获取IP salt '*' hosts.get_ip <hostname> 列出所有的主机记录 salt '*' hosts.list_hosts 删除指定IP和hosts主机记录 salt '*' hosts.rm_host <ip> <alias> 修改指定IP的主机记录 salt '*' hosts.set_host <ip> <alias>
13.salt timezone
获取硬件时钟 salt '*' timezone.get_hwclock 获取时区代码(比如东八区+800) salt '*' timezone.get_offset 获取时区 salt '*' timezone.get_zone 修改时区 salt '*' timezone.set_zone 'America/Denver' 时区比较,如果一样则为true,如果不一样,则为false salt '*' timezone.zone_compare 'Asia/Shanghai'
14. 一些类似cookbook的东西,大神们写的,可以借鉴
https://github.com/saltstack-formulas/ https://github.com/blast-hardcheese/blast-salt-states https://github.com/kevingranade/kevingranade-salt-state https://github.com/uggedal/states https://github.com/mattmcclean/salt-openstack/tree/master/salt https://github.com/rentalita/ubuntu-setup/ https://github.com/brutasse/states https://github.com/bclermont/states https://github.com/pcrews/salt-data