Salt 翻译之Grains
来源:互联网 发布:filmconvert pro mac 编辑:程序博客网 时间:2024/05/24 07:19
原文地址:http://docs.saltstack.com/topics/targeting/grains.html
之所以翻译这样子的文章,是因为自己在学下Salt,举手之劳,希望能帮助他人,如果误导了你,在此表示歉意。
Grains
Salt 迎来了一个能够获取基础系统的静态信息的接口,之所以被称为grains接口,是因为通过salt获取了minion的基础信息。
Grains
当minion第一次启动的时候,它会收集关于系统的所有的静态信息。
grains 接口是用于salt的核心模块和组件,以便正确的salt minion命令在特定的系统上能够自动可用。
重要的是需要记住当salt minion启动时那些从它获取到的静态信息,因为这些信息是静态的。这意味着在grains中的信息是不变的,因此这些自然的数据时静态的,所以
grains的信息是像这样子的,运行内核,或者操作系统。
匹配所有CentOS 从服务器:
salt -G 'os:CentOS' test.ping
匹配所有64位CPU从服务器,并且返回可用的核数:
salt -G 'cpuarch:x86_64' grains.item num_cpus
列出GRAINS
可用的grains能够使用'grains.ls'模块列出:
salt '*' grains.lsGrains数据能够使用'grains.items'模块列出:
salt '*' grains.items
Grains 在从服务器上配置
Grains的数据能够在从服务器的配置文件中静态的指定,通过增加grains选项和更改选项指定:
grains: roles: - webserver - memcache deployment: datacenter4 cabinet: 13 cab_u: 14-15
然后这些在你服务器上的数据能够通过Salt获取,或者使用State 系统匹配。在上面的例子中,可以根据你的系统环境自主设置。
关于GRAINS需要注意的:
Grains的配置很容易写,grains接口数据是通过执行所有‘公共’功能模块来获取位于grains包或者自定义的grains目录。返回的信息必须是Python
dict数据,在字典中的键值是grains的名字,并且它的值是字典中的变量。
自定义的grains值应该放在一个_grains目录中位于file_roots master指定配置文件中。当运行state.highstate时,他们会被分发到从服务器上。或者
通过执行saltutil.sync_grains和saltutil.sync_all函数。
在添加grain信息之前,需要认真考虑grain信息是哪些,哪些需要静态的数据,如果这些数据是可变的,考虑使用Pillar替代。
Grains的例子:
在Grains包中核心的模块,提供了如何书写Grains的例子。
https://github.com/saltstack/salt/blob/develop/salt/grains/core.py
同步Grains
同步Grains数据可以使用多种方法,当state.highstate调用时可以自动的同步,或者使用saltutil.sync_grains or saltutil.sync_all 函数来同步。
- Salt 翻译之Grains
- 三、Salt Grains
- salt数据系统---grains
- salt实战系列-grains和pillar学习
- Grains
- Salt Stack 官方文档翻译
- Salt Stack 官方文档翻译
- 自动化管理工具Saltstack之Grains篇(4)
- 配置管理工具Saltstack 之 自定义grains
- SaltStack实战之数据系统-Grains
- SaltStack实战之数据系统 Grains VS Pillar
- salt
- salt
- salt
- 运维自动化之salt
- 运维自动化之salt
- SaltStack实战之manage、salt-ssh和salt jobs
- saltstack grains
- hibernate的一下方法比较及介绍
- 经典游戏开源代码大集
- Android4.0.1源码及内核编译效果
- 智遥工作流导出Excel分析
- AIS编码1
- Salt 翻译之Grains
- JAVA获取当前进程ID
- 去掉UITableView Section上Header的粘滞效果
- hdu 1404 Digital Deletions
- php判断一个数组是另一个数组的子集
- DWR
- VC++禁止调整窗口大小的方法
- 欧拉函数
- maximo中配置数据库报错:首选项不存在: global_lexer