ansible常用的模块

  1. shell: 执行相关命令,支持管道:
shell 复制代码
- name: Execute the command in remote shell; stdout goes to the specified file on the remote
  ansible.builtin.shell: somescript.sh >> somelog.txt
  1. command同shell,但是不支持管道
powershell 复制代码
- name: Run command if /path/to/database does not exist (without 'args')
  ansible.builtin.command: /usr/bin/make_database.sh db_user db_name creates=/path/to/database
  1. unarchive: 将本地的压缩包,复制到远程机器上,然后解压
shell 复制代码
- name: Extract foo.tgz into /var/lib/foo
  ansible.builtin.unarchive:
    src: foo.tgz
    dest: /var/lib/foo
  1. copy: 将本地的压缩包,复制到远程机器上
powershell 复制代码
- name: Copy file with owner and permissions
  ansible.builtin.copy:
    src: /srv/myfiles/foo.conf
    dest: /etc/foo.conf
    owner: foo
    group: foo
    mode: '0644'
  1. fetch: 将远程的包拉取到本地
shell 复制代码
- name: Store file into /tmp/fetched/host.example.com/tmp/somefile
  ansible.builtin.fetch:
    src: /tmp/somefile
    dest: /tmp/fetched
  1. template: 将jinjia2格式的模板,渲染到远程机器上
shell 复制代码
- name: Template a file to /etc/file.conf
  ansible.builtin.template:
    src: /mytemplates/foo.j2
    dest: /etc/file.conf
    owner: bin
    group: wheel
    mode: '0644'
  1. file: 创建和删除文件或目录
powershell 复制代码
- name: Change file ownership, group and permissions
  ansible.builtin.file:
    path: /etc/foo.conf
    owner: foo
    group: foo
    mode: '0644'
  1. fail:失败模块,遇到立即停止运行ansible
powershell 复制代码
- name: Example using fail and when together
  ansible.builtin.fail:
    msg: The system may not be provisioned according to the CMDB status.
  when: cmdb_status != "to-be-staged"
  1. wait_for: 等待端口存活
powershell 复制代码
- name: Wait for port 8000 to become open on the host, don't start checking for 10 seconds
  ansible.builtin.wait_for:
    port: 8000
    delay: 10
  1. selinux: 启动或者关闭selinux
shell 复制代码
- name: Enable SELinux
  selinux:
    policy: targeted
    state: enforcing
  1. blockinfile:渲染指定内容到某个文件内
shell 复制代码
- name: Insert/Update "Match User" configuration block in /etc/ssh/sshd_config prepending and appending a new line
  ansible.builtin.blockinfile:
    path: /etc/ssh/sshd_config
    append_newline: true
    prepend_newline: true
    block: |
      Match User ansible-agent
      PasswordAuthentication no
  1. yum: rpm包管理模块
shell 复制代码
- name: Install the latest version of Apache
  ansible.builtin.yum:
    name: httpd
    state: latest
  1. user: 创建删除用户
shell 复制代码
- name: Add the user 'johnd' with a specific uid and a primary group of 'admin'
  ansible.builtin.user:
    name: johnd
    comment: John Doe
    uid: 1040
    group: admin
相关推荐
宁雨桥38 分钟前
Debian 服务器环境搭建全指南:从工具选型到项目部署实战
运维·服务器·debian
kyle~1 小时前
原子性与原子操作
运维·服务器·开发语言·c++
黄金旺铺1 小时前
Linux 命令与运维终极手册(2025 完整版)
linux·运维·服务器
上海蓝色星球2 小时前
基于3DGIS+BIM的智慧园区运维平台价值分享
运维·人工智能·3d
塔能物联运维2 小时前
物联网设备物理环境自适应监控与运维策略优化
运维·物联网
oioihoii2 小时前
不止于Linux:百花齐放的开源世界与社区的力量
linux·运维·开源
moringlightyn3 小时前
基础开发工具--编译器g++/gcc 自动化构建make/Makefile
linux·运维·笔记·自动化·c·编译器·make/makefile
小白学大数据3 小时前
集成Scrapy与异步库:Scrapy+Playwright自动化爬取动态内容
运维·爬虫·scrapy·自动化
李少兄3 小时前
解决 CentOS 8 报错:Failed to download metadata for repo ‘BaseOS‘
linux·运维·centos
杜子不疼.3 小时前
Linux】 性能调优实战:内核参数优化技巧
linux·运维·php