AutoCAD2007提示缺少dfst.dll文件的解决办法
2012-08-22 11:12
393 查看
saltstack pillar与ansible 变量
需求,由不同主机,生成不同的配置项目。
1、在ansible中如果要实现配置文件的参数替换,只需要在inventory中配置,并使用{{}}在template中引用变量即可
示例:
2、在slatstack,要实现上述需求,需要借助pillar与grains。
先看pillar的配置:
state配置:
salt还是要复杂一些的。
本文出自 “与IT一起的日子” 博客,请务必保留此出处http://raugher.blog.51cto.com/3472678/1688064
需求,由不同主机,生成不同的配置项目。
1、在ansible中如果要实现配置文件的参数替换,只需要在inventory中配置,并使用{{}}在template中引用变量即可
示例:
[test] had5 port=111 var1=1 had6 port=222 var1=2 vi templates/test.conf.j2 port = {{ port }} var = {{ var1 }}生成的配置文件内容如下:
[root@hadm vartest]# ansible all -i hosts -m shell -a "cat /tmp/test.conf" had5 | success | rc=0 >> port = 111 var = 1 had6 | success | rc=0 >> port = 222 var = 2
2、在slatstack,要实现上述需求,需要借助pillar与grains。
先看pillar的配置:
[root@hadm base]# tree /srv/pillar/vartest/ /srv/pillar/vartest/ └── init.sls 0 directories, 1 file [root@hadm base]# cat /srv/pillar/top.sls base: '*': - vartest [root@hadm base]# cat /srv/pillar/vartest/init.sls vartest: conn: 100 {% if grains['id'] == 'had5.com' %} port: 111 var1: 1 {% elif grains['id'] == 'had6.com' %} port: 222 var1: 2 {% else %} port: 888 var1: 8 {% endif %}我们是通过 grains来指定特定主机的变量参数值。
state配置:
[root@hadm base]# tree /srv/salt/base/vartest/ /srv/salt/base/vartest/ ├── init.sls └── test.conf.j2 0 directories, 2 files [root@hadm base]# [root@hadm base]# [root@hadm base]# [root@hadm base]# [root@hadm base]# cat /srv/salt/base/vartest/init.sls vartest: file.managed: - source: salt://vartest/test.conf.j2 - name: /tmp/test.conf.salt - user: root - group: root - mode: 644 - template: jinja [root@hadm base]# [root@hadm base]# [root@hadm base]# cat /srv/salt/base/vartest/test.conf.j2 port = {{ pillar['vartest']['port'] }} var = {{ pillar['vartest']['var1'] }} --刷新pillar [root@hadm base]# salt '*' saltutil.refresh_pillar had6.com: True had5.com: True hadm.com: True --查看pillar是否生效 [root@hadm base]# salt '*' pillar.data vartest hadm.com: ---------- vartest: ---------- conn: 100 port: 888 var1: 8 had5.com: ---------- vartest: ---------- conn: 100 port: 111 var1: 1 had6.com: ---------- vartest: ---------- conn: 100 port: 222 var1: 2 [root@hadm base]# salt '*' state.sls vartest hadm.com: ---------- ID: vartest Function: file.managed Name: /tmp/test.conf.salt Result: True Comment: File /tmp/test.conf.salt updated Started: 14:38:25.607505 Duration: 22.97 ms Changes: ---------- diff: New file mode: 0644 Summary ------------ Succeeded: 1 (changed=1) Failed: 0 ------------ Total states run: 1 had6.com: ---------- ID: vartest Function: file.managed Name: /tmp/test.conf.salt Result: True Comment: File /tmp/test.conf.salt updated Started: 14:38:31.355029 Duration: 36.952 ms Changes: ---------- diff: New file mode: 0644 Summary ------------ Succeeded: 1 (changed=1) Failed: 0 ------------ Total states run: 1 had5.com: ---------- ID: vartest Function: file.managed Name: /tmp/test.conf.salt Result: True Comment: File /tmp/test.conf.salt updated Started: 14:38:42.161422 Duration: 24.327 ms Changes: ---------- diff: New file mode: 0644 Summary ------------ Succeeded: 1 (changed=1) Failed: 0 ------------ Total states run: 1 [root@hadm base]# [root@hadm base]# salt '*' cmd.run 'cat /tmp/test.conf.salt' hadm.com: port = 888 var = 8 had6.com: port = 222 var = 2 had5.com: port = 111 var = 1
salt还是要复杂一些的。
本文出自 “与IT一起的日子” 博客,请务必保留此出处http://raugher.blog.51cto.com/3472678/1688064
相关文章推荐
- keil4、keil4.7 stm32用st-link仿真不了,提示缺少dll文件的解决办法
- CAD中缺少dfst.dll文件的解决办法
- Windows 7 运行VS2015编译的软件提示缺少ucrtbased.dll文件的解决办法
- (32/64位系统)没有找到cxcore100.dll或者缺少*.dll文件的解决办法
- 程序运行提示缺少mfc110.dll等相关文件的解决办法
- 【原创】VMware虚拟机提示找不到vmnetbridge.dll,vmnet.sys等文件的解决办法
- win7系统玩游戏提示缺少steam_api.dll文件的故障原因及解决方法
- VS下 调试 Qt程序提示缺少xxx.dll的解决办法
- 关于用硬盘安装工具Win6Ins_v1.2.0.62安装时提示缺少hildr.mbr文件的解决办法
- 程序运行提示缺少mfc110.dll等相关文件的解决办法
- 游戏软件提示dll丢失、缺少dll等解决方法及dll文件大合集
- 电脑启动提示缺少hal.dll的解决办法
- 系统启动时,提示hal.dll文件丢失的解决办法
- unity 加载c++ dll文件提示DllNotFoundException的解决办法
- 关于VC6创建mfc程序提示缺少头文件或者缺少dll问题的解决
- MySQL问题贴3:Delphi第一次编译连接MySQl数据时缺少dll文件的解决办法
- VS2013Debug/Release时提示计算机中丢失XXXXXX.dll文件的解决办法
- 解决windows server 2008 r2 安装钉钉客户端缺少wlanapi.dll文件的提示
- APSC4xSeries_Ver32.exe在win764位提示缺少DLL错误解决办法
- VS2015打包提示 清单引用了不属于负载的一部分的文件”xx.dll”的解决办法