Ansible Playbooks 常用模块

本文详细介绍Ansible中的多种核心模块,包括File、Copy、Stat、Debug、Command、Shell、Template、Packaging、Service等,解析各模块的功能及应用场景,如文件管理、远程文件状态检查、系统服务管理等。

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

官网链接:https://docs.ansible.com/ansible/latest/modules/list_of_all_modules.html

ansible python module location = ~/python3.x/site-packages/ansible-2.7.8.post0-py3.x.egg/ansible/modules/

File模块

  在目录主机创建文件或目录,并赋予其系统权限

      - name: create file

         file: 'path=/tmp/test.txt state=touch mode=0755 owner=user01 group=user01'

Copy模块

  实现Ansible服务端到目标主机的文件传送

  - name: copy file

         copy: 'remote_src=no src=/tmp/test.txt dest=/tmp/test.txt mode=0644 force=yes'

Stat模块

  获取远程文件状态信息

  - name: check if text.txt exists

         stat: 'path=/tmp/text.txt'

         register: script_stat   # 将stat结果赋值给 script_stat

Debug模块

  打印语句到Ansible执行输出

  - debug: msg=text.txt exists

     when: script_stat.stat.exists  # 跟Stat模块配合使用

Command/Shell模块

  用来执行Linux目标主机命令,区别为:Shell —— 会调用系统中的/bin/bash,这样就可以使用系统中的环境变量,例如重新向,管道符。

  - name: run a script

   command: 'echo "hello world"'

Template模块

  实现Ansible服务端到目标主机的jinja2模板传送

  - name: write the nginx config file

     template: src=/tmp/nginx.conf.j2 dest=/etc/nginx/nginx.conf

Packaging模块

  调用目标主机系统包管理工具(yum, apt)进行安装

     - name: ensure nginx is at the latest version

         yum: pkg=nginx state=latest

      - name: ensure nginx is at the latest version

         apt: pkg=nginx state=latest

Service模块

  管理目标主机系统服务

      - name: start nginx service

         service: name=nginx state=started

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值