Ansible:如何使用Ansible更新system CentOS

Ansible:如何使用Ansible更新system CentOS,centos,ansible,yum,Centos,Ansible,Yum,我正在尝试用ansible更新CentOS系统。不幸的是,我无法做到这一点 我已经试过了: - name: install updates yum: update_cache=yes when: ansible_os_family == "RedHat 它不起作用了 最后一个任务可以工作,但该任务是否会更新系统?您告诉系统仅更新yum缓存的第一个任务 第二次,您通过使用state=latest有效地将所有软件包升级到最新版本,但您也应该在同一任务上使用update\u cache=y

我正在尝试用ansible更新CentOS系统。不幸的是,我无法做到这一点

我已经试过了:

- name: install updates
  yum: update_cache=yes
  when: ansible_os_family == "RedHat
它不起作用了



最后一个任务可以工作,但该任务是否会更新系统?

您告诉系统仅更新yum缓存的第一个任务

第二次,您通过使用
state=latest
有效地将所有软件包升级到最新版本,但您也应该在同一任务上使用
update\u cache=yes
,以确保您正在用最新的软件包信息刷新缓存

本文档正好提供了以下示例:

- name: upgrade all packages
  yum: name=* state=latest

执行任务后,终端应显示一条黄色消息,表示任务的状态为
已更改

如何安装安全更新而不更新所有程序包?不幸的是,如果出现问题,您会收到非常糟糕的故障排除反馈(基本上是整个yum日志,还有一行错误)。此外,你不能真正观察升级的进度,也不能获得任何进度日志。我希望有一些特殊的模块用于此。在2.8 Ansible中,它还可以定义为
yum:name:*”state:latest
请参见。如果你将通过Ansible lint检查此任务,你将得到
[403]软件包安装不应使用最新的
。因此,我认为应该有更好的方法。
- name: upgrade all packages
  yum: name=* state=latest