ansible————ansible的文件管理

一、ansible文件管理常用的模块

  • file模块:创建文件/目录,删除/目录文件等

  • copy模块:将控制节点的文件送到被管理主机上

  • lineinfile模块:向文件输入内容

  • stat模块:显示文件的状态信息

  • fetch模块:从被管理主机拉取文件到控制节点

  • blockinfile模块:向文件中插入一段话,并在前面和后面写备注

  • synchronize模块:文件同步

  • tmplate模块:与copy模块差不多,但是可以将jinja2模板内的变量替换成需要的

二、jinja2模板

1、特殊变量ansible_manage

ansible_manage变量设置在ansible.cfg文件中,可以使用jinja2中调用,可以放在开头防止其他人动。

ansible.cfg文件

bash 复制代码
ansible_managed = Ansible managed

jinja2文件中

bash 复制代码
{{ ansible_managed }}

2、jinja2语法结构

1、引用变量

bash 复制代码
{{ 变量 }}

2、注释

sql 复制代码
{# 内容 #}

3、循环

rust 复制代码
{% for i in list %}
    内容
{% endfor %}

{#
list指的是循环次数,通常使用列表
#}
perl 复制代码
{% for myhost in users if not myuser == "root" %}
	内容
{% endfor %}

4、条件判断

perl 复制代码
{% if XXX %} 
    内容
{% elif %}
    内容
{% else %}
    内容
{% endif %}
{#
xxx 如果指的是变量,变量可以使用中括号 
#}
相关推荐
hhzz6 天前
Ansible自动化运维实战--通过role远程部署nginx并配置(8/8)
运维·自动化·ansible
_Eden_6 天前
Ansible入门学习之Playbook快速入门
学习·ansible
_Eden_6 天前
Ansible介绍与入门学习
运维·学习·ansible
hhzz8 天前
ansible自动化运维实战--fetch、cron和group模块(5)
运维·自动化·ansible
hhzz8 天前
ansible自动化运维实战--yaml的使用和配置(7)
运维·自动化·ansible
hhzz8 天前
ansible自动化运维实战--软件包管理模块、服务模块、文件模块和收集模块setup(4)
运维·自动化·ansible
hhzz10 天前
ansible自动化运维实战--script、unarchive和shell模块(6)
运维·自动化·ansible
蘑菇丁10 天前
ansible 批量按用户名创建kerberos主体,并分发到远程主机
大数据·服务器·ansible
阿无@_@11 天前
1、ceph的安装——方式一ceph-ansible
ceph·ansible
牙牙70511 天前
ansible一键安装nginx二进制版本
服务器·nginx·ansible