saltstack 数据系统之 grains 简单学习

saltsatck 主要的使用场景有两个

1.远程执行

2.配置管理

3.云管理

目前云管理还不太成熟,所以现在使用最多的就是前两个。接下来要分析的就是salt 里面非常重要的两个数据系统 grains、pillar 之一的 grains。

grains 是minion 端获取客户端本地相关信息,在每次 minion 启动的时候获取一次,可以理解为静态信息,像 ip,主机名,CPU等等信息都会获取。

一些关于 grains 的命令:

salt  ‘host2‘  grains.ls    # 获取host2中都有哪些 grains 信息

salt  ‘host2‘  grains.items    # host2 主机中所有的grains 详细信息

salt  ‘host2‘  grains.item  os    # 查看某一条 grains 信息,也可以使用  grains.get  os

实际中我们比较常用的是自定义客户端的 grains 信息,比如定义角色,方法很简单,只要在 minion 端的配置文件中关于 grains 的地方注释去掉即可

grains:

role: nginx

env: test

配置完重启minion ,再在 master 上 使用 salt  ‘host2‘ grains.get  role  就可以得到 nginx 的返回。

还有一种比较常用的自定义 grains 信息是使用文件方式,在/etc/salt/下新建 grains 文件,文件使用 yaml 格式,比如上面的配置写到文件中如下:

role: nginx

env: test

使用 grains 的地方非常多,比如你指定目标的时候可以使用 grains :

salt  -G  ‘role:nginx‘  cmd.run  ‘uptime‘    #  在grains 角色为 nginx 的所有主机上执行命令 uptime

grains 可以在我们后期使用中发挥很大的作用,关于其更深入的使用后续会持续更新。

时间: 2024-10-18 00:41:54

saltstack 数据系统之 grains 简单学习的相关文章

SaltStack数据系统之Grains、Pillar

SaltStack数据系统之Grains.Pillar 1.什么是Grains? Grains是saltstack的组件,用于收集salt-minion在启动时候的信息,又称为静态信息.Grains是服务器的一系列粒子信息,也就是服务器的一系列物理,软件环境信息.在执行salt的sls时候可以根据Grains信息的不同对服务器进行匹配分组,例如可以根据系统是centos服务器跟系统是redhat环境的安装不同的软件包.Grains功能:1.收集资产信息 2.信息查询 官方文档:https://d

saltstack数据系统之Grains

第一个应用场景:信息的搜集 [[email protected] salt]# salt 'linux-node1*' grains.ls              列出所有grains的名称 [[email protected] salt]# salt 'linux-node1*' grains.items           列出所有grains的内容 [[email protected] salt]# salt 'linux-node1*' grains.item fqdn linux-n

saltstack数据系统之Grains,pillar

Grains grains 负责采集客户端(minion端)一些基本信息 ,这个也完全可以自定义,可以在客户端自定义,然后自动汇报上来,也可以从服务器端定义然后推下去,采集完后再汇报上来(重启才收集),也可以使用saltutil.sync_grains进行刷新 1.grains之收集信息 [[email protected] salt]# salt 'node1*' grains.ls [[email protected] salt]# salt 'node1' grains.items查看收集

SaltStack数据系统

SaltStack数据系统 两种数据系统:Grains和Pillar 1.Grains介绍 Grains又被成为静态数据.Minion启动的时候收集的minion本地的相关信息(操作系统版本,内核版本,CPU,内存,硬盘,设备型号,序列号). Grains功能 (1)资产管理:信息查询 (2)用于目标选择 (3)配置管理中使用 2.查看grains 把所有grains里的key都列出来 [[email protected] /etc/salt]# salt 'linux-node1*' grai

$.fn.extend简单学习

(function($){ /** 1. $.fn是指jquery的命名空间,加上fn上的方法及属性,会对jquery实例每一个有效. 如扩展$.fn.abc(),即$.fn.abc()是对jquery扩展了一个abc方法, 那么后面你的每一个jquery实例都可以引用这个方法了.  那么你可以这样子:$("#div").abc();  2.   jQuery为开发插件提拱了两个方法,分别是:  jQuery.extend(object);为扩展jQuery类本身.为类添加新的方法.→

varnish简单学习

操作系统:redhat5.5 前端服务器:varnish cache 2.1.5 监听端口8080 后端服务器:tengine 1.4.6 监听端口80 接着,建立varnish用户以及用户组,并且创建Varnish缓存目录和日志目录:[[email protected] ~]#useradd  -s /sbin/nologin varnish[[email protected] ~]#mkdir /data/varnish/cache[[email protected] ~]#mkdir /d

spring4.0.6最新稳定版新特性学习,简单学习教程(一)

Spring Framework 4.0 学习整理. Spring框架的核心部分就是Ioc容器,而Ioc控制的就是各种Bean,一个Spring项目的水平往往从其XML配置文件内容就能略知一二,很多项目,往往是外包公司的项目,配置文件往往是乱七八糟,抱着能跑就行,不报错就行的态度去写,然后在项目中后期发现各种缺失又去一通乱补,其结果就是,整个文档可读性极差,毫无章法.这也不能怪写这个XML的人,拿着苦逼程序员的工资干着架构师的工作必然是这个结果.为了程序员的幸福,我认为有必要来一套简单快速的官方

JAVA学习Swing章节按钮组件JButton的简单学习

package com.swing; import java.awt.Container; import java.awt.Dimension; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.net.URL; import javax.swing.Icon; import javax.swing.ImageIcon;

Settings app简单学习记录

Settings是android系统设置的入口.主界面由Settings.java以及settings_headers.xml构成. Settings类继承自PreferenceActivity,而PreferenceActivity又继承自ListActivity,ListActivity拥有ListView和ListAdapter类型的成员变量. 1,如何使用PreferenceActivity构建页面 使用addPreferencesFromIntent或者addPreferencesFr