2.3-saltstack grains

grains      #收集设备的所有信息

grains是在minion启动时收集到的一些信息,比如操作系统类型、网卡ip、内核版本、CPU架构等。

使用命令

salt ‘client.wyp.com‘ grains.ls 列出所有的grains项目名字

salt ‘client.wyp.com‘ grains.items 列出所有grains项目以及值

grains的信息并不是动态的,并不会时时变更,它只是在minion启动时收集到的。

我们可以根据grains收集到的一些信息,做配置管理工作。

grains支持自定义信息。

自定义grains

client上:

vim   /etc/salt/minion

添加或更改:

grains:

role:

- nginx

env:

- test

或者

vim /etc/salt/grains

添加:

role: nginx  #注意空格,前面自定义的名字,后面为值。

env: test

重启minion服务

在server上获取grains:

salt ‘*‘ grains.item role env

salt ‘client.wyp.com‘  grains.get  role

grains其实在远程执行命令时,很方便。我们可以按照grains的一些指标来操作。比如把所有的web服务器的grains的role设置为nginx,那这样我们就可以批量对nginx的服务器进行操作了:

salt -G role:nginx cmd.run ‘hostname‘

salt -G os:CentOS cmd.run ‘hostname‘

时间: 2024-10-19 14:13:27

2.3-saltstack grains的相关文章

saltstack Grains组件

saltstack Grains组件 GRAINS组件说明 GRAINS组件是saltstack中非常重要的一个组件,其主要用于记录Minion的一些静态信息.如比:CPU.内存.磁盘.网络等 grains信息是每次客户端启动后自动上报给master的,一旦这些静态信息发生改变需要重启minion或者重新同步grains (Master执行: salt '*' state.highstate) 除此之外我们还可以自定义Grains的一些信息.自定义的方法有三种: 1.通过Minion配置文件定义

saltstack grains与pillar使用和订制

一.grains与pillar简介 grains是minion启动时加载,在minion运行过程中不会发生变化,所以是静态数据.grains数据的定制可以在各minion端,也可以放在master端;grains中包含许多的信息,如:运行的内核版本,操作系统,网络接口地址,MAC地址,cpu,内存等等信息. Pillar是Salt用来分发全局变量到所有或指定minion的一个定制接口,所以相对grains来说可以称为动态的数据,保存在master端. 由于涉及的配置文件采用yaml格式,如果对y

saltstack grains模块自定义

简单来说grains就是收集客户端的静态信息,然后返回给服务端,但是只有重启了salt-minion,客户端采取会去收集东西. 1.先看默认都有哪些信息.salt '*' grains.items显示所有. 可以看到很多客户端的相关信息,但是有时候我们需要自己自定义去收集信息,那么我们就要自己去定义这个模板了.举一个收集客户端ulimit -n的例子. 步骤 1.vim /etc/salt/master file_roots: base: - /srv/salt/ 2.建立自定义模块: cd /

saltstack grains pillar

本节讨论系统数据的两个方面:获取有关系统的数据以及将数据提供给系统. Salt 提供两个不同的子系统来分别执行这些任务: Grains. Pillar Grains Grains用于获取有关系统的数据.Grains 是有关底层操作系统,内存,磁盘和许多其他系统属性的静态信息. 当minion启动时会自动收集Grains,并定期刷新或使用远程命令刷新(salt '*' saltutil.sync_grains). Pillar pillar用户向你的系统提供数据.考虑配置一个简单系统是所需的不同自

saltstack之grains与pillar

grains 收集被控主机获取信息,通常静态数据,CPU,操作系统,内核,虚拟化等.... 简单函数匹配server2 [[email protected] salt]# cat top.slsbase:  'roles:nginx':    - match: grain    - nginx.service [[email protected] salt]# pwd/etc/salt[[email protected] salt]# cat grains roles: nginxunit: m

saltstack安装配置使用

背景:puppet 用ruby开发,saltstack用python语言开发的包 环境: 修改hostname和hosts文件, 关闭selinux,清空iptables 172.16.115.157  master.huangzp.com  ;hostname master 172.16.115.203  agent.huangzp.com  ;hostname agent 一.配置认证 1. 安装和启动Saltstack服务 master上: yum install  -y epel-rel

saltstack 全面介绍

一.关于salt简介,安装和基本配置 转载自: 来自:http://tech.mainwise.cn/?p=438 说明:salt是一个异构平台基础设置管理工具(虽然我们通常只用在Linux上),使用轻量级的通讯器ZMQ,用Python写成的批量管理工具,完全开源,遵守Apache2协议,与Puppet,Chef功能类似,有一个强大的远程执行命令引擎,也有一个强大的配置管理系统,通常叫做Salt State System. 基本原理: SaltStack 采用 C/S模式,server端就是sa

ansible的playbook配置及template模板的使用

前言: 学习下ansible的playbooks的状态配置管理,说来puppet saltstack都有类似的叫法,只是ansible的叫法更犀利,我当时一看playbook还以为是花花公子的playboy.要使用ansible就要深入学习playbook配置及模板. 注:到底是playbook还是playbooks.... 先把官网的简单几个语法给说明下. #这个是你选择的主机 - hosts: webservers #这个是变量   vars:     http_port: 80     m

Python学习day15 CMDB

Created on 2017年6月6日 @author: louts 第1课 上节作业 10minutes 显示页面时,只有登录了才能显示,没登录会弹出一个登录框,就是一个遮挡层 第2课 自动化之路和CMBD地位 22minutes CMDB: 自动安装 配置管理系统 CMDB运维资产管理系统(所有系统都需要调用这里的信息)---核心所在 highchats echats CMDB: 采集硬件数据 API汇报----开放给所有外部,收集信息,通过API写入到数据库 页面管理 大概流程:Clie

Saltstack之Grains组件

参考:刘天斯<Python自动化运维技术与最佳实践> grains是Saltstack最重要的组件之一,grains的作用是收集被控主机的基本信息,这些信息通常都是一些静态类的数据,包括CPU.内核.操作系统.虚拟化等,在服务器端可以根据这些信息进行灵活定制,管理员可以利用这些信息对不同业务进行个性化定制. 获取所有主机的grains项信息,发现没有max_openfile,等会我们手动编写一个. [[email protected] base]# salt '*' grains.ls sal