Grains:

(1) grains 是服务器的一系列粒子信息,也就是服务器的一系列物理,软件环境信息
(2) grains 是 minion 启动时收集到的一些系统信息,比如操作系统版本、内核版本、CPU、内存、硬盘、设备型号等
(3) grains 信息并不是动态的,并不会实时变更,它是在 minion 启动时收集到的,但我们也可以自定义 grains 信息

[root@localhost ~]$ salt '192.168.119.140' grains.ls          # 列出这台 minion 上所有 grains 项目的名字
[root@localhost ~]$ salt '192.168.119.140' grains.items # 列出这台 minion 上所有 grains 项目的名字和值
[root@localhost ~]$ salt '192.168.119.140' grains.item os # 列出这台 minion 上指定 grains 项目的值
[root@localhost ~]$ salt -G 'os:CentOS' cmd.run 'hostname' # 我们可以通过grains信息来指定对哪些符合条件的minion进行操作

Pillar:

(1) pillar 跟 grains 的结构一样,也是一个字典格式,数据通过 key:value 的格式进行存储
(2) 不同点:grains 是存储在 minion 本地,而 pillar 是存储在 master 本地
(3) 不同点:grains 是 minion 启动时自动收集的,而 pillar 需要我们在 master 上自定义

[root@localhost ~]$ vim /etc/salt/master    # 编辑SaltStack服务端配置文件
#pillar_roots: # 定义存放pillar信息的目录,如果不定义,则默认是在/srv/pillar
# base: # /srv/pillar目录默认是不存在的,需要我们自行创建
# - /srv/pillar # 如果我们修改了SaltStack服务端配置文件,需要重启SaltStack服务端
[root@localhost ~]$ mkdir /srv/pillar           # 创建存放pillar信息的目录
[root@localhost ~]$ cat /srv/pillar/test.sls # 自定义pillar信息,注意使用sls文件
role: nginx
conf: /usr/local/nginx/conf/nginx.conf
domain: www.abc.com
[root@localhost ~]$ cat /srv/pillar/top.sls     # 定义pillar入口配置文件,入口配置文件的名字固定是top.sls
base:
'192.168.119.140': # 指定针对哪些主机来使用sls文件
- test # 指定加载哪些sls文件来获取pillar信息
[root@localhost ~]$ salt '*' saltutil.refresh_pillar           # 对所有主机刷新pillar信息
[root@localhost ~]$ salt -I 'role:nginx' cmd.run 'hostname' # 这样我们就可以针对pillar信息来对符合条件的主机进行操作了
192.168.119.140:
localhost.localdomain

SaltStack Grains 和 Pillar的更多相关文章

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

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

  2. saltstack:使用教程之二高级模块用法Grains、Pillar

    1.grains用法: 在客户端服务启动的时候收集客户的基础信息,在配置发生变化后也可以通过master重新同步 显示一个客户端的所有项目: [root@node5 ~]# salt "no ...

  3. Saltstack管理对象属性之grains和pillar组件

    Grains组件 Grains是saltstack记录minion的一些静态信息组件,可以简单的理解为grains里面记录着每台minion的一些常用的属性,比如cpu.内存.磁盘.网络信息等,可以通 ...

  4. SaltStack入门篇(三)之数据系统Grains、Pillar

    1.什么是Grains? Grains是saltstack的组件,用于收集salt-minion在启动时候的信息,又称为静态信息.可以理解为Grains记录着每台Minion的一些常用属性,比如CPU ...

  5. 【02】Saltstack:Grains and Pillar

    写在前面的话 上一节谈及了 Saltstack 的安装和初始化配置,本节将谈谈 Saltstack 中两个重要的东西,Grains 和 Pillar. 数据系统 Grains 入门 Grains 是静 ...

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

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

  7. Linux centosVMware 自动化运维认识自动化运维、启动salt相关服务、saltstack配置认证、salt-key命令用法、saltstack远程执行命令、saltstack - grains、saltstack – pillar

    一.认识自动化运维 传统运维效率低,大多工作人为完成 传统运维工作繁琐,容易出错 传统运维每日重复做相同的事情 传统运维没有标准化流程 传统运维的脚本繁多,不能方便管理 自动化运维就是要解决上面所有问 ...

  8. SaltStack数据系统之Grains、Pillar

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

  9. saltstack之(五)数据系统Grains和Pillar

    一.grains 1.什么是grainsgrains:存储minion端的信息,包括一些网络.硬件等信息,保存在minion端.一般为静态信息,非经常变化的数据. 2.grains的使用:获取mini ...

随机推荐

  1. 关于Unity中Time.deltaTime的使用

    例子 void Update () { this.transform.Rotate(Vector3.up, Time.deltaTime * 50, Space.World); //绕世界的y轴旋转, ...

  2. 关于Mac上的开发工具

    如果是JavaScript语言的话用  Intellij IDEA 如果是C/C++语言的话用  XCode

  3. clapack在android上移植

    参考 https://www.cnblogs.com/hrlnw/p/4128217.html 如何在android上进行android库编译 https://blog.csdn.net/h3c4le ...

  4. 最近迷上了GUI

    package windows; import java.awt.BorderLayout; import javax.swing.ButtonGroup; import javax.swing.JB ...

  5. freetds 移植

    移植freetds主要是为了能够在linux下,使用C语言访问微软的sqlserver数据库. 参考连接 http://blog.csdn.net/neighbor1000/article/detai ...

  6. e615. Finding the Next Focusable Component

    public Component findNextFocus() { // Find focus owner Component c = KeyboardFocusManager.getCurrent ...

  7. 命令查询职责分离模式(Command Query Responsibility Segregation,CQRS)

    浅谈命令查询职责分离(CQRS)模式 CQRS架构简介 对CQRS的一次批判性思考

  8. Linux Shell nohup命令用法

    linux的nohup命令的用法.   在应用Unix/Linux时,我们一般想让某个程序在后台运行,于是我们将常会用 & 在程序结尾来让程序自动运行.比如我们要运行mysql在后台: /us ...

  9. Androidpn 简单实现及分析

    (文中部分内容来自网络) XMPP协议: XMPP : The Extensible Messaging andPresence Protocol. 中文全称:可扩展通讯和表示协议. 简介:可扩展通讯 ...

  10. C#常用数据类型间的转换

    数据类型有很多种,数据类型间的转换也是有很多的方法,如果不细心整理的话等到用的时候再查就会显得很浪费时间,所以决心整理出这篇博文.主要是讲解常用数据类型之间的转换方法以及常见数据类型所占字节数. 字节 ...