saltstack 数据系统——Grains

简介:

grains 存储位置minion端,数据类型:静态数据,数据采集更新方式:

minion启动时采集,也可以使用saltutil.sync_grains 进行刷新。

应用:存储minion基本数据,比如用于匹配minion,自身数据可以用来做资 产管理。


grains收集信息:

1
2
3
4
5
6
7
8
9
10
salt  '*'  grains. ls
 
 
salt  'web13*'  grains.items
 
也可以单个显示
 
salt  '*'  grains.item fqdn
salt  '*'  grains.item server_id
salt  '*'  grains.get ip_interfaces:eth0


grains匹配minion

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#比如查看所有centos的机器上执行uptime命令:
 
salt -G os:centos cmd.run  'uptime'
 
web12.limingyu.com:
      02:24:36 up  5:45,  1 user,  load average: 0.06, 0.11, 0.08
web13.limingyu.com:
      02:24:37 up  5:45,  1 user,  load average: 0.19, 0.09, 0.06
 
#自定义grains:
 
vim  /etc/salt/minion
#打下面几行
 
  88 grains:
  89   roles:
  90     - webserver
  91     - memcache
  
  保存退出,重启minion
/etc/init .d /salt-minion  restart
 
salt -G  'roles:memcache'  cmd.run  'echo hehe'
 
或者
 
vim  /etc/salt/grains
web: nginx
 
保存退出,重启minion
 
salt  '*'  grains.item web
 
web12.limingyu.com:
     ----------
     web:
         nginx
web13.limingyu.com:
     ----------
     web:
     
salt -G web:nginx cmd.run  'echo hehe'
 
web12.limingyu.com:
     hehe


在top.sls里匹配:

1
2
3
4
5
6
7
8
9
10
11
vim  /srv/salt/top .sls
 
base:
   'web:nginx'  :
     - match: grain
     - apache
 
 
保存,重启服务
 
salt -G web:nginx cmd.run  'w'







      本文转自limingyu0312  51CTO博客,原文链接:http://blog.51cto.com/limingyu/1908533,如需转载请自行联系原作者



相关文章
|
关系型数据库 Linux Python
|
Linux Apache 开发工具
|
Web App开发 应用服务中间件 Shell
|
消息中间件 监控 网络协议
SaltStack安装Apache/Mysql/PHP部署Wordpress
SaltStack是一个服务器基础架构集中化管理平台,具备配置管理、远程执行、监控等功能,基于Python语言实现,结合轻量级消息队列(ZeroMQ)与Python第三方模块(Pyzmq、PyCrypto、Pyjinjia2、python-msgpack和PyYAML等)构建。 SaltStack 采用 C/S模式,server端就是salt的master,client端就是minion,minion与master之间通过ZeroMQ消息队列通信。 master监听4505和4506端口,4505对应的是ZMQ的PUB system,用来发送消息,4506对应的是REP system是来接受
151 0