Ansible은 EPEL을 추가하는 두 가지 방법을 문서화한 것 같습니다.하나yum_repository_module
yum_repository:
name: epel
description: EPEL YUM repo
baseurl: https://download.fedoraproject.org/pub/epel/$releasever/$basearch/
그리고 하나는yum
기준 치수
name: install EPEL repo
yum: name=epel-release state=present
다음 중 어느 것이 바람직합니까?
답변1
이는 문서의 예일 뿐입니다. 기본적으로 두 번째에서는 저장소를 활성화하기 위해 yum 패키지를 설치하는 반면 첫 번째에서는 관련 .repo 파일로 끝나는 점을 제외하면 완전히 동일한 작업을 수행합니다.
대부분의 고객 네트워크에서는 대역폭을 절약하기 위해 내부 미러링을 사용하는 경우가 많고 사용자 지정 URL을 사용해야 하기 때문에 두 번째 옵션을 사용합니다. 하지만 이 경우 gpg 키도 처리해야 합니다(로컬로 다운로드하거나 uri를 통해 참조). rpm 패키지를 사용하여 저장소를 설치할 때 이 문제를 전혀 처리할 필요가 없습니다(변경 사항이 있으면 yum을 통해 업그레이드할 수 있습니다).
따라서 yum을 통해 설치하는 것이 가장 쉽습니다. 모범 사례를 위해 어쨌든 Ansible 문서 예제를 맹목적으로 신뢰하지는 않지만 오히려에펠 공식 홈페이지이것은 yum 참조를 통해 설치됩니다.
답변2
나에게 도움이 된 것:
name: Install EPEL repo
yum:
name: epel-release
state: present
답변3
두 솔루션 모두 Amazon Linux 2를 실행하는 a1.large 인스턴스에서는 효과가 없었습니다.
- name: Ensure epel repo present
yum:
name: https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
state: present
become: true
답변4
Ansible의 초보자로서 구문 들여쓰기에 문제가 있습니다.
Rocky Linux 9 및 Ansible 2.13.3의 모든 대상 노드에 대한 설치를 스크립트로 작성한 방법은 다음과 같습니다.
- name: Install epel package
hosts: all
become: true
tasks:
- name: Install package epel-release
yum:
name: epel-release
state: present