Jinjia
1-file 状态使用template参数
-template: jinja
2-模版文件里面使用变量名称{{}}
Listen{{ IPADDR }}:{{ PORT }}
3-变量列表
defaults:
PORT: 80
模版文件里面变量使用{{名称}}
变量使用Grains: {{ grains[‘fqdn_ip4’][0] }}
变量使用执行模块: {{ salt’network.hw_addr’ }}
变量使用Pilar : {{ pillar[‘apache’][‘PORT’] }}
让apche成为模版
[root@linux-node1 web]# vim lamp.sls
apache-config:
file.managed:
- name: /etc/httpd/conf/httpd.conf
- source: salt://web/files/httpd.conf
- user: root
- group: root
- mode: 644
- template: jinja
- defaults:
PORT: 80
IPADDR: {{ grains['fqdn_ip4'][0] }}
- require:
- pkg: lamp-install
让httpd的配置文件变成模版文件
vim /etc/httpd/conf/httpd
#Listen 12.34.56.78:80 --43行
Listen{{ IPADDR }}:{{ PORT }}