1.3. 역할 적용


다음 절차에서는 특정 역할을 적용하는 방법을 설명합니다.

사전 요구 사항

  • 제어 노드로 사용하려는 시스템에 rhel-system-roles 패키지가 설치되어 있는지 확인합니다.

    # yum install rhel-system-roles
    Copy to Clipboard Toggle word wrap
  • RHEL 시스템 역할을 사용하는 플레이북을 실행하려면 ansible 패키지가 필요합니다. Ansible Engine 리포지토리가 활성화되어 있고 ansible 패키지가 제어 노드로 사용하려는 시스템에 설치되어 있는지 확인합니다.

    • Red Hat Ansible Engine 서브스크립션이 없는 경우 Red Hat Enterprise Linux 서브스크립션과 함께 제공되는 제한된 지원 버전의 Red Hat Ansible Engine을 사용할 수 있습니다. 이 경우 다음 단계를 따르십시오.

      1. RHEL Ansible Engine 리포지토리를 활성화합니다.

        # subscription-manager refresh
        # sudo subscription-manager repos --enable rhel-7-server-ansible-2.9-rpms
        Copy to Clipboard Toggle word wrap
      2. Ansible Engine을 설치합니다.

        # yum install ansible
        Copy to Clipboard Toggle word wrap
    • Red Hat Ansible Engine 서브스크립션이 있는 경우 How do I download and Install Red Hat Ansible Engine? 에 설명된 절차를 따르십시오.
  • Ansible 인벤토리를 생성할 수 있는지 확인합니다.

    인벤토리는 Ansible 플레이북에서 사용하는 호스트, 호스트 그룹 및 일부 구성 매개 변수를 나타냅니다.

    플레이북은 일반적으로 사람이 읽을 수 있으며 ini,yaml,json 및 기타 파일 형식으로 정의됩니다.

  • Ansible 플레이북을 생성할 수 있는지 확인합니다.

    플레이북은 Ansible의 구성, 배포 및 오케스트레이션 언어를 나타냅니다. 플레이북을 사용하면 원격 시스템의 구성을 선언 및 관리하고, 여러 개의 원격 시스템을 배포하거나 수동 주문 프로세스의 단계를 오케스트레이션할 수 있습니다.

    플레이북은 하나 이상의 플레이 목록입니다. 모든 플레이 에는 Ansible 변수, 작업 또는 역할이 포함될 수 있습니다.

    인벤토리는 사람이 읽을 수 있으며 yaml 형식으로 정의됩니다.

절차

  1. 관리할 호스트 및 그룹을 포함하는 필수 Ansible 인벤토리를 생성합니다. 다음은 webservers:이라는 호스트 그룹의 inventory.ini 파일을 사용하는 예입니다.

    [webservers]
    host1
    host2
    host3
    Copy to Clipboard Toggle word wrap
  2. 필요한 역할을 포함하여 Ansible 플레이북을 생성합니다. 다음 예는 플레이북에 roles: 옵션을 통해 역할을 사용하는 방법을 보여줍니다.

    다음 예제는 지정된 플레이에 대한 roles: 옵션을 통해 역할을 사용하는 방법을 보여줍니다.

    ---
    - hosts: webservers
      roles:
         - rhel-system-roles.network
         - rhel-system-roles.timesync
    Copy to Clipboard Toggle word wrap
    참고

    모든 역할에는 역할 사용 방법과 지원되는 매개 변수 값을 설명하는 README 파일이 포함되어 있습니다. 역할의 설명서 디렉터리에서 특정 역할에 대한 플레이북 예제도 찾을 수 있습니다. 이러한 문서 디렉터리는 rhel-system-roles 패키지와 함께 기본적으로 제공되며 다음 위치에서 찾을 수 있습니다.

    /usr/share/doc/rhel-system-roles-VERSION/SUBSYSTEM/
    Copy to Clipboard Toggle word wrap

    rhel-7.9 rhel-system-roles 패키지의 경우 VERSION 값은 1.0.1 입니다.

    SUBSYSTEMselinux,kdump,network,timesync 또는 storage 와 같은 필수 역할의 이름으로 바꿉니다.

  3. 특정 호스트에서 플레이북을 실행하려면 다음 중 하나를 수행해야 합니다.

    • hosts: host1[,host2,…​을 사용하도록 플레이북을 편집합니다.] 또는 호스트: all 및 명령을 실행합니다.

      # ansible-playbook name.of.the.playbook
      Copy to Clipboard Toggle word wrap
    • 인벤토리를 편집하여 사용할 호스트가 그룹에 정의되어 있는지 확인하고 명령을 실행합니다.

      # ansible-playbook -i name.of.the.inventory name.of.the.playbook
      Copy to Clipboard Toggle word wrap
    • ansible-playbook 명령을 실행할 때 모든 호스트를 지정합니다.

      # ansible-playbook -i host1,host2,... name.of.the.playbook
      Copy to Clipboard Toggle word wrap
      중요

      i 플래그는 사용 가능한 모든 호스트의 인벤토리를 지정합니다. 여러 대상 호스트가 있지만 플레이북을 실행할 호스트를 선택하려는 경우 플레이북에 변수를 추가하여 호스트를 선택할 수 있습니다. 예를 들어 다음과 같습니다.

      Ansible Playbook | example-playbook.yml:
      
      - hosts: "{{ target_host }}"
        roles:
           - rhel-system-roles.network
           - rhel-system-roles.timesync
      Copy to Clipboard Toggle word wrap

      플레이북 실행 명령:

      # ansible-playbook -i host1,..hostn -e target_host=host5 example-playbook.yml
      Copy to Clipboard Toggle word wrap
맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat