1:Grains是系统的一个组件,存放着minion启动时收集的系统底层的一些信息,每次minion启动的时候,会进行系统的采集,将其保存下来,在以后的生命周期中不会重新搜集,除非重启~

  1. #查看grains搜集的所有的名称
  2. salt 'node3.crazylinux.xyz' grains.ls
  3. #查看grains搜集的所有的名称以及值
  4. salt 'node3.crazylinux.xyz' grains.items
  5. #获取fqdn名
  6. salt 'node3.crazylinux.xyz' grains.get fqdn

2:Grains应用场景

  • grains可以在state系统中使用,用于配置管理模块
  • grains可以在target中使用,用来匹配Minion,比如操作系统,使用-G选项
  • grains可以用于信息查询,grains保存这收集到客户端的详细信息,可用作CMDB!

3:Grains应用示例(建议使用第二种方法)

  • 在node3Minion端自定义roles,共有两种方法
  • 1:写在/etc/salt/minion配置文件中
  1. vim /etc/salt/minion
  2. #修改内容如下
  3. grains:
  4. roles: apache
  5. env:
  6. - webserver
  7. #在master端使用如下命令进行测试
  8. salt 'node3.crazylinux.xyz' grains.get env
  9. #返回结果如下
  10. node3.crazylinux.xyz:
  11. - webserver
  12. salt 'node3.crazylinux.xyz' grains.get roles
  13. #返回结果如下
  14. node3.crazylinux.xyz:
  15. apache
  • 2:写在/etc/salt/grains配置文件中
  1. #直接定义角色名称和值就可以了,注意冒号后一定要有空格
  2. cloud: openstack
  3. #执行如下命令进行测试
  4. salt 'node3.crazylinux.xyz' grains.get cloud
  5. #返回结果如下
  6. node3.crazylinux.xyz:
  7. openstack
  • 3:此时我们可以用角色匹配来执行命令,此时我们可以灵活使用grains来进行远程执行
  1. salt -G roles:apache cmd.run 'uptime'
  2. 返回结果如下
  3. node3.crazylinux.xyz:
  4. 23:04:21 up 5:45, 2 users, load average: 0.00, 0.01, 0.05
  5. #也可以用来重启httpd服务
  6. salt -G roles:apache cmd.run 'systemctl restart httpd'
  • 4:也可以使用内置的grains
  1. #此时将同时匹配node2和node3,在所有centos的系统中执行一个命令
  2. salt -G os:CentOS cmd.run 'uptime'
  3. #返回结果如下
  4. node3.crazylinux.xyz:
  5. 23:06:48 up 5:47, 2 users, load average: 0.00, 0.01, 0.05
  6. node2.crazylinux.xyz:
  7. 01:55:55 up 5:55, 2 users, load average: 0.00, 0.01, 0.05

SaltStack数据系统-Grans详解的更多相关文章

  1. SaltStack数据系统-Pillar详解

    1:存储位置 存储在master端,存放需要提供给minion的信息 每个minion只能访问master分配给自己的(应用场景) 2:在centos7 salt 2015.5.10 (Lithium ...

  2. 2、自动化运维之SaltStack远程执行详解

    SaltStack远程执行详解 ●目标(Targeting) ●模块(Module) ●返回(Returnners) 混合模式-C 选项 主机名设置参照: redis-node1-redis03-id ...

  3. saltstack自动化运维系列⑤之saltstack的配置管理详解

    saltstack自动化运维系列⑤之saltstack的配置管理详解 配置管理初始化: a.服务端配置vim /etc/salt/master file_roots: base: - /srv/sal ...

  4. saltstack源码详解一

    目录 初识源码流程 入口 1.grains.items 2.pillar.items 2/3: 是否可以用python脚本实现 总结pillar源码分析: @(python之路)[saltstack源 ...

  5. Python3安装使用SaltStack以及salt-api详解

    序言 最近在使用salt-api做主机批量管理部署,整理一下文档.之前使用saltstack 多用于命令行管理,自己做web版的自动化管理平台时,发现命令行的些许局限性,接触到salt-api,找到了 ...

  6. Saltstack Master 配置文件详解

    #主配置 /etc/salt/master interface 默认值:0.0.0.0(所有的网络地址接口) 绑定到本地的某个网络地址接口 interface: 192.168.30.131 publ ...

  7. Saltstack 安装配置详解

    下面这篇文章主要介绍另外一个运维自动化工具 Saltstack . 一.简介 Saltstack 比 Puppet 出来晚几年,是基于Python 开发的,也是基于 C/S 架构,服务端 master ...

  8. SaltStack安装配置详解

    一.简介 Saltstack 比 Puppet 出来晚几年,是基于Python 开发的,也是基于 C/S 架构,服务端 master 和客户端 minions :Saltstack 和 Puppet ...

  9. 【05】Saltstack:配置详解

    写在前面的话 上一节迷迷糊糊的说了一下配置管理,这一节主要谈谈我们常见的一些操作如何将他转换成配置文件的形式来实现.这样的好处在于,我们可以一次编写到处使用,不用每次再去编写复杂的命令. 配置回顾 在 ...

随机推荐

  1. Spring MVC 上传和下载文件

    上传文件 Commons FileUpload 元件 Servlet 3.0 本地文件上传特性 HTML 5 下载文件

  2. SSRF绕过filter_var(),preg_match()和parse_url()

    1.利用curl的变量解释符$ php版本 利用代码 /*ssrf.php*/<?php echo ]."n"; // check if argument is a vali ...

  3. [C#]GetFloat提示"指定的转换无效"

    数据库中没有double型,float就表示double值.sql server数据库字段类型与.net的数据类型的对应关系: real(数据库)<--> float(.NET)float ...

  4. (PMP)第12章-----项目采购管理

    B D 12.1 规划采购管理 输入 工具与技术 输出 1.项目章程 2.商业文件 (商业文件, 效益管理计划) 3.项目管理计划 (范围,质量,资源管理计划, 范围基准) 4.项目文件 (里程碑清单 ...

  5. Jmeter小技巧以及问题集合

    一.JDBC Request与BeanShell PostProcessor的结合使用 JDBCRequest部分   BeanShell PostProcessor配置项 二.if控制器的用法 三. ...

  6. 3 week work—Position

    源代码部分: (1)httm部分: <!DOCTYPE html> <html lang="en"> <head> <meta chars ...

  7. C#+ZXing.dll生成手机路径导航二维码

    1.原谅我先写点废话哈 这两天用C#写一个C端的软件,甲方提出一个很无理的需求(在C端的程序中实现路径导航,关键是这个程序最终是运行在物理隔绝的电脑上的……),头疼了好几天,领导突然想到可以把坐标+百 ...

  8. linux 下动态链接实现原理

    符号重定位 讲动态链接之前,得先说说符号重定位. c/c++ 程序的编译是以文件为单位进行的,因此每个 c/cpp 文件也叫作一个编译单元(translation unit), 源文件先是被编译成一个 ...

  9. 从零开始的程序逆向之路基础篇 第二章——用OllyDbg(OD)分析一个简单的软件

    作者:Crazyman_Army 原文来自:https://bbs.ichunqiu.com/thread-43469-1-1.html 0x00知识回顾 (由于笔者省事,没开XP虚拟机,而且没关闭A ...

  10. 什么是CDN及CDN加速原理

    目录 CDN是什么? CDN的相关技术 负载均衡技术 动态内容分发与复制技术 缓存技术 谁需要CDN? CDN的不足 随着互联网的发展,用户在使用网络时对网站的浏览速度和效果愈加重视,但由于网民数量激 ...