Ansible: Как я могу обновить систему CentOS с помощью Ansible

Я пытаюсь обновить системы CentOS с возможностью. К сожалению, я не могу этого сделать.

Я уже пробовал:

- name: install updates
  yum: update_cache=yes
  when: ansible_os_family == "RedHat

Не работает.


- name: install updates
  yum: name=* state=latest
  when: ansible_os_family == "RedHat

Последняя задача работает, но верно ли, что задача обновляет систему?

Ответы

Ответ 1

Первая задача, с которой вы сообщаете системе, только обновлять кеш yum.

Во втором случае вы эффективно обновляете все пакеты до последней версии с помощью state=latest, но вы также должны использовать update_cache=yes в той же задаче, чтобы убедиться, что вы обновляете кеш с его последней информацией о пакете.

Документация yum module предоставляет именно этот пример:

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

После выполнения задачи терминал должен отображать сообщение желтым, что означает, что состояние задачи changed.

Ответ 2

Последняя задача работает, но верно ли, что задача обновляет систему?

Да, эта задача должна быть эквивалентна выполнению yum -y update на сервере.

Если вы запустите эту игру с -vvvv в командной строке, вы увидите все выходные данные команды yum после ее выполнения.