SaltStack数据系统-Grains
上一篇:SaltStack配置管理
granis:谷粒
pillar:柱子
grains是salt的一个组件,存放minion启动时候收集的信息(状态信息)
查看
1 | salt '*' grains.items |
只列出名称
1 | salt '*' grains.ls |
获取固定的
1 | salt '*' grains.get fqdn_ip4 |
获取eth0的ip地址
1 | salt '*' grains.get ip4_interfaces:eth0 |
使用grains进行目标匹配
只在CentOS系统下面执行命令
1 | salt - G 'os:CentOS' cmd.run 'uptime' |
匹配所有grains的os值为CentOS的主机然后执行命令
在top里面使用grains
/srv/salt/base/top.sls
1 2 3 4 | base: 'os:CentOS' : - match: grain - web.apache |
'os:CentOS':匹配os为CentOS的主机
- match: grain:匹配方法(与在命令行不同需要加匹配方法这里的grain没有s)
执行命令和之前执行高级状态命令一样
1 | salt '*' state.highstate |
自定义grains
方法一:在配置文件里面定义/etc/salt/minion (不建议在minion里面定义,因为最佳实践要求所有minion的配置文件是一样的如果单独修改某一个minion会导致混乱)
其中roles是key对应的webserver等是value
方法二:在配置文件夹新建一个文件/etc/salt/grains
1 | test - grains: linux - node2 |
需要重启minion才能查看到
PS:不重启同步grains的方法,执行命令
1 | salt '*' saltutil.sync_grains |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!