ansible package vs Yum module



Я новичок в Анзибль мира. Я уже создал некоторые playbook и с каждым днем все больше и больше знакомлюсь с этой технологией.
В своих PlayBook я всегда использовал команду yum для установки и управления новыми пакетами, но недавно я узнал о другой команде package, которая утверждает, что она не зависит от операционной системы.



Таким образом, мой вопрос: в чем разница между ними?

В частности, если я создам роль и сценарий, которые я знаю, что будут выполнены в Среда RHEL (где Yum-менеджер пакетов по умолчанию), какое преимущество я получаю от использования команды package, а не yum?



Заранее благодарю за помощь.

650   2  

2 ответов:

Ansible package модуль автоопределения вашего менеджера пакетов ОС по умолчанию (например, yum, apt) из существующих фактов.

Переменная окружения факта, которая хранит, является "ansible_pkg_mgr".

Вот команда для того же. ansible localhost -m setup | grep ansible_pkg_mgr.

Если в вашей среде используется несколько ОС, то вместо указания диспетчера пакетов следует использовать package вместо yum or apt.

Модуль Ansible package является более общим, но похоже, что вам все еще придется обрабатывать различия в именах пакетов . Из модуля пакета

# This uses a variable as this changes per distribution.
- name: remove the apache package
  package:
    name: "{{ apache }}"
    state: absent

В этом случае имя пакета для:

  • RHEL-httpd
  • Debian / Ubuntu-apache2

Поэтому переменная {{apache }} должна быть установлена правильно

Comments

    Ничего не найдено.