一、Grains
  grains是salt用来收集minion端底层系统信息的接口。比如,操作系统type、域名 、IP地址、内存及其他相关系统属性信息等。存储在minion端,用于保存minion端数据信息。minion启动时才加载grains信息,所以他时静态的,Grains用于minion端信息查询。
通过grains.ls查看grains所支持查询的信息名称:
#salt '*' grains.ls
通过grais.items查看所有grains数据
#salt '*' grains.iterms 
查询指定grains名称的信息。如查看操作系统类型
方法1.
[root@master salt]# salt '*' grains.item os
kubernetes-master:
----------
os:
CentOS
minion:
----------
os:
CentOS
kubernetes-minion:
----------
os:
CentOS
方法2. get方法
[root@master salt]# salt '*' grains.get os
kubernetes-minion:
CentOS
minion:
CentOS
grains在minion端配置
#vim /etc/salt/minion #指定minion的角色
grains:
roles:
- nginx
如果觉得该上面的配置文件也可以直接在/etc/salt/目录下创建一个名为grains的文件。
echo 'roles: nginx'>/etc/salt/grains
 (效果与修改/etc/salt/minion的效果相同),角色名 必须是唯一的。修改完成后重启minion端生效
在master端查看:
[root@kubernetes-master salt]# salt '*' grains.get roles
kubernetes-minion:
nginx
 
数据采集方式:
  minion启动时手偶记,也可以使用saltutil.sync_grains进行刷新
  通过grains来匹配minion
#salt -G roles:nginx cmd.run w
 
二、Pillar
  Pillar是salt用来给minion指定它想要的数据。存储在master端,存放需要提供给minion的信息(动态)。Pillar的配置在master端,其默认是关闭的。
编辑/etc/salt/master配置文件打开pillar_roots的配置
#vim /etc/salt/master
pillar_roots:
base:
- /srv/pillar 
 
应用场景:
  • 敏感信息:每个minion只能访问master分配给自己的pillar信息
  • 变量:差异化信息
  • 其他任何数据
  • 可以在target及state中使用
数据采集方式:
  在master端定义,指定给对应的Minion,使用saltutil.refresh_pillar刷新
例:
#cd /srv/pillar
# cat apache.sls
{% if grains['os'] == 'CentOS' %}
apache: https
{% elif grains['os'] == 'Debian' %}
apache: apache2
{% endif %}
# cat top.sls
base:
'*':
- apache 
 要使用pillar信息,必须刷新pillar
#salt '*' saltutil.refresh_pillar
kubernetes-minion:
True
kubernetes-master:
True
 获取定义好的pillar信息。
# salt '*' pillar.items

  

2、Saltstack的数据系统的更多相关文章

  1. saltstack自动化运维系列②之saltstack的数据系统

    saltstack自动化运维系列②之saltstack的数据系统 grains:搜集minion启动时的系统信息,只有在minion启动时才会搜集,grains更适合做一些静态的属性值的采集,例如设备 ...

  2. 自动化运维工具saltstack03 -- 之SaltStack的数据系统

    SaltStack数据系统 saltstack有两种数据系统:grains与pillar 1.SaltStack数据系统之grains grains可以收集minion端的静态数据(即机器启动时收集一 ...

  3. SaltStack的数据系统

    一.SaltStack数据系统的分类 1.Grains(收集的是静态数据) 官方使用文档:https://www.unixhot.com/docs/saltstack/topics/targeting ...

  4. 学习saltstack (五)

    Saltstack介绍 Salt三种运行方式 1.local本地运行2.Master/Minion3.Salt ssh Salt的三大功能 a.远程执行b.配置管理(状态管理)c.云管理:阿里云,aw ...

  5. Saltstack数据系统Grains和Pillar(三)

    Saltstack数据系统 分为Grains和Pillar 一.Grains 静态数据,当Minion启动的时候收集的MInion本地的相关信息.(包含操作系统版本.内核版本.CPU.内存.硬盘.设备 ...

  6. SaltStack数据系统-Pillar

    上一篇:SaltStack数据系统-Grains 使用saltstack进行配置管理可以使用pillar定义主机假如是Openstack修改了一下nova的密码就需要修改很多配置文件 pillar很安 ...

  7. SaltStack数据系统-Grains

    上一篇:SaltStack配置管理 granis:谷粒 pillar:柱子 grains是salt的一个组件,存放minion启动时候收集的信息(状态信息) 查看 salt '*' grains.it ...

  8. 2. SaltStack数据系统: Grains、Pillar

    1. SaltStack数据系统 Grains (谷物) Pillar (支柱) 2.Grains Grains存放着Salt命令启动时收集的信息,运行时不收集 2.1  信息查询 收集资产 网卡,i ...

  9. SaltStack数据系统之Grains、Pillar

    SaltStack数据系统之Grains.Pillar 1.什么是Grains? Grains是saltstack的组件,用于收集salt-minion在启动时候的信息,又称为静态信息.Grains是 ...

随机推荐

  1. ubuntu 程序后台运行几个方法

    51 1. 程序后加上“&” ,即 “./myjob &”, 将命令放入到一个作业队列中,可以用命令“jobs” 查看 2. 将1中的命令放在 “()”中, 即 “(./myjob & ...

  2. SharePoint 错误集

    1. Delete a site collection · Run command : Remove-SPSite –Identity http://ent132.sharepoint.hp.com/ ...

  3. 洛谷 P2057 [SHOI2007]善意的投票 解题报告

    P2057 [SHOI2007]善意的投票 题目描述 幼儿园里有n个小朋友打算通过投票来决定睡不睡午觉.对他们来说,这个问题并不是很重要,于是他们决定发扬谦让精神.虽然每个人都有自己的主见,但是为了照 ...

  4. 在kubernetes集群上用helm安装Datadog(Monitoring)

    Datadog is a monitoring service that gathers monitoring data from your containers within your Azure ...

  5. 树莓派上使用KickThemOut对局域网内的设备进行ARP欺骗

    安装KickThemOut工具 $ git clone https://github.com/k4m4/kickthemout.git $ cd kickthemout/ $ sudo -H pip ...

  6. RMQ求解->ST表

    ST表 这是一种神奇的数据结构,用nlogn的空间与nlongn的预处理得出O(1)的区间最大最小值(无修) 那么来看看这个核心数组:ST[][] ST[i][j]表示从i到i+(1<<j ...

  7. 硬盘读取速度变慢 — 当前传送模式: PIO模式

    网上搜索了一下,找到两篇文章: 标题:硬盘读取速度变慢 当前传输模式pio的解决方法 http://www.veryhuo.com/a/view/52786.html   (解决思路:先卸载驱动,重启 ...

  8. git branch 分支管理

    在多人协作的情况下,master通常是稳定的分支.可以再建一些"develop","testing"等名称的分支.主管master的人做开发的话最好也建立自己的 ...

  9. java代码示例(6-1)

     创建Administrator.java /** * 需求分析:定义用户名,密码 * @author chenyanlong * 日期:2017/10/15 */ package com.hp.te ...

  10. 【Maven】eclipse中使用Maven、生命周期

    1.在eclipse中创建maven工程 >>在eclipse中配置maven: 配置maven版本:Eclips自带了一个maven,一般不用自带的这个,而选择我们安装的那个maven ...