zoukankan      html  css  js  c++  java
  • saltstack的jinjia模板

    比如我们有这样一个需求,就是需要apache监听自己服务器的ip地址.

    这个可以用jinjia模板来实现的.

    实现jianjia模板需要三部

    1.file状态使用template参数

    2.模板文件里面变量使用{{名称}} {{PORT}}

    3.变量列表

      -default:

        PORT:8080

    示例:

    vim apache.sls

    apache-install:

      pkg.installed:

        - name: httpd

    apache-config:

      file.managed:

        - name: /etc/httpd/conf/httpd.conf

        - source: salt://lamp/files/httpd.conf      #这里的salt://指当前环境base里的  /srv/salt

        - user: root

        - group: root

        - mode: 644

        - template: jinjia

    apache-service:

      service.running:

        - name: httpd

        - enable: True

    然后在/srv/salt/master/lamp/files/httpd.conf

    修改文件内容,

    Listen {{ IPADDR}} :80

    给IPADDR这个变量赋值.

    这个赋值是在上面的apache.sls文件里面修改的,参考如下:

      

    vim apache.sls

    apache-install:

      pkg.installed:

        - name: httpd

    apache-config:

      file.managed:

        - name: /etc/httpd/conf/httpd.conf

        - source: salt://lamp/files/httpd.conf      #这里的salt://指当前环境base里的  /srv/salt

        - user: root

        - group: root

        - mode: 644

        - template: jinjia

        - defaults:

          IPADDR: {{grains['fqdn_ip4'][0]}}  #这里如果是pillar的话参考这样{{pillar['apache']['PORT']}},这里也可以通过执行远程命令获取值示例:{{salt['network.hw_addr'('eth0')]}}

          

    apache-service:

      service.running:

        - name: httpd

        - enable: True

  • 相关阅读:
    微软发布了Java Lang Conversion Asst 3.0测试版
    关于GC的使用
    增加了简单的搜索功能
    [推荐]TreeView专题讨论
    我是这样过大年初一的!
    [推荐]动态加载类(在程序中调用DLL文件)
    请大家正确填写自己的邮件地址
    Microsoft Win32 to Microsoft .NET Framework API Map
    奇怪的问题
    发表含有HTML代码的文章时,请保持HTML代码的完整
  • 原文地址:https://www.cnblogs.com/ahliucong/p/10523516.html
Copyright © 2011-2022 走看看