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
相关推荐
乌托邦的逃亡者5 小时前
Docker的/var/lib/docker/目录占用100%的处理方法
运维·docker·容器
ldj20205 小时前
Jenkins 流水线配置
运维·jenkins
古希腊数通小白(ip在学)7 小时前
stp拓扑变化分类
运维·服务器·网络·智能路由器
12点一刻9 小时前
搭建自动化工作流:探寻解放双手的有效方案(2)
运维·人工智能·自动化·deepseek
未来之窗软件服务9 小时前
东方仙盟AI数据中间件使用教程:开启数据交互与自动化应用新时代——仙盟创梦IDE
运维·人工智能·自动化·仙盟创梦ide·东方仙盟·阿雪技术观
o不ok!10 小时前
Linux面试问题-软件测试
linux·运维·服务器
宇钶宇夕13 小时前
SIMATIC S7-1200的以太网通信能力:协议与资源详细解析
运维·服务器·数据库·程序人生·自动化
杰夫贾维斯13 小时前
CentOS Linux 8 的系统部署 Qwen2.5-7B -Instruct-AWQ
linux·运维·人工智能·机器学习·centos
CodeWithMe14 小时前
【Note】Linux Kernel 实时技术深入:详解 PREEMPT_RT 与 Xenomai
linux·运维·服务器