关于Ansible模块 ④

转载说明:如果您喜欢这篇文章并打算转载它,请私信作者取得授权。感谢您喜爱本文,请文明转载,谢谢。


《关于Ansible的模块 ①》《关于Ansible的模块 ②》《关于Ansible的模块 ③》之后,继续学习ansible常用模块之系统操作yum模块。

yum模块用来管理服务器上的安装包,包括安装、更新、删除等多项包管理操作。

1. 常用参数

|-----------------|-------------------------------------------------------------------------------|-----------------------------------------------|
| 参数 | 选项/默认值【红色】 | 含义 |
| name | | 指定安装包名称 |
| state | present/installed:安装需要的包,版本不一定最新 latest:若当前的包不是最新,就更新到最新的包 absent/removed:删除包 | 定义操作类型 |
| download_dir | | 存储安装包路径,只在指定download_only时生效,目录会自动创建 |
| download_only | true/false | 是否只下载不安装 |
| allow_downgrade | true/false | 指定是否允许命名的包和版本降级该包的更高版本。 |
| bugfix | true/false | 如果设置为true,并且state=latest则只安装已标记为与错误修复相关的更新 |
| security | true/false | 如果设置为true且state=latest,则只安装标记为安全相关的更新。 |
| cacheonly | true/false | 指定yum是否完全从系统缓存运行;不下载或更新元数据 |
| update_cache | true/false | 检查缓存是否过期需要更新,只在state参数为present或latest时生效 |
| update_only | true/false | 只更新服务器上已安装的包,只在state参数为latest时生效 |
| exclude | | 当state=present或latest时要排除的包名 |
| installroot | / | 指定一个备用 installroot,所有包都将相对于该 installroot 进行安装 |

2. 使用范例

2.1 在远程主机安装包

复制代码
ansible all -m yum -a "name=httpd"

2.2 在远程主机安装指定版版本的包

复制代码
ansible all -m yum -a "name=httpd-2.4.6-99.el7.centos.1 state=present"

2.3 在远程主机卸载某个包

复制代码
ansible all -m yum -a "name=httpd state=absent"

2.4 在远程主机从指定URL安装包

复制代码
ansible all -m yum -a "name=http://nginx.org/packages/centos/7/x86_64/RPMS/nginx-1.24.0-1.el7.ngx.x86_64.rpm  state=present"

2.5 在远程主机安装本地包

复制代码
ansible all -m yum -a "name=/tmp/nginx-1.22.1-1.el7.ngx.x86_64.rpm  state=present"

2.6 在远程主机指定只下载包,不安装

复制代码
ansible all -m yum -a "name=nginx download_only=true download_dir=/tmp/nginx state=present"
相关推荐
꧁༺朝花夕逝༻꧂16 小时前
Ansible小试牛刀
ansible
꧁༺朝花夕逝༻꧂16 小时前
Ansible+Zabbix-agent2快速实现对多主机监控
运维·ansible
m0_628017591 天前
项目四.高可用集群_ansible
ansible
云攀登者-望正茂2 天前
通过 Ansible 在 Windows 2022 上安装 IIS Web 服务器
ansible
云攀登者-望正茂4 天前
使用 Ansible 在 Windows 服务器上安装 SSL 证书
ansible
tianyuanwo5 天前
Ansible自动化运维全解析:从设计哲学到实战演进
运维·自动化·ansible
哆啦A梦15885 天前
在golang中如何将已安装的依赖降级处理,比如:将 go-ansible/[email protected] 更换为 go-ansible/@v1.1.7
开发语言·golang·ansible
lifeng43216 天前
在 CentOS 上将 Ansible 项目推送到 GitHub 的完整指南
centos·github·ansible
运维成长记11 天前
ansible-playbook 进阶 接上一章内容
linux·服务器·ansible
半桶水专家12 天前
Ansible 配置Playbook文件格式、关键字和语法详解
ansible