2020-04-16 14:55:56
salt引入了Jinja2模板引擎,可用于salt state文件,salt pillar文件和其它由salt管理的文件。
salt允许你使用Jinja访问minion配置值,grains和salt pillar数据,和调用salt执行模块。这些是除了Jinja提供的标准控制结构和Python数据类型之外的功能。
Jinja最常用的功能是在salt pillar文件中插入控制声明语句。
由于许多发行版本有不同的包名称,你可以使用os grain来设置平台特定的路径,软件包名称和其它值。
例如:
{% if grains['os_family'] == 'RedHat' %} apache: httpd git: git {% elif grains['os_family'] == 'Debian' %} apache: apache2 git: git-core {% endif %}
如你所见,salt grains跟salt pillar的数据字典都是字典。这个示例检查salt grain值来设置操作系统特定的salt pillar键值。
保存上面的代码到saltstack/pillar/common.sls文件,然后运行如下命令来刷新和列出每一个minions的salt pillar值:
salt '*' saltutil.refresh_pillar salt '*' pillar.items
设置这些值后,当应用如下salt state:
install apache: pkg.installed: - name: {{ pillar['apache'] }}
httpd软件包安装在RedHat,apache2安装在Debian系统。
在salt state中创建多个用户和目录使用循环语句会很方便。
{% for usr in ['moe','larry','curly'] %} {{ usr }}: user.present {% endfor %}
{% for DIR in ['/dir1','/dir2','/dir3'] %} {{ DIR }}: file.directory: - user: root - group: root - mode: 774 {% endfor %}
一般来说,你应该努力保持你的salt state足够简单。如果你发现你必须编写复杂的Jinja才能实现功能,你应该考虑把一个任务分割为多个salt state文件,或者编写一个自定义的salt执行模块。
你可以在Jinja中调用salt执行函数来实时获取数据。
{{ salt.cmd.run('whoami') }}
SaltStack安装与配置
05-31
SaltStack事件驱动(4) – event reactor
03-23
SaltStack基础(6) – 使用highstate应用多个state文件
06-18
理解SaltStack(4) – 远程执行
05-10
SaltStack事件驱动(1) – 监视事件
03-01
管理swarm(16) – 将节点加入到swarm
03-10
管理swarm(3) – swarm实践 – 环境准备
07-18
管理swarm(9) – swarm实践 – 删除服务
05-19
配置haproxy在http请求头添加后端用户真实IP
07-05
CentOS 7配置并更换为本地或网络yum源
07-17
Debian 7 (Wheezy)安装配置Apache mod_fastcgi PHP-FPM
07-20
Docker安装配置tomcat jdk
06-21
IdeaPad Z470/Y470 如何使用散热管理
06-29
Jenkins运行多个步骤的配置
06-21
Linux screen多重视窗管理程序命令详解
07-05
Linux 的系统服务及其配置
07-07
MariaDB初学者管理命令
07-13
Nginx HTTP2配置教程
06-23
TR260 G2服务器内存DIMM安装配置和内存插的槽分布
06-23
Ubuntu 16.04配置Nginx使用GeoIP
07-12
Apowersoft手机管理大师(手机管理工具) v3.2.7.1破解版
68.3M
下载HeidiSQL(MySQL服务器数据管理工具) v11.0.0.6055 免费版
10.1M
下载endnote x7(文献管理软件) v17.0.7072 破解版
114MB
下载realtek hd(音频管理工具)v2.81 官方版
77.7M
下载virtual drive manager(虚拟驱动器管理工具) V1.32 绿色版
0.21MB
下载印象笔记(笔记资料管理软件) v6.23.2.8859 中文版
122.6M
下载叮当管家(客栈公寓管理助手) 1.6.6.1 最新版
32.61 MB
下载客户达开店管家(淘宝店铺管理软件) v4.09 破解版
40.2MB
下载旺财流水账(财务管理软件) 9.2 免费版
4.85MB
下载网易邮箱大师(邮件管理软件) v4.13.3.1004 最新版
28.3M
下载3dmax场景助手下载
0.17MB
下载bosskey下载
268KB
下载h3c模拟器下载
59.1M
下载mt4下载
3.2M
下载家庭记账软件下载
2.0M
下载百卓优采云进销存下载
28.8M
下载