saltstack的数据系统-Grains & Pillar
2017-05-09 02:41 Dr.CoCo 阅读(168) 评论(0) 编辑 收藏 举报Grains
grains是minion第一次启动的时候采集的静态数据,可以用在salt的模块和其他组件中。其实grains在每次的minion启动(重启)的时候都会采集,即向master汇报一次的。
Grains能用来做什么?
1.能匹配minion
2.能在top.sls中匹配minion
3.收集信息
实践:
1 . 查看minion的全部静态变量
1 | # salt '*' grains.items |
2 . 显示grains的变量名称
1 | # salt '*' grains.ls |
3 . 显示某一个变量
1 2 3 4 5 6 7 8 9 | # salt '*' grains.item os client: ---------- os: CentOS server: ---------- os: CentOS |
4 . 直接获取内容
1 2 3 4 5 6 | # salt '*' grains.get fqdn server: server client: client [root@server s |
5 . -G的使用
1 2 3 4 5 | # salt -G 'os:CentOs' test.ping server: True client: True |
6 . 自定义grains
1 2 3 4 5 6 7 | #在minion端修改配置文件/etc/salt/minion: grains: roles: - webserver - memcache # /etc/init.d/salt-minion restart |
在master端执行:
1 2 3 | # salt -G 'roles:memcache' test.ping client: True |
7 . 基于文件的grains
1 2 3 4 5 6 7 8 9 10 11 12 | 在minion端 新建grains文件 touch /etc/salt/grains 写入以下内容: centos: node2 重启服务 master端执行: [root@node1 ~] # salt -G 'centos:node2' test.ping node2.minion: True |
8 . top.sls匹配minion
1 2 3 4 5 | # vim top.sls base: 'web:nginx' : - match: grains - apache |
# salt '*' state.highstate
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步