关于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"
相关推荐
垚垚学技术_聚焦云原生11 天前
Ansible Vault 安全实践:敏感密码、密钥加密存储方案
安全·elasticsearch·ansible
广目软件13 天前
HA分布式架构采集节点变更操作手册20261029
运维·服务器·ansible·zabbix·prometheus
Moshow郑锴13 天前
Ansible 批量部署 Node.js 服务:ZIP 直解与共享目录分发两种方案对比
node.js·ansible
垚垚学技术_聚焦云原生14 天前
Ansible Playbook 进阶:when 条件、loop 循环、handlers 触发器落地
linux·ansible·自动化运维·devops
Moshow郑锴14 天前
GCP MIG 重建后 Ansible 初始化实战:PowerShell + NSSM 挂载 Windows 服务
windows·ansible
承渊政道16 天前
新增一台服务器时还要重新装Nginx?Ansible只改hosts目标列表,同一份Playbook继续执行
运维·nginx·ansible·内网穿透·cpolar
Helix25018 天前
Ansible混合环境自动化:Windows与Linux统一配置管理实战
windows·自动化·ansible·playbook·配置管理·winrm·混合环境
垚垚学技术_聚焦云原生19 天前
Ansible 变量体系详解:主机变量、组变量、全局变量优先级实战
ansible·自动化运维·devops·变量优先级
I'mChloe1 个月前
不再逐台装Docker:我用Ansible Playbook批量统一服务器环境
服务器·docker·ansible
筑梦之路1 个月前
Alibaba Cloud Linux 4 制作 Ansible RPM包实践(离线可复用)——筑梦之路
linux·运维·ansible