一、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

  

转载于:https://www.cnblogs.com/xhyan/p/6762454.html

2、Saltstack的数据系统相关推荐

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

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

  2. saltstack配置管理数据系统

    saltstack配置管理 1.YAML语言 2.用SaltStack配置一个apache实例 3.top file 3.1 highstate高级状态的使用 4.数据系统grains和pillar的 ...

  3. Saltstack自动化运维详解(数据系统 jinja模板 job管理)

    文章目录 1. saltstack 的数据系统 1.1 SaltStack组件之Grains 1.grains使用方法 信息查询 查询某个key值 用Grains来匹配minion 2.自定义grai ...

  4. saltstack配置管理和数据系统

    文章目录 1.YAML语言 2. 用SaltStack配置一个yum安装的nginx实例 3. top file 3.1 top file介绍 3.2 top file实例 3.3 高级状态highs ...

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

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

  6. saltstack(十):saltstack数据系统-grains和pillar

    saltstack数据系统-grains和pillar https://www.cnblogs.com/shhnwangjian/p/5985868.html 1.1         granis G ...

  7. SaltStack数据系统

    1.SaltStack数据系统 SaltStack有两大数据系统,分别是: Grains Pillar 2.SaltStack数据系统组件 2.1 SaltStack组件之Grains Grains是 ...

  8. saltstack高级状态的使用、top file的使用、数据系统grains和pillar的使用

    saltstack高级状态的使用.top file的使用.数据系统grains和pillar的使用 1. YAML语言 YAML是一种直观的能够被电脑识别的数据序列化格式,是一个可读性高并且容易被人类 ...

  9. Saltstack中Grains静态数据系统和Pillar动态数据系统

    文章目录 grains简介 grains模块的应用 pillar模块的应用 grains与pillar最主要的区别:静态取值方式 grains ,保留在minion端: pillar保留在master ...

最新文章

  1. 在学习中遇到的第一难点
  2. nginx-rtmp常用指令
  3. ubuntu下安装、卸载软件命令
  4. TP5 急速上手 语法规则
  5. 什么才是一份好的AI求职简历?
  6. 一致性 hash 算法(consistent hashing)
  7. fscapture下载收费吗?_听歌要收费,下载又要付费?国内的音乐app还想干什么?...
  8. Java的GUI学习二(布局)
  9. 通达信软件里php文件在哪,通达信股票交易软件使用秘籍
  10. 常见搜索引擎蜘蛛大全
  11. vs2019报错 声明与xxxx不兼容
  12. 有关南怀瑾、朱熹周易断卦法的个人观点
  13. 为人处世之道,与君共勉!
  14. excel转pdf(poi+itextpdf)
  15. MySQL下载压缩包安装详细过程
  16. 全网疯传!微信发原图暴露个人信息?微信高冷回应!真相来了...
  17. Adobe Photoshop 2021 22.1.1.138中文版(win/mac)
  18. 【已解决】pdf导出的eps图形在WinEdt中只显示一半
  19. Oracle系列之add_months简介以及用法归纳教程
  20. 用js写一个简单的前世今生

热门文章

  1. 8种你可能正在写错的SQL用法
  2. 嵌入式C语言基础(三)
  3. 素描的几大基础知识点_2020年让您感到惊奇的5大素描资源
  4. 得到鹅厂最新前端开发手册一份
  5. Django web开发系列(五)模板
  6. php 批量修改mysql 数据表,字段 字符集编码
  7. L2-014 列车调度(队列模拟:set)
  8. terminate called after throwing an instance of 'std::out_of_range' what(): basic_string::substr
  9. 『流畅的Python』第1~4章笔记_数据结构、编码
  10. 复杂性思维中文第二版 附录 A、算法分析