2、Saltstack的数据系统

一、Grains
grains是salt用来收集minion端底层系统信息的接口。比如,操作系统type、域名 、IP地址、内存及其他相关系统属性信息等。存储在minion端,用于保存minion端数据信息。minion启动时才加载grains信息,所以他时静态的,Grains用于minion端信息查询。
通过grains.ls查看grains所支持查询的信息名称:
#salt '*' grains.ls
通过grais.items查看所有grains数据
#salt '*' grains.iterms 
查询指定grains名称的信息。如查看操作系统类型
方法1.
[root@master salt]# salt '*' grains.item os
kubernetes-master:
----------
os:
CentOS
minion:
----------
os:
CentOS
kubernetes-minion:
----------
os:
CentOS
方法2. get方法
[root@master salt]# salt '*' grains.get os
kubernetes-minion:
CentOS
minion:
CentOS
grains在minion端配置
#vim /etc/salt/minion #指定minion的角色
grains:roles:- nginx
如果觉得该上面的配置文件也可以直接在/etc/salt/目录下创建一个名为grains的文件。
echo 'roles: nginx'>/etc/salt/grains
(效果与修改/etc/salt/minion的效果相同),角色名 必须是唯一的。修改完成后重启minion端生效
在master端查看:
[root@kubernetes-master salt]# salt '*' grains.get roles
kubernetes-minion:
nginx
数据采集方式:
minion启动时手偶记,也可以使用saltutil.sync_grains进行刷新
通过grains来匹配minion
#salt -G roles:nginx cmd.run w
二、Pillar
Pillar是salt用来给minion指定它想要的数据。存储在master端,存放需要提供给minion的信息(动态)。Pillar的配置在master端,其默认是关闭的。
编辑/etc/salt/master配置文件打开pillar_roots的配置
#vim /etc/salt/master
pillar_roots:base:- /srv/pillar 
应用场景:
  • 敏感信息:每个minion只能访问master分配给自己的pillar信息
  • 变量:差异化信息
  • 其他任何数据
  • 可以在target及state中使用
数据采集方式:
在master端定义,指定给对应的Minion,使用saltutil.refresh_pillar刷新
例:
#cd /srv/pillar
# cat apache.sls
{% if grains['os'] == 'CentOS' %}
apache: https
{% elif grains['os'] == 'Debian' %}
apache: apache2
{% endif %}
# cat top.sls
base:
'*':
- apache 
要使用pillar信息,必须刷新pillar
#salt '*' saltutil.refresh_pillar
kubernetes-minion:
True
kubernetes-master:
True
获取定义好的pillar信息。
# salt '*' pillar.items

  

转载于:https://www.cnblogs.com/xhyan/p/6762454.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/283747.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

配置中心 App Configuration (一):轻松集成到Asp.Net Core

写在前面在日常开发中,我这边比较熟悉的配置中心有,携程Apollo,阿里Nacos(配置中心,服务治理一体)之前文章:Asp.Net Core与携程阿波罗(Apollo)的第一次亲密接触总体来说,Apollo和Nacos社区都比较活跃&#…

stop-hbase.sh一直处于等待状态

今天关闭HBase时,输入stop-hbase.sh一直处于等待状态 解决方法: 先输入:hbase-daemon.sh stop master 再输入:stop-hbase.sh就可以关闭HBase集群了。 转载于:https://www.cnblogs.com/lijinze-tsinghua/p/8667761.html

shell编程100例

1、编写hello world脚本 #!/bin/bash# 编写hello world脚本echo "Hello World!"2、通过位置变量创建 Linux 系统账户及密码 #!/bin/bash# 通过位置变量创建 Linux 系统账户及密码#$1 是执行脚本的第一个参数,$2 是执行脚本的第二个参数 useradd "$1" …

sqlserver 分页

select top 10 numComImg.* from( select row_number() over(order by id asc) as rownumber,* from (select * FROM [TCCLine].[dbo].[CLine_CommonImage]) as comImg)as numComImg where rownumber>40select top 10 * --10 为页大小from [TCCLine].[dbo].[CLine_CommonIma…

详解SpringMVC中Controller的方法中参数的工作原理[附带源码分析] good

目录 前言现象源码分析 HandlerMethodArgumentResolver与HandlerMethodReturnValueHandler接口介绍HandlerMethodArgumentResolver与HandlerMethodReturnValueHandler接口的具体应用常用HandlerMethodArgumentResolver介绍常用HandlerMethodReturnValueHandler介绍本文开头现象…

instancing render

当要绘制同一个东西很多次的时候,最简单的想法可能是循环调用glDrawArrays(),但这样会造成性能的损失。因为当显卡在渲染一个物体的时候,可能并不需要太多时间,但系统会花大量的时间,频繁的调用draw命令,再…

对不起,我不是一个自律的人

大家好,我是 🐟💨。前天,星球 的一位大学生朋友问了我几个问题:你大学时如何安排每日的时间?为什么能学那么多技术?你会学习到很晚吗?你是如何保持自律的?我觉得这几个问…

保证接口数据安全的10种方案

前言 大家好,我是程序汪,互联网项目需要特别注意数据安全,如果你简历上是互联网类型项目,安全方面肯定要能说出个一二三,下面分享下这方面的干货,大家可以记住几条,面试时好说道说道 我们日常…

Html5本地存储LocalStorage

HTML5 提供了两种在客户端存储数据的新方法: localStorage - 没有时间限制的数据存储sessionStorage - 针对一个 session 的数据存储在浏览器中打开审查元素(如谷歌F12),在Resources下面可以查看里面的数据。 localStorage提供了几…

python 中的os模块

python os模块 Python os 模块提供了一个统一的操作系统接口函数一、对于系统的操作1、os.name 当前使用平台其中 ‘nt’ 是 windows,’posix’ 是linux 或者 unix2、os.sep输出操作系统的特定的路径分隔符。Win下为“\”,Linux下为“/”3、os.pathsep 输…

java第一季2.2

2019独角兽企业重金招聘Python工程师标准>>> 标识符: 是给变量类方法命名的符号、标识符开头可以_、字母、$命名,不可以用数字命名。关键字不可命名,大小写区分。不可以用非法字符 变量:变量类型。变量名。变量值。如&…

读《华为数字化转型之道》

数字化转型应该很多人都听过,但如果你做过 ToB 软件,听得更多的是信息化,那信息化和数字化是什么关系呢?下面用一个小例子来说说我的理解。记得刚上初中的时候,平时测验、考试的试卷,都是人工在板上进行刻写…

Thrift基本原理及使用

参考文章RPC 基本原理与 Apach Thrift 初体验 RPC基本原理 RPC(Remote Procedure Call),远程过程调用,大部分的RPC框架都遵循如下三个开发步骤: 1. 定义一个接口说明文件:描述了对象(结构体)、对象成员、接口方法等一系列信息&am…

01-H5语义化标签

转载于:https://www.cnblogs.com/Zeki/p/5901399.html

JSON 解析的两种方法

今天帮朋友看了下JSON解析结果 eval解析JSON中的注意点在JS中将JSON的字符串解析成JSON数据格式,一般有两种方式: 1.一种为使用eval()函数。 2. 使用Function对象来进行返回解析。 使用eval函数来解析,并且使用jquery的each方法来遍历 用jque…

配置中心 App Configuration (三):配置的动态更新

Get Azure key-value pairs from App configuration | Serverless360写在前面我在前文:《微软Azure配置中心 App Configuration (一):轻松集成到Asp.Net Core》已经介绍了Asp.net Core怎么轻易的接入azure 配置中心App Configuration(下称azure 配置中心…

万字总结 JS 数据结构与常用的算法

前言 首先,为什么我会学习数据结构与算法呢,其实主要是有两方面 第一,是我在今年的flag里明确说到我会学这个东西第二,学了这些,对自己以后在工作或者面试也会带来许多好处然后,本文是最近学习的一个总结文…

精通Java设计模式从初见到相爱之工厂+策略模式(3)

为什么80%的码农都做不了架构师?>>> 1、公司项目需求。 用户签到活动,会员签到怎么处理,超级会员怎么处理,普通用户签到怎么处理,针对不同的档次,有不同的方案,所以在项目中用到了策…

jquery weui 中alert弹出框在ios中跳动问题

问题描述: jquery-weui中的弹出框在ios上会有一个右下角向中间滑动的效果,在Android上没有这个效果。 解决方法: 修该jquery-weui.js中的openModal方法如下图: 转载于:https://www.cnblogs.com/xianZJ/p/6773097.html

WPF效果第一百九十五篇之又玩ListBox

ListBox一直是我的最爱;今天再次基于他玩耍一下不一样的效果;闲话不多扯直接看效果:1、这次直接用的ItemContainerStyle:2、通过HitTest实现点选边框:Point point e.GetPosition(LightDarkListBox); VisualTreeHelper.HitTest(LightDarkListBox, new HitTestFilter…