使用jinja2模板部署自定义文件

本文介绍了如何使用Jinja2模板在Linux环境中部署自定义配置文件。内容涵盖Jinja2模板的基本概念、构建方法、部署步骤以及管理模板文件的注意事项。文章详细阐述了在模板中使用循环、条件句以及变量过滤器的方法,帮助读者理解如何通过Ansible的template模块灵活控制文件部署。
摘要由CSDN通过智能技术生成

使用jinja2模板部署自定义文件

jinja2简介

Ansible将jinja2模板系统用于模板文件。Ansible还使用jinja2语法来引用playbook中的变量

构建jinja2模板

jinja2模板由多个元素组成:数据、变量和表达式。在呈现jinja2模板时,这些变量和表达式被替换为对应的值。模板中使用的变量可以在playbookvars部分中指定。可以将受管主机的事实用作模板中的变量。

[root@control book]# cat  test/test.yml 
---
- name: "模板"
  hosts: server4
  tasks:
    - name: test
      template:
        src: /opt/book/test/hosts
        dest: /etc/hosts

//查看本机上的hosts文件
[root@control book]# cat  test/hosts 
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
{#这是一个注释#}
{
  { ansible_facts['default_ipv4']['address'] }}      {
  { ansible_facts['hostname'] }}

//执行
[root@control book]# ansible-playbook test/test.yml 
 
PLAY [模板] **********************************************************************

TASK [Gathering Facts] *********************************************************
ok: [192.168.56.133]

TASK [test] ********************************************************************
changed: [192.168.56.133]

PLAY RECAP *********************************************************************
192.168.56.133             : ok=2    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   

//查看结果
calhost6.localdomain6
[root@server4 ~]# cat   /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.56.133      server4



包含jinja2模板的文件不需要有任何特定的文件扩展名(如.j2)。但是,提供此类文件扩展名会让你更容易记住它是模板文件。

部署jinja2模板

jinja2模板是功能强大的工具,可用于自定义要在受管主机上部署的配置文件。创建了适用于配置文件的jinja2模板后,它可以通过templ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值