ansible模块简介

http://openskill.cn/article/130

以上链接是详细介绍

一、copy模块

把主控端文件拷贝到指定节点上:ansible 主机名 -m copy -a 'src=/原路径 dest=/目标路径' 

二、file模块

目的:更改指定节点文件属性

ansible 主机名file -a  "dest=/目标路径 mode=755" 其中mode是修改目标路径的属性

三、cron模块

目的:定义计划任务(每三分钟到主机更新一次时间)

ansible all -m cron -a 'name="cutom job" minute=*/3 hour=* day=* month=* weekday=* job=/主机ip'

四、group模块

目的:创建组

ansible all -m group -a 'gid=2014 name=nolinux'

五、user模块

目的:创建用户

ansible 主机名 -m user -a 'name=nolinux groups=nolinux state=present'

六、yum模块

目的:在节点用yum安装服务

ansible all -m yum -a "state=present name=httpd"   rpm -qa httpd  (查看版本)

七、service模块

目的:启动节点上的服务

ansible 主机名-m service -a 'name=httpd state=restarted'    service httpd status(查看状态是已停止) service httpd status(正在运行)

八、script模块

目的:在节点上执行server上的脚本

先写一个脚本比如#!/bin/bash echo "hello,world!"

ansible 主机名 -m script -a '/脚本路径'

九、shell模块

目的:执行节点上的脚本

absible 主机名 -m shell -a 'bash /脚本路径'

十、ping模块

目的:检查节点是否能连通

ansible 主机名 -m ping 

十一、get_url模块

目的:将文件下载到指定节点

ansible 主机名 -m get_url -a  'url=http://链接 dest=/tmp(目标路径)'

十二、synchronize模块

目的:将serve方目录推送到节点

ansible 主机名 -m syschrinize -a 'src=/原路径 dest=目标路径 compress=yes' 

delete=yes 使两边的内容一样

compress=yes 开启压缩默认为开启

--exclude=.git 忽略童虎.git结尾的文件

十三、command模块

ansible all -a date 或者ansible all -m command -a date

以上两条命令结果相同,因为ansible默认调用command模块,所以comand可以省略,Commmand模块常见的shell命令都可以使用大那是由于执行不是通过sehll所以< > | & 等服务号都不可以用 运行中的命令不支持变量也不支持管道

十四、raw模块

与command模块类似但是可以传递管道

ansible 主机名-m raw -a 'free -m | grep Swap'

原文地址:https://www.cnblogs.com/sunyuhuan/p/10329994.html