千家信息网

如何进行saltstack的grains使用以及cmd.run.md(四)

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,如何进行saltstack的grains使用以及cmd.run.md(四),很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
千家信息网最后更新 2026年11月01日如何进行saltstack的grains使用以及cmd.run.md(四)

如何进行saltstack的grains使用以及cmd.run.md(四),很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

grains.items主要用来收集minion端的信息,方便进行信息采集,后续的piller使用,根据硬件信息自动匹配配置文件等。

基本用法

grains.ls

salt '*' grains.ls 显示所有minion的item

grains.items

salt '*' grains.items 显示所有minion的item值

grains.item

salt '*' grains.item os 显示os的相关信息。如下 :root@salt ~ # salt 'sa10-003' grains.item ossa10-003:  os: RedHat

如果想同时获取多个item,可以在后面接空格后,直接相关item,如下:

root@salt ~ # salt 'sa10-003' grains.item os osrelease oscodenamesa10-003:  os: RedHat  oscodename: Tikanga  osrelease: 5.8

自定义grains: 首先,现在salt的根目录下(/srv/salt)建一个目录_grains

mkdir /srv/salt/_grainscd /srv/salt/_grains

假设我要取minion端内存的信息 事例如下: vim mem.py

# -*- coding: utf-8 -*-'''Module for squid disk information by python'''import commandsimport osdef cache():    '''    Return the memory usage information for volumes mounted on this minion    '''    grains={}    m = commands.getoutput("free -g|awk '$0~/Mem/ {print$2+1}'")    grains['mem_test']=int(m)    return grains

同步到minion端

root@salt _grains # salt 'sa10-003' saltutil.sync_all sa10-003:    ----------    grains:        - grains.mem #已经同步过来了    modules:    outputters:    renderers:    returners:    states:

如果需要更改模块,更改完成后,可以使用下面命令重载:

salt sa10-003 sys.reload_modules

验证下之前的自定义grains:

root@salt _grains # salt sa10-003 grains.item mem_testsa10-003:  mem_test: 2

sa10-003的内存信息:

[root@sa10-003 salt]# free -m             total       used       free     shared    buffers     cachedMem:          2012       1766        246          0        286       1207-/+ buffers/cache:        272       1739Swap:            0          0          0

在saltmaster上面自定义grains取到的信息和本机是一致的


除了salt自带和我们自定义的items可以取到系统信息之外,我们还可以使用shell命令在来达到目的;当然,这需要salt的另外一个强大的命令,cmd.run 我要取sa10-003的内存信息,可以使用下面的命令:

root@salt _grains # salt sa10-003 cmd.run 'free -m'sa10-003:                 total       used       free     shared    buffers     cached    Mem:          2012       1769        242          0        286       1207    -/+ buffers/cache:        275       1736    Swap:            0          0          0

cmd.run在master端进行操作,后面跟着的是系统相关的shell命令,这种方式,可以实现minion端几乎所有的命令。

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。

信息 命令 内存 我要 系统 同步 帮助 强大 清楚 一致 事例 内容 同时 多个 对此 文件 文章 新手 方式 更多 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 瑰夏咖啡 上海喔噻互联网科技有限公司 广东猪兼强互联网科技有限公司 互联网科技公司官网 奇酷互联网科技公司 伴你行互联网科技有限公司 成都玖崟互联网科技有限公司乐商圈怎么样 茂名市互联网科技产业园 全球顶尖互联网科技公司 互联网还是高科技吗 互联网科技研发水平 企晟互联网信息科技有限公司 卓翼科技产业互联网合作 互联网方面的科技前沿 2021互联网科技公司排名 上海互联网科技公司ppt 互联网科技平台产品运营 兰石爱特工业互联网科技分公司 互联网科技博主张洲 银川新华互联网科技学校招聘 南京欣网互联网络科技有限公司 A股互联网金融科技公司 互联网 科技创业 隆华科技工业互联网 以后互联网后是啥科技 昊天互联网科技有限公司 2021互联网科技公司排名 怎样加入科技互联网 广州三三互联网科技有限公司 广西泛欧互联网科技有限公司
0