SaltStack 学习笔记 - 第四篇: SaltStack常用模块



SaltStack 通过模块来实现管理,具备丰富的模块功能,命令形式也比较自由,这里通过罗列几个有用的命令来作为入门的学习实验。


sys.doc : 类似linux的man命令,可以显示minion支持的模块的详细操作说明

# 这里查询  status.all_status 模块函数的使用方法
[root@yw_home monitor]# salt 192.168.0.100  sys.doc status.all_status
status.all_status:

    Return a composite of all status data and info for this minion.
    Warning: There is a LOT here!

    CLI Example:

        salt '*' status.all_status



status 模块是系统状态的常用信息模块,可以利用这个模块查看系统的信息

# 负载信息
[root@yw_home salt]# salt '192.168.0.100' status.loadavg
192.168.0.100:
    ----------
    1-min:
        0.0
    15-min:
        0.0
    5-min:
        0.0

# cpu信息
[root@yw_home salt]# salt '192.168.0.100' status.cpuinfo     

# 磁盘信息
[root@yw_home salt]# salt '192.168.0.100' status.diskstats
        
# 内存信息
[root@yw_home salt]# salt '192.168.0.100' status.meminfo    

# 类似w命令的返回信息
[root@yw_home salt]# salt '192.168.0.100' status.w
192.168.0.100:
    ----------
    - idle:
        10:02
    - jcpu:
        0.00s
    - login:
        183.63.100.85
    - pcpu:
        0.62s
    - tty:
        pts/0
    - user:
        root
    - what:
        0.44s /usr/bin/python



test 模块

[root@yw_home salt]#salt '192.168.0.100' test.ping 
192.168.0.100:
    True

备注: 想更多的了解test模块,可以查看 salt 192.168.0.100 sys.doc test



cmd 模块是常用的执行远程命令模块,具有强大的功能

# cmd.run 执行一个远程shell命令
[root@yw_home salt]#salt '192.168.0.100' cmd.run 'ls -l'

# cmd.script 在远程minion执行一个master上的脚本,命令会从master下载脚本到minion上并执行
# 路径为file_root参数指定的路径为 salt:// 路径
[root@yw_home salt]#salt '192.168.0.100' cmd.script salt://scripts/runme.sh


备注: 想更多的了解cmd模块,可以查看 salt 192.168.0.100 sys.doc cmd



state 模块是salt state的管理模块,可以通过state模块简单的对minion操作sls状态

# 更新指定minons的所有sls状态
[root@yw_home salt]#salt '192.168.0.100' state.highstate

# 查看当前运行的sls状态
[root@yw_home salt]#salt '192.168.0.100' state.running

# 动态指定一个sls状态
[root@yw_home salt]#salt '192.168.0.100' state.single pkg.installed name=vim

备注: 想更多的了解cmd模块,可以查看 salt 192.168.0.100 sys.doc state



saltutil 模块 saltstack的一些辅助操作命令

saltutil.is_running:

    判断一个函数是否正在使用。

    例如:

        salt '*' saltutil.is_running state.highstate
    

saltutil.kill_job:

    强制关闭一个job进程

    例如:

        salt '*' saltutil.kill_job <job id>


备注: 想更多的了解saltUtil模块,可以查看 salt 192.168.0.100 sys.doc saltutil



上面列出的仅是saltstack的一小部分模块,saltstack有超多模块来辅助进行服务器的管理,更多信息可以参考官网下载的doc文件的最后不少章节,都是讲关于模块函数的。

你可能感兴趣的:(运维,运维自动化,SALT,salt-minion)