saltstack之(五)数据系统Grains和Pillar
一、grains
1.什么是grains
grains:存储minion端的信息,包括一些网络、硬件等信息,保存在minion端。一般为静态信息,非经常变化的数据。
2.grains的使用:
获取minion端信息
salt '192.168.3.1' grains.items --获取minion端所有的grains信息。
salt '192.168.3.1' grains.item fqdn --通过grains.item获取minion端的fqdn信息。
salt '192.168.3.1' grains.get fqdn --通过grains.get获取minion端的fqdn信息。
匹配salt的target
salt -G 'os:CentOS' cmd.run 'uptime' --匹配minion端OS为CentOS的执行uptime命令。
3.自定义grains(*重启才能获取grains信息)
1)编辑/etc/salt/minion定义grains信息。
[root@node1 ~]# grep -A 1 ^grains /etc/salt/minion
grains:
roles: zabbix-agent
[root@node1 ~]# salt '192.168.3.1' grains.item role
192.168.3.1:
----------
role:
zabbix-agent
2)单独的文件定义存储grains信息。(/etc/salt/grians)
[root@node1 ~]# cat /etc/salt/grains
role: nginx
[root@node1 ~]# salt '192.168.3.1' grains.item role
192.168.3.1:
----------
role:
nginx
3)在top.sls文件中使用grains
[root@node1 ~]# cat /etc/salt/top.sls
base:
'role:nginx':
- match: grains
*注释:建议使用单独的文件自定义grains的值,切勿多处定义。
4.使用工具刷新grains
[root@node1 ~] salt '*' saltutil.sync_grains
二、pillar
1.什么是pillar
pillar: 存储在master端,存放需要提供给minion的信息。常用于敏感信息,每个minion只能访问master分配给自己的pillar信息,更多的是经常动态的变化信息。
2.pillar的使用:
获取master端pillar的数据信息
salt '*' pillar.items|data
3.自定义pillar信息
[root@node1 ~]# grep -A 2 ^pillar /etc/salt/master
pillar_roots:
base:
- /srv/pillar
[root@node1 ~] mkdir /srv/pillar && cd /srv/pillar
[root@node1 pillar]# cat zabbix.sls
zabbix_server: 192.168.3.1
[root@node1 pillar]# cat top.sls
base:
'*':
- zabbix
4.使用saltutil工具的saltutil.refresh_pillar刷新pillar的值
[root@node1 pillar]# salt '*' saltutil.refresh_pillar
192.168.3.1:
True
node2.xkops.com:
True
5.获取在pillar中自定义的zabbix_server的值
[root@node1 pillar]# salt '*' pillar.data zabbix_server
node2.xkops.com:
----------
192.168.3.1:
----------
zabbix_server:
192.168.3.1
6.匹配salt的target
salt -I 'zabbix_server:192.168.3.1' test.ping
总结:
grains和pillar的区别
1.grains是静态、不常变化的;pillar则是动态的。
2.grains是存储在minion本地,而pillar存储在master本地。
3.minion有权限操作自己的grains值,如增加、删除,但minion只能查看自己的pillar,无权修改。
saltstack之(五)数据系统Grains和Pillar的更多相关文章
- Saltstack数据系统Grains和Pillar(三)
Saltstack数据系统 分为Grains和Pillar 一.Grains 静态数据,当Minion启动的时候收集的MInion本地的相关信息.(包含操作系统版本.内核版本.CPU.内存.硬盘.设备 ...
- 2. SaltStack数据系统: Grains、Pillar
1. SaltStack数据系统 Grains (谷物) Pillar (支柱) 2.Grains Grains存放着Salt命令启动时收集的信息,运行时不收集 2.1 信息查询 收集资产 网卡,i ...
- SaltStack入门篇(三)之数据系统Grains、Pillar
1.什么是Grains? Grains是saltstack的组件,用于收集salt-minion在启动时候的信息,又称为静态信息.可以理解为Grains记录着每台Minion的一些常用属性,比如CPU ...
- Saltstack管理对象属性之grains和pillar组件
Grains组件 Grains是saltstack记录minion的一些静态信息组件,可以简单的理解为grains里面记录着每台minion的一些常用的属性,比如cpu.内存.磁盘.网络信息等,可以通 ...
- 004-SaltStack入门篇之数据系统Grains、Pillar
1.什么是Grains? Grains是saltstack的组件,用于收集salt-minion在启动时候的信息,又称为静态信息.可以理解为Grains记录着每台Minion的一些常用属性,比如CPU ...
- SaltStack数据系统之Grains、Pillar
SaltStack数据系统之Grains.Pillar 1.什么是Grains? Grains是saltstack的组件,用于收集salt-minion在启动时候的信息,又称为静态信息.Grains是 ...
- 【02】Saltstack:Grains and Pillar
写在前面的话 上一节谈及了 Saltstack 的安装和初始化配置,本节将谈谈 Saltstack 中两个重要的东西,Grains 和 Pillar. 数据系统 Grains 入门 Grains 是静 ...
- saltstack:使用教程之二高级模块用法Grains、Pillar
1.grains用法: 在客户端服务启动的时候收集客户的基础信息,在配置发生变化后也可以通过master重新同步 显示一个客户端的所有项目: [root@node5 ~]# salt "no ...
- Saltstack_使用指南04_数据系统-Grains
1. 主机规划 Grains文档 https://docs.saltstack.com/en/latest/topics/grains/index.html 注意事项 修改了master或者minio ...
随机推荐
- 使用mybatis执行oracle存储过程
存储过程在小公司用的不多,但是如果业务比较复杂或者性能要求比较苛刻的时候存储过程就派上用场了,ibatis的前期的一些版本貌似不支持存储过程因此我选择了mybatis来做实验. 1.无输入和输出参数的 ...
- 数据库SQL及相关
//1.生成随机数 ROUND(((89 - 71 -1) * RAND() + 71), 0) DECLARE @Result INT DECLARE @Upper INT DECLARE @Low ...
- Html - Iframe
父页面调用子页面 //用这个对象调用子页面的函数或者dom var myiframe = $("#right_iframe")[0].contentWindow; 子页面调用父页面 ...
- Linux系统管理员踢用户的方法
两种方法:1.使用pkill命令 1.1 通过who 或则 w 查看当前连接的用户 例如: w USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT jjony pts/0 ...
- [转]3天搞定的小型B/S内部管理类软件定制开发项目【软件开发实战10步骤详解】
本文转自:http://www.cnblogs.com/jirigala/archive/2010/10/07/1845275.html 2010-10-07 21:39 by 通用C#系统架构, 5 ...
- [APAC]查找资产表
$sn = Read-Host -Prompt "请输入SN号(7位 or 10位)" $xl = New-Object -ComObject "Excel.Applic ...
- Ubuntu输入密码登陆后又跳回到登录界面
现象:在Ubuntu登陆界面输入密码之后,黑屏一闪并且出现了check battery state之类的文字之后,又跳转到登录界面.原因:主目录下的.Xauthority文件拥有者变成了root,从而 ...
- cURL 学习笔记与总结(1)概念
概念: cURL(Client URL Library Functions)is a command line tool for transfering data with URL syntax(使用 ...
- window.open()弹出窗口防止被禁
window.open(),顾名思义,是指在当前浏览器窗口弹出另一个浏览器窗口. 因为多种原因,浏览对window.open弹出的窗口做了多方限制.限制不同,肯定会造成各浏览器弹出窗口的差异. 大部分 ...
- 前端框架Bootstrap的Modal使用Ajax数据源,如何避免数据被缓存
1.绑定事件,在关闭的时候,直接将数据清除: $("#model").on("hidden.bs.model",function(e){$(this).remo ...