设为首页 收藏本站
查看: 860|回复: 0

[经验分享] saltstack grain pillar

[复制链接]

尚未签到

发表于 2018-7-31 07:06:56 | 显示全部楼层 |阅读模式
  Grain  Pillar概念
  本质上都是key  value 型的数据库。
  Grains 是存储在minon上的数据,minion启动后就进行Grain计算,是一种静态数据。
  Pillar 数据存储在master, 是动态数据,每个minion只能看到自已的pillar。
  一个minion可以告诉master它的数据,而minion则需要从master索要pillar数据。
  列出所有minion上的Grains项
  salt 'SN18' grains.ls
  查询 minion上某一具体Grain的值
  salt "SN18" grains.item ipv4

列出对应minion上所有Grain 的详细信息
  salt 'SN18' grains.items
  +++++++++++++++++++++++++++++++
  设置 Grains 数据
  命令行方式
  1)单个值设置
  ]# salt 'SN28' grains.setval my_grain bar
  SN28:
  

my_grain:  bar
  

查询
  ]# salt 'SN28' grains.item my_grain
  SN28:
  

my_grain:  bar
  

2)多个值设置
  ]# salt 'SN28' grains.setvals "{'key1':'val1','key2':'val2'}"
  SN28:
  

key1:  val1
  
key2:
  val2
  

查询命令
  ]# salt 'SN28' grains.item key1
  SN28:
  

key1:  val1
  

3)列表结构设置
  ]# salt 'SN28' grains.setval my_list '['one','two','three']'
  SN28:
  

my_list:  - one
  - two
  - three
  

查询命令
  ]# salt 'SN28' grains.item my_list
  SN28:
  

my_list:  - one
  - two
  - three
  

  查看对应的minion的/etc/salt/grains 可以发现已经写入的Grains数据
  ]# salt 'SN28' cmd.run "cat /etc/salt/grains"
  SN28:
  key1: val1
  key2: val2
  my_grain: bar
  my_list:


  • one
  • two
  • three
grains_module的方式设置
  在master上建立模块对应的目录

  ]# mkdir -pv /srv/salt/_grains
  mkdir: created directory ‘/srv/salt/_grains’
  ]# vim /srv/salt/_grains/my_grain_mod.py
  import time
  def now():
  grains={}
  grains['now']=time.time()
  return grains
  -----------------------同步有没有生效--
  同步模块到minion
  ]# salt 'SN28' saltutil.sync_all
  重载一次模块
  ]# salt 'SN28' sys.reload_moduls
  查看新设置的Grians
  ]# salt 'SN28' grains.item now
  在minion端设置
  登陆到一台minion
  vim /etc/salt/minion.d/grains.conf
  grains:
  roles:


  • webserver

  • memcach
      deployment: datacenter4
      cabinet: 13
      cab_u: 14-15
      重启salt-minion加载新的配置文件,在satl-master上查看
      ]# salt 'SN27' grains.item roles
      SN27:

      roles:

  • webserver
  • memcach
  删除自定义Grains
  通过 grains.setval 设置的Grain 可以直接通过下面命令删除
  ]# salt 'SN28' grains.delval my_grain
  SN28:
  None
  ++++++++++++++++++++++++++++++++++++
  列出minon上所有Pillar的详细信息
  [root@localhost ~]# salt 'SN28' pillar.items

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-543786-1-1.html 上篇帖子: Saltstack-部署 下篇帖子: SaltStack自动化部署Kubernetes v1.9.3版本
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表