ansible---playbook的使用

本文详细介绍了如何使用Ansible playbook进行配置文件编写、执行任务,包括创建用户、循环处理文件、基于条件的执行和handlers的运用。通过实例演示了配置文件的编写结构和关键参数,适合Ansible初学者和运维人员参考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、使用

1.把模块写入配置文件

vi /etc/ansible/test.yml

---
- hosts: 192.168.2.20
  remote_user: root
  tasks:
  - name: test_playbook
shell: touch /tmp/playbook_test.txt

说明:第一行需要三个杠
hosts参数 指定了对哪些主机进行操作,如果是多台机器可以用逗号作为分隔,也可以使用主机组,在/etc/ansible/hosts里定义
user参数 指定了使用什么用户登录远程主机操作
tasks 指定了一个任务,其下面的name参数 同样是对任务的描述,在执行过程中会打印出来
shell 是ansible模块名字

2.执行playbook任务

进入/etc/ansible/目录下执行

ansible-playbook test.yml 

在这里插入图片描述

3.创建用户:

vi /etc/ansible/create_user.yml

---
- name: create_user
  hosts: 192.168.2.20
  user: root
  gather_facts: false
  vars:
    - user: "test"
  tasks:
    - name: create user
      user: name="{{ user }}"

**说明:**gather_facts参数指定了在以下任务部分执行前,是否先执行setup模块获取主机相关信息,这在后面的task会使用到setup获取的信息时用到;
vars参数,指定了变量,这里指字一个user变量,其值为test ,需要注意的是,变量值一定要用引号引住;
user提定了调用user模块,name是user模块里的一个参数,而增加的用户名字调用了上面user变量的值。
在这里插入图片描述

二、循环

1.编辑while文件

---
- hosts: testhost
  user: root
  tasks:
    - name: change mode for files
      file: path=/tmp/{{ item }} mode=600
      with_items:
        - 1.txt
        - 2.txt
        - 3.txt 

说明: with_items是循环的对象

2.执行

要先在/tmp创建文件1.txt 2.txt 3.txt

ansible-playbook while.yml 

在这里插入图片描述

三、条件判断

1.编辑文件

vi /etc/ansible/when.yml

---
- hosts: testhost
  user: root
  gather_facts: True
  tasks:
    - name: use when
      shell: touch /tmp/when.txt
      when: ansible_eno16777728.ipv4.address == "192.168.200.20"

说明:ansible anisble-02 -m setup 可以查看到所有的facter信息
用自己的网卡名字

2.执行

ansible-playbook when.yml

在这里插入图片描述

四、handlers

1.编辑文件

vi handlers.yml

---
- name: handlers test
  hosts: 192.168.2.20
  user: root
  tasks:
    - name: copy file
      copy: src=/etc/passwd dest=/tmp/aaa.txt
      notify: test handlers
  handlers:
    - name: test handlers
      shell: echo "111111" >> /tmp/aaa.txt 

**说明:**只有copy模块真正执行后,才会去调用下面的handlers相关的操作。

2.执行

ansible-playbook handlers.yml

在这里插入图片描述
完成

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值