Ansible 模块

1、查看 ansible 支持的模块

ansible-doc -l

2、常用的模块

命令功能
ping尝试连接主机,如果测试成功会返回‘pong’
COMMAND在远程节点执行命令,默认模块
YUM 使用yum软件包管理工具管理软件包
SHEEL和command模块类似,执行命令,支持变量等符号
cron管理定时任务,计划任务
SYSTEMD管理程序服务
FILE设置文件属性
COPY复制本地文件到远程主机
script传送本地的一个脚本并在远程主机上执行
setup获取远程主机的参数信息
USER管理用户账户
group添加或者删除用户组 

3、查看某模块的用法

ansible-doc -s yum

COMMAND

命令模块 适合使用简单的命令 无法支持"<",">","|",";","&"等符号
官方文档:ansible.builtin.command module – Execute commands on targets — Ansible Documentation

参数选项/默认值释义
chdir在执行命令前,进入到指定目录中
creates判断指定文件是否存在,如果存在,不执行后面的操作
removes判断指定文件是否存在,如果存在,执行后面的操作
free_form必须要输入一个合理的命令
ansible testgroup -m command -a "date"

# 也可以这样
ansible testgroup -a "date"

YUM

使用yum软件包管理器安装,升级,降级,删除和列出软件包和组。
官方文档:ansible.builtin.yum_repository module – Add or remove YUM repositories — Ansible Documentation

参数选项/默认值释义
name(required)指定软件名称信息
stateabsent / removed将软件进行卸载
present / installed将软件进行安装
latest安装最新的软件 yum update
# sample
ansible testgroup -m yum -a "name=httpd state=installed"

SHEEL

类似command模块升级版—万能模块,可以使用"<",">","|",";","&"等符号特殊符号
官方文档:ansible.builtin.shell module – Execute shell commands on targets — Ansible Documentation

参数选项/默认值释义
chdir在执行命令前,进入到指定目录中
creates判断指定文件是否存在,如果存在,不执行后面的操作
removes判断指定文件是否存在,如果存在,执行后面的操作
free_form必须要输入一个合理的命令
ansible testgroup -m shell -a "ps -ef | grep sshd"

SYSTEMD

用于管理服务运行状态
官方文档:ansible.builtin.systemd module – Manage systemd units — Ansible Documentation

参数选项/默认值释义
name设置要启动/停止服务名称
enableno/yes是否开机启动
statereloaded平滑重启
restarted重启
started启动
stopped停止
 ansible testgroup -m systemd -a "name=httpd state=started"

FILE

实现创建/删除文件信息 对数据权限进行修改
官方文档:ansible.builtin.file module – Manage files and file properties — Ansible Documentation  

参数选项/默认值释义
path定义文件目录的路径
group设置文件属组用户信息
mode设置数据的权限 0644 0755
owner设置文件属主用户信息
src要被软连接的源文件的路径,只适用于state=link的情况
dest被连接到的路径,只适用于state=link的情况
stateabsent将数据进行删除
directory创建一个目录
file查看指定目录信息是否存在
touch创建一个文件
hard/link创建链接文件
ansible testgroup -m file -a "path=/opt/opt.txt state=touch"

COPY

主要用于将管理主机上的数据信息传送给多台主机
官方文档:ansible.builtin.copy module – Copy files to remote locations — Ansible Documentation 

参数选项/默认值释义
src指定将本地管理主机的什么数据信息进行远程复制
backupno* yes默认数据复制到远程主机,会覆盖原有文件(yes 将源文件进行备份)
content在文件中添加信息
dest将数据复制到远程节点的路径信息
group文件数据复制到远程主机,设置文件属组用户信息
mode文件数据复制到远程主机,设置数据的权限 eg 0644 0755
owner文件数据复制到远程主机,设置文件属主用户信息
ansible testgroup -m copy -a "src=/root/anaconda-ks.cfg dest=/opt"

USER

远程批量创建用户信息
官方文档:ansible.builtin.user module – Manage user accounts — Ansible Documentation

参数选项/默认值释义
password请输入密码信息
name指定用户名信息
uid指定用户uid信息
group指定用户主要属于哪个组
groups指定用户属于哪个附加组信息
shell/bin/bash或/sbin/nologin指定是否能够登录
create_homeyes/no是否创建家目录信息
home指定家目录创建在什么路径 默认/home
ansible testgroup -m user -a "name=tomma"

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值