Red Hat Ansible Automation Platform 설치 가이드

Red Hat Ansible Automation Platform 2.4

Ansible Automation Platform 설치

Red Hat Customer Content Services

초록

이 가이드에서는 지원되는 설치 시나리오를 기반으로 Red Hat Ansible Automation Platform을 설치하는 방법을 보여줍니다.

머리말

Red Hat Ansible Automation Platform에 관심을 가져 주셔서 감사합니다. Ansible Automation Platform은 Ansible 기반 환경에 제어, 지식 및 위임을 추가하여 팀이 복잡한 다중 계층 배포를 관리하는 데 도움이 되는 상용 서비스입니다.

이 가이드를 통해 Ansible Automation Platform 설치 후의 설치 요구 사항 및 프로세스를 이해하는 데 도움이 됩니다. 이 문서는 Ansible Automation Platform의 최신 릴리스에 대한 정보를 포함하도록 업데이트되었습니다.

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

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 용어를 교체하기 위해 최선을 다하고 있습니다. 먼저 마스터(master), 슬레이브(slave), 블랙리스트(blacklist), 화이트리스트(whitelist) 등 네 가지 용어를 교체하고 있습니다. 이러한 변경 작업은 작업 범위가 크므로 향후 여러 릴리스에 걸쳐 점차 구현할 예정입니다. 자세한 내용은 CTO Chris Wright의 메시지를 참조하십시오.

Red Hat 문서에 관한 피드백 제공

Red Hat의 기술 콘텐츠에 대한 귀하의 피드백에 감사드리며, 귀하가 생각하는 것을 알려 주시기 바랍니다. 주석을 추가하거나, 인사이트를 제공하거나, 오타를 수정하거나, 질문을 하려면 문서에서 직접 이 작업을 수행할 수 있습니다.

참고

Red Hat 계정이 있어야 하며 고객 포털에 로그인해야 합니다.

고객 포털에서 문서 피드백을 제출하려면 다음을 수행하십시오.

  1. 다중 페이지 HTML 형식을 선택합니다.
  2. 문서 오른쪽 상단에 있는 피드백 버튼을 클릭합니다.
  3. 피드백을 제공하려는 텍스트 섹션을 강조 표시합니다.
  4. 강조 표시된 텍스트 옆에 있는 피드백 추가 대화 상자를 클릭합니다.
  5. 페이지 오른쪽에 있는 텍스트 상자에 피드백을 입력한 다음 제출을 클릭합니다.

피드백을 제출할 때마다 추적 문제가 자동으로 생성됩니다. Submit 을 클릭한 후 표시되는 링크를 열고 문제 모니터링을 시작하거나 의견을 더 추가합니다.

1장. Red Hat Ansible Automation Platform 설치 개요

Red Hat Ansible Automation Platform 설치 프로그램은 유연성을 제공하므로 지원되는 여러 설치 시나리오를 사용하여 Ansible Automation Platform을 설치할 수 있습니다. Ansible Automation Platform 2.4부터 설치 시나리오에는 IT 요청의 자동화된 해결을 도입하는 Event-Driven Ansible 컨트롤러의 선택적 배포가 포함됩니다.

선택한 설치 시나리오에 관계없이 Ansible Automation Platform을 설치하려면 다음 단계가 포함됩니다.

Red Hat Ansible Automation Platform 설치 프로그램 인벤토리 파일 편집
Ansible Automation Platform 설치 프로그램 인벤토리 파일을 사용하면 설치 시나리오를 지정하고 Ansible에 대한 호스트 배포를 설명할 수 있습니다. 이 문서에 제공된 예제에서는 배포에 해당 시나리오를 설치하는 데 필요한 매개변수 사양을 보여줍니다.
Red Hat Ansible Automation Platform 설치 프로그램 설정 스크립트 실행
설정 스크립트는 인벤토리 파일에 정의된 필수 매개변수를 사용하여 프라이빗 Automation Hub를 설치합니다.
자동화 컨트롤러 설치 확인
Ansible Automation Platform을 설치한 후 자동화 컨트롤러에 로그인하여 설치에 성공했는지 확인할 수 있습니다.
자동화 허브 설치 확인
Ansible Automation Platform을 설치한 후 자동화 허브에 로그인하여 설치에 성공했는지 확인할 수 있습니다.
이벤트 기반 Ansible 컨트롤러 설치 확인
Ansible Automation Platform을 설치한 후 이벤트 기반 Ansible 컨트롤러에 로그인하여 설치에 성공했는지 확인할 수 있습니다.
설치 후 단계
설치에 성공하면 Ansible Automation Platform의 기능 사용을 시작할 수 있습니다.

추가 리소스

지원되는 설치 시나리오에 대한 자세한 내용은 Red Hat Ansible Automation Platform 플래닝 가이드를 참조하십시오.

1.1. 사전 요구 사항

주의

Ansible Automation Platform 설치 전에 RHEL 노드를 완전히 업그레이드하지 않으면 오류가 발생할 수 있습니다.

추가 리소스

플랫폼 설치 프로그램 또는 시스템 요구 사항을 얻는 방법에 대한 자세한 내용은 Red Hat Ansible Automation Platform 계획 가이드의 Red Hat Ansible Automation Platform 시스템 요구 사항을참조하십시오 .

2장. 시스템 요구 사항

Red Hat Ansible Automation Platform 설치를 계획하고 사용 사례에 맞는 자동화 메시 토폴로지를 설계할 때 이 정보를 사용하십시오.

사전 요구 사항

  • sudo 명령을 통해 또는 권한 에스컬레이션을 통해 root 액세스 권한을 얻을 수 있어야 합니다. 권한 에스컬레이션에 대한 자세한 내용은 권한 에스컬레이션 이해 를 참조하십시오.
  • AWX, PostgreSQL, 이벤트 기반 Ansible 또는 Pulp와 같은 사용자에게 권한을 에스컬레이션할 수 있어야 합니다.

2.1. Red Hat Ansible Automation Platform 시스템 요구 사항

Red Hat Ansible Automation Platform을 설치하고 실행하려면 시스템이 다음과 같은 최소 시스템 요구 사항을 충족해야 합니다.

표 2.1. 기본 시스템

요구 사항필수 항목참고

서브스크립션

유효한 Red Hat Ansible Automation Platform

 

OS

Red Hat Enterprise Linux 8.6 이상 64비트(x86, ppc64le, s390x, aarch64)

Red Hat Ansible Automation Platform은 OpenShift에서 지원됩니다. 자세한 내용은 OpenShift Container Platform에 Red Hat Ansible Automation Platform Operator 배포를 참조하십시오.

Ansible

버전 2.14 (설치 대상)

Ansible Automation Platform에는 ansible-core 2.15가 포함된 실행 환경이 포함되어 있습니다.

Python

3.8 이상

 

브라우저

현재 지원되는 Mozilla FireFox 또는 Google Chrome 버전

 

데이터베이스

PostgreSQL 버전 13

 

프로젝트 업데이트 및 컬렉션을 사용하려면 다음이 필요합니다.

  • 자동화 허브 또는 Galaxy 서버에서 컬렉션을 성공적으로 연결하고 다운로드하는 경우 다음 도메인 이름이 방화벽 또는 프록시의 허용 목록에 포함되어 있는지 확인합니다.

    • galaxy.ansible.com
    • cloud.redhat.com
    • console.redhat.com
    • sso.redhat.com
  • 자체 서명된 인증서를 사용하는 경우 또는 Red Hat 도메인에 대해 SSL 검사를 비활성화해야 합니다.
참고

Ansible Automation Platform에서 관리하는 시스템의 요구 사항은 Ansible과 동일합니다. Ansible 사용자 가이드의 Ansible 시작하기 를 참조하십시오.

Red Hat Ansible Automation Platform 요구 사항에 대한 추가 정보

  • Red Hat Ansible Automation Platform은 Ansible 플레이북에 따라 다르며 자동화 컨트롤러를 설치하기 전에 안정적인 최신 버전의 Ansible을 설치해야 하지만 Ansible 수동 설치는 더 이상 필요하지 않습니다.
  • 새로운 설치의 경우 자동화 컨트롤러는 Ansible 2.14의 최신 릴리스 패키지를 설치합니다.
  • 번들로 제공되는 Ansible Automation Platform 설치를 수행하는 경우 설치 프로그램은 번들에서 Ansible(및 해당 종속 항목)을 설치하려고 합니다.
  • Ansible을 직접 설치하도록 선택하는 경우 Ansible Automation Platform 설치 프로그램에서 Ansible이 설치되었음을 감지하고 다시 설치하지 않습니다.
참고

Red Hat Ansible Automation Platform이 제대로 작동하려면 dnf 와 같은 패키지 관리자를 사용하여 Ansible을 설치하고 안정적인 최신 버전의 패키지 관리자를 설치해야 합니다. 버전 2.4 이상에는 Ansible 버전 2.14가 필요합니다.

2.2. 자동화 컨트롤러 시스템 요구 사항

자동화 컨트롤러는 다양한 소프트웨어 구성 요소를 함께 배치하거나 여러 컴퓨팅 노드에 배포할 수 있는 분산 시스템입니다. 설치 프로그램에서 컨트롤, 하이브리드, 실행 및 홉의 노드 유형은 사용 사례에 적합한 토폴로지를 설계하는 데 도움이 되는 추상화로 제공됩니다.

노드 크기 조정에는 다음 권장 사항을 사용하십시오.

참고

제어 및 하이브리드 노드에서 실행 환경 스토리지를 위해 최소 20GB를 /var/lib/awx 에 할당합니다.

실행 노드

자동화를 실행합니다. 더 많은 포크 실행 용량을 늘리기 위해 메모리 및 CPU 증가

요구 사항필수 항목

RAM

16GB

CPUs

4

로컬 디스크

최소 40GB

컨트롤 노드

이벤트를 처리하고 프로젝트 업데이트 및 정리 작업을 포함하여 클러스터 작업을 실행합니다. CPU 및 메모리를 늘리면 작업 이벤트 처리에 도움이 될 수 있습니다.

요구 사항필수 항목

RAM

16GB

CPUs

4

로컬 디스크

  • /var/lib/awx에서 최소 20GB를 사용할 수 있는 최소 40GB
  • 스토리지 볼륨은 최소 1500 IOPS 기준으로 평가되어야 합니다.
  • 프로젝트는 제어 및 하이브리드 노드에 저장되며 작업 기간 동안 실행 노드에도 저장됩니다. 클러스터에 많은 대규모 프로젝트가 있는 경우 디스크 공간 오류를 방지하기 위해 /var/lib/awx/projects에서 GB를 두 배로 늘리는 것이 좋습니다.

하이브리드 노드

자동화 및 클러스터 작업을 모두 실행합니다. 실행 및 제어 노드의 CPU 및 메모리에 대한 주석도 이 노드 유형에 적용됩니다.

요구 사항필수 항목

RAM

16GB

CPUs

4

로컬 디스크

  • /var/lib/awx에서 최소 20GB를 사용할 수 있는 최소 40GB
  • 스토리지 볼륨은 최소 1500 IOPS 기준으로 평가되어야 합니다.
  • 프로젝트는 제어 및 하이브리드 노드에 저장되며 작업 기간 동안 실행 노드에도 저장됩니다. 클러스터에 많은 대규모 프로젝트가 있는 경우 디스크 공간 오류를 방지하기 위해 /var/lib/awx/projects에서 GB를 두 배로 늘리는 것이 좋습니다.

홉 노드

는 자동화 메시의 한 부분에서 다른 부분으로 트래픽을 라우팅하는 역할을 합니다(예: 다른 네트워크로 bastion 호스트가 될 수 있음). RAM은 처리량에 영향을 미칠 수 있으며 CPU 활동이 적습니다. 네트워크 대역폭과 대기 시간은 일반적으로 RAM 또는 CPU보다 더 중요한 요소입니다.

요구 사항필수 항목

RAM

16GB

CPUs

4

로컬 디스크

40GB

  • 실제 RAM 요구 사항은 동시에 관리할 호스트 자동화 컨트롤러 수(작업 템플릿의 forks 매개변수 또는 시스템 ansible.cfg 파일에 의해 제어됨)에 따라 달라집니다. 가능한 리소스 충돌을 방지하기 위해 Ansible은 10 포크당 1GB의 메모리와 자동화 컨트롤러에 대해 2GB 예약을 권장합니다. 자세한 내용은 자동화 컨트롤러 용량 결정 및 작업에 미치는 영향을 참조하십시오. 포크를 400으로 설정하면 42GB의 메모리가 권장됩니다.
  • 물론 더 많은 수의 호스트를 처리할 수 있지만 포크 번호가 총 호스트 수보다 작으면 호스트 간에 더 많은 패스가 필요합니다. 이러한 RAM 제한은 롤링 업데이트를 사용하거나 자동화 컨트롤러에 빌드된 프로비저닝 콜백 시스템을 사용할 때 방지할 수 있습니다. 각 시스템 요청은 큐를 입력하고 가능한 한 빨리 처리됩니다. 또는 자동화 컨트롤러에서 AMI와 같은 이미지를 생성하거나 배포하는 경우 이러한 RAM 제한은 방지할 수 있습니다. 이러한 접근 방식은 모두 대규모 환경을 관리하기 위한 좋은 방법입니다. 자세한 내용은 https://access.redhat.com/ 에서 Red Hat 고객 포털을 통해 Ansible 지원에 문의하십시오.

2.3. 자동화 허브 시스템 요구 사항

Automation Hub를 사용하면 Red Hat Ansible 및 Certified Partners에서 새로 인증된 자동화 콘텐츠를 검색하고 사용할 수 있습니다. Ansible 자동화 허브에서는 클라우드 자동화, 네트워크 자동화 및 보안 자동화와 같은 사용 사례에 대해 Red Hat 및 파트너가 개발한 자동화 콘텐츠인 Ansible 컬렉션을 검색하고 관리할 수 있습니다.

Automation Hub에는 다음과 같은 시스템 요구 사항이 있습니다.

요구 사항필수 항목참고

RAM

최소 8GB

  • 8GB RAM(Oplud 평가판 설치 시 최소 및 권장)
  • 8GB RAM(외부 독립 실행형 PostgreSQL 데이터베이스의 경우 최소)
  • 구성의 포크를 기반으로 하는 용량은 추가 리소스를 참조하십시오.

CPUs

최소 2개

구성의 포크를 기반으로 하는 용량은 추가 리소스를 참조하십시오.

로컬 디스크

60GB 디스크

컬렉션 저장을 위해 최소 40GB의 /var 전용이어야 합니다.

참고

프라이빗 자동화 허브

내부 주소에서 프라이빗 자동화 허브를 설치하고 외부 주소만 포함하는 인증서가 있는 경우 설치 시 인증서 문제 없이 컨테이너 레지스트리로 사용할 수 없습니다.

이를 방지하려면 설치 인벤토리 파일의 프라이빗 자동화 허브 노드에 연결된 https://pah.example.com 값과 함께 automationhub_main_url 인벤토리 변수를 사용합니다.

그러면 외부 주소가 /etc/pulp/settings.py 에 추가됩니다.

즉, 외부 주소만 사용해야 합니다.

인벤토리 파일 변수에 대한 자세한 내용은 Red Hat Ansible Automation Platform 설치 가이드의 인벤토리 파일 변수 를 참조하십시오.

2.4. PostgreSQL 요구 사항

Red Hat Ansible Automation Platform은 PostgreSQL 13을 사용합니다.

  • PostgreSQL 사용자 암호는 데이터베이스에 저장하기 전에 SCRAM-SHA-256 보안 해시 알고리즘으로 해시됩니다.
  • 자동화 컨트롤러 인스턴스가 데이터베이스에 액세스할 수 있는지 확인하려면 awx-manage check_db 명령을 사용하여 이를 수행할 수 있습니다.

표 2.2. 데이터베이스

Service필수 항목참고

각 자동화 컨트롤러

40GB 전용 하드 디스크 공간

  • 파일 및 작업 디렉터리 저장을 위해 최소 20GB를 /var/ 에 전용
  • 스토리지 볼륨은 최소 1500 IOPS 기준으로 평가되어야 합니다.
  • 프로젝트는 제어 및 하이브리드 노드에 저장되며 작업 기간 동안 실행 노드에도 저장됩니다. 클러스터에 많은 대규모 프로젝트가 있는 경우 디스크 공간 오류를 방지하려면 /var/lib/awx/projects에 2GB를 사용하는 것이 좋습니다.
  • 150GB 이상 권장
  • 스토리지 볼륨은 높은 기준 IOPS(1500 이상)로 평가되어야 합니다.

각 자동화 허브

60GB 전용 하드 디스크 공간

스토리지 볼륨은 최소 1500 IOPS 기준으로 평가되어야 합니다.

데이터베이스

20GB 전용 하드 디스크 공간

  • 150GB 이상 권장
  • 스토리지 볼륨은 높은 기준 IOPS(1500 이상)로 평가되어야 합니다.
  • 모든 자동화 컨트롤러 데이터는 데이터베이스에 저장됩니다. 데이터베이스 스토리지는 관리되는 호스트 수, 작업 실행 수, 팩트 캐시에 저장된 팩트 수, 개별 작업의 작업 수에 따라 증가합니다. 예를 들어 플레이북이 250개 호스트에서 매시간(하루 24회) 실행되고 20개의 작업이 포함된 플레이북은 매주 데이터베이스에 800000개 이상의 이벤트를 저장합니다.
  • 데이터베이스에 공간이 충분하지 않은 경우 이전 작업 실행 및 팩트를 정기적으로 정리해야 합니다. 자세한 내용은 자동화 컨트롤러 관리 가이드의 관리 작업 참조

PostgreSQL 설정

선택적으로 Red Hat Ansible Automation Platform 설치 프로그램에서 관리하지 않는 별도의 노드로 PostgreSQL 데이터베이스를 구성할 수 있습니다. Ansible Automation Platform 설치 프로그램에서 데이터베이스 서버를 관리할 때 대부분의 워크로드에 일반적으로 권장되는 기본값으로 서버를 구성합니다. 그러나 ansible_memtotal_mb 가 데이터베이스 서버의 총 메모리 크기인 독립 실행형 데이터베이스 서버 노드에 대해 이러한 PostgreSQL 설정을 조정할 수 있습니다.

max_connections == 1024
shared_buffers == ansible_memtotal_mb*0.3
work_mem == ansible_memtotal_mb*0.03
maintenance_work_mem == ansible_memtotal_mb*0.04

추가 리소스

PostgreSQL 서버 튜닝에 대한 자세한 내용은 PostgreSQL 설명서 를 참조하십시오.

2.4.1. 자동화 허브 PostgreSQL 데이터베이스의 hstore 확장 활성화

Ansible Automation Platform 2.4에서 데이터베이스 마이그레이션 스크립트는 hstore 필드를 사용하여 정보를 저장하므로 자동화 허브 PostgreSQL 데이터베이스에 대한 hstore 확장을 활성화해야 합니다.

이 프로세스는 Ansible Automation Platform 설치 프로그램 및 관리형 PostgreSQL 서버를 사용할 때 자동으로 수행됩니다.

그러나 PostgreSQL 데이터베이스가 외부인 경우 자동화 허브를 설치하기 전에 이 단계를 수동으로 수행해야 합니다.

자동화 허브를 설치하기 전에 hstore 확장 기능을 활성화하지 않으면 데이터베이스 마이그레이션 중에 오류가 발생합니다.

절차

  1. PostgreSQL 서버(자동화 허브 데이터베이스)에서 확장을 사용할 수 있는지 확인합니다.

    $ psql -d <automation hub database> -c "SELECT * FROM pg_available_extensions WHERE name='hstore'"

    여기서 < automation hub database>의 기본값automationhub 입니다.

    그러면 다음과 유사한 출력이 제공됩니다.

    name  | default_version | installed_version |comment
    ------+-----------------+-------------------+---------------------------------------------------
     hstore | 1.7           |                   | data type for storing sets of (key, value) pairs
    (1 row)
  2. 이는 hstore 1.7 확장을 사용할 수 있지만 활성화되어 있지 않음을 나타냅니다.

    PostgreSQL 서버에서 hstore 확장을 사용할 수 없는 경우 결과는 다음과 유사합니다.

     name | default_version | installed_version | comment
    ------+-----------------+-------------------+---------
    (0 rows)
  3. RHEL 기반 서버에서 hstore 확장은 postgresql-contrib RPM 패키지에 포함되어 있으며 PostgreSQL 서버 RPM 패키지를 설치할 때 자동으로 설치되지 않습니다.

    RPM 패키지를 설치하려면 다음 명령을 사용하십시오.

    dnf install postgresql-contrib
  4. 다음 명령을 사용하여 자동화 허브 데이터베이스에 hstore PostgreSQL 확장을 생성합니다.

    $ psql -d <automation hub database> -c "CREATE EXTENSION hstore"

    결과는 다음과 같습니다.

    CREATE EXTENSION
  5. 다음 출력에서 installed_version 필드에는 hstore 가 활성화되었음을 나타내는 hstore 확장이 포함되어 있습니다.

    name | default_version | installed_version | comment
    -----+-----------------+-------------------+------------------------------------------------------
    hstore  |     1.7      |       1.7         | data type for storing sets of (key, value) pairs
    (1 row)

2.4.2. Ansible Automation Platform PostgreSQL 데이터베이스에 대한 스토리지 성능 벤치마킹

다음 절차에서는 스토리지 시스템의 쓰기/읽기 IOPS 성능을 벤치마킹하여 최소 Ansible Automation Platform PostgreSQL 데이터베이스 요구 사항이 충족되는지 확인하는 방법을 설명합니다.

사전 요구 사항

  • 유연한 I/O Tester(fio) 스토리지 성능 벤치마킹 툴을 설치했습니다.

    fio를 설치하려면 root 사용자로 다음 명령을 실행합니다.

    # yum -y install fio
  • fio 테스트 데이터 로그 파일을 저장할 충분한 디스크 공간이 있습니다.

    절차에 표시된 예제에는 /tmp 디렉토리에 최소 60GB의 디스크 공간이 필요합니다.

    • numjobs 는 명령으로 실행하는 작업 수를 설정합니다.
    • size=10G 는 각 작업에서 생성한 파일 크기를 설정합니다.

    테스트 데이터 양을 줄이려면 size 매개변수의 값을 조정합니다.

절차

  1. 임의의 쓰기 테스트를 실행합니다.

    $ fio --name=write_iops --directory=/tmp --numjobs=3 --size=10G \
    --time_based --runtime=60s --ramp_time=2s --ioengine=libaio --direct=1 \
    --verify=0 --bs=4K --iodepth=64 --rw=randwrite \
    --group_reporting=1 > /tmp/fio_benchmark_write_iops.log \
    2>> /tmp/fio_write_iops_error.log
  2. 임의의 읽기 테스트를 실행합니다.

    $ fio --name=read_iops --directory=/tmp \
    --numjobs=3 --size=10G --time_based --runtime=60s --ramp_time=2s \
    --ioengine=libaio --direct=1 --verify=0 --bs=4K --iodepth=64 --rw=randread \
    --group_reporting=1 > /tmp/fio_benchmark_read_iops.log \
    2>> /tmp/fio_read_iops_error.log
  3. 결과를 검토합니다.

    벤치마크 명령으로 작성된 로그 파일에서 iops 로 시작하는 행을 검색합니다. 이 행은 테스트의 최소, 최대값 및 평균 값을 표시합니다.

    다음 예제에서는 임의의 읽기 테스트에 대한 로그 파일의 행을 보여줍니다.

    $ cat /tmp/fio_benchmark_read_iops.log
    read_iops: (g=0): rw=randread, bs=(R) 4096B-4096B, (W) 4096B-4096B, (T) 4096B-4096B, ioengine=libaio, iodepth=64
    […]
       iops        : min=50879, max=61603, avg=56221.33, stdev=679.97, samples=360
    […]

    자체 비즈니스 요구 사항, 애플리케이션 워크로드 및 새로운 요구에 따라 로그 파일을 검토, 모니터링 및 다시 방문해야 합니다.

3장. Red Hat Ansible Automation Platform 설치

Ansible Automation Platform은 모듈식 플랫폼으로, 자동화 허브 및 이벤트 기반 Ansible 컨트롤러와 같은 다른 자동화 플랫폼 구성 요소를 사용하여 자동화 컨트롤러를 배포할 수 있습니다. Ansible Automation Platform에서 제공되는 구성 요소에 대한 자세한 내용은 Red Hat Ansible Automation Platform 계획 가이드의 Red Hat Ansible Automation Platform 구성 요소를 참조하십시오.

Red Hat Ansible Automation Platform에 지원되는 여러 설치 시나리오가 있습니다. Red Hat Ansible Automation Platform을 설치하려면 다음 예제 중 하나를 사용하여 설치 시나리오를 지정하도록 인벤토리 파일 매개변수를 편집해야 합니다.

3.1. Red Hat Ansible Automation Platform 설치 프로그램 인벤토리 파일 편집

Red Hat Ansible Automation Platform 설치 프로그램 인벤토리 파일을 사용하여 설치 시나리오를 지정할 수 있습니다.

절차

  1. 설치 프로그램으로 이동합니다.

    1. [RPM 설치 패키지]

      $ cd /opt/ansible-automation-platform/installer/
    2. [bundled installer]

      $ cd ansible-automation-platform-setup-bundle-<latest-version>
    3. [online installer]

      $ cd ansible-automation-platform-setup-<latest-version>
  2. 텍스트 편집기를 사용하여 인벤토리 파일을 엽니다.
  3. 인벤토리 파일 매개변수를 편집하여 설치 시나리오를 지정합니다. 지원되는 설치 시나리오 예제 중 하나를 사용하여 인벤토리 파일을 업데이트합니다.

추가 리소스

Ansible 설치 인벤토리 파일에 사용되는 사전 정의된 변수의 포괄적인 목록은 인벤토리 파일 변수를 참조하십시오.

3.1.1. 설치 시나리오에 따른 인벤토리 파일 예

Red Hat은 Ansible Automation Platform에 대한 여러 설치 시나리오를 지원합니다. 다음 예제를 검토하고 기본 설치 시나리오에 적합한 예제를 선택합니다.

중요
  • Red Hat Ansible Automation Platform 또는 자동화 허브의 경우: [automationhub] 그룹에 자동화 허브 호스트를 추가합니다.
  • 내부 데이터베이스: [database]는 Ansible Automation Platform 클러스터의 다른 호스트를 가리키는 데 사용할 수 없습니다. 설치 프로그램에서 설치하도록 데이터베이스 호스트를 고유한 호스트여야 합니다.
  • 프로덕션 또는 고객 환경에서 Ansible Automation Platform 버전에 대해 동일한 노드에 자동화 컨트롤러 및 자동화 허브를 설치하지 마십시오. 이로 인해 경합 문제 및 리소스 사용량이 많을 수 있습니다.
  • [automationhub] 및 [automationcontroller] 호스트에 연결할 수 있는 IP 주소 또는 정규화된 도메인 이름(FDQN)을 제공하여 사용자가 다른 노드의 자동화 허브에서 콘텐츠를 동기화하고 설치할 수 있도록 합니다. 'localhost'를 사용하지 마십시오.
  • pg_password 에 특수 문자를 사용하지 마십시오. 이로 인해 설정이 실패할 수 있습니다.
  • registry_usernameregistry_password 에 Red Hat Registry Service 계정 자격 증명을 입력하여 Red Hat 컨테이너 레지스트리에 연결합니다.
  • 인벤토리 파일 변수 registry_usernameregistry_password 는 번들 이외의 설치 프로그램을 사용하는 경우에만 필요합니다.

3.1.1.1. 내부 데이터베이스가 있는 독립형 자동화 컨트롤러

이 예제를 사용하여 Red Hat Ansible Automation Platform을 설치할 인벤토리 파일을 채웁니다. 이 설치 인벤토리 파일에는 내부 데이터베이스가 있는 단일 자동화 컨트롤러 노드가 포함됩니다.

[automationcontroller]
controller.example.com

[all:vars]
admin_password='<password>'
pg_host=''
pg_port='5432'
pg_database='awx'
pg_username='awx'
pg_password='<password>'
pg_sslmode='prefer'  # set to 'verify-full' for client-side enforced SSL

registry_url='registry.redhat.io'
registry_username='<registry username>'
registry_password='<registry password>'


# SSL-related variables
# If set, this will install a custom CA certificate to the system trust store.
# custom_ca_cert=/path/to/ca.crt
# Certificate and key to install in nginx for the web UI and API
# web_server_ssl_cert=/path/to/tower.cert
# web_server_ssl_key=/path/to/tower.key
# Server-side SSL settings for PostgreSQL (when we are installing it).
# postgres_use_ssl=False
# postgres_ssl_cert=/path/to/pgsql.crt
# postgres_ssl_key=/path/to/pgsql.key

3.1.1.2. 외부(installer 관리) 데이터베이스가 있는 단일 자동화 컨트롤러

이 예제를 사용하여 Red Hat Ansible Automation Platform을 설치할 인벤토리 파일을 채웁니다. 이 설치 인벤토리 파일에는 별도의 노드에 외부 데이터베이스가 있는 단일 자동화 컨트롤러 노드가 포함됩니다.

[automationcontroller]
controller.example.com

[database]
data.example.com

[all:vars]
admin_password='<password>'
pg_host='data.example.com'
pg_port='5432'
pg_database='awx'
pg_username='awx'
pg_password='<password>'
pg_sslmode='prefer'  # set to 'verify-full' for client-side enforced SSL

registry_url='registry.redhat.io'
registry_username='<registry username>'
registry_password='<registry password>'

# SSL-related variables
# If set, this will install a custom CA certificate to the system trust store.
# custom_ca_cert=/path/to/ca.crt
# Certificate and key to install in nginx for the web UI and API
# web_server_ssl_cert=/path/to/tower.cert
# web_server_ssl_key=/path/to/tower.key
# Server-side SSL settings for PostgreSQL (when we are installing it).
# postgres_use_ssl=False
# postgres_ssl_cert=/path/to/pgsql.crt
# postgres_ssl_key=/path/to/pgsql.key

3.1.1.3. 외부(고객 제공) 데이터베이스가 있는 단일 자동화 컨트롤러

이 예제를 사용하여 Red Hat Ansible Automation Platform을 설치할 인벤토리 파일을 채웁니다. 이 설치 인벤토리 파일에는 플랫폼 설치 프로그램에서 관리하지 않는 별도의 노드에 외부 데이터베이스가 있는 단일 자동화 컨트롤러 노드가 포함됩니다.

중요

이 예제에는 데이터베이스 그룹에 호스트가 없습니다. 이는 설치 관리자가 데이터베이스가 이미 존재하고 있으며 다른 위치에서 관리되고 있음을 나타냅니다.

[automationcontroller]
controller.example.com

[database]

[all:vars]
admin_password='<password>'

pg_host='data.example.com'
pg_port='5432'
pg_database='awx'
pg_username='awx'
pg_password='<password>'
pg_sslmode='prefer'  # set to 'verify-full' for client-side enforced SSL

registry_url='registry.redhat.io'
registry_username='<registry username>'
registry_password='<registry password>'


# SSL-related variables
# If set, this will install a custom CA certificate to the system trust store.
# custom_ca_cert=/path/to/ca.crt
# Certificate and key to install in nginx for the web UI and API
# web_server_ssl_cert=/path/to/tower.cert
# web_server_ssl_key=/path/to/tower.key
# Server-side SSL settings for PostgreSQL (when we are installing it).
# postgres_use_ssl=False
# postgres_ssl_cert=/path/to/pgsql.crt
# postgres_ssl_key=/path/to/pgsql.key

3.1.1.4. 외부(installer 관리) 데이터베이스가 있는 Ansible Automation Platform

이 예제를 사용하여 Ansible Automation Platform을 설치할 인벤토리 파일을 채웁니다. 이 설치 인벤토리 파일에는 두 개의 자동화 컨트롤러 노드, 두 개의 실행 노드, 외부 관리 데이터베이스가 있는 자동화 허브, 이벤트 기반 Ansible 컨트롤러가 포함되어 있습니다.

# Automation Controller Nodes
# There are two valid node_types that can be assigned for this group.
# A node_type=control implies that the node will only be able to run
# project and inventory updates, but not regular jobs.
# A node_type=hybrid will have the ability to run everything.
# If you do not define the node_type, it defaults to hybrid.
#
# control.example node_type=control
# hybrid.example  node_type=hybrid
# hybrid2.example <- this will default to hybrid

[automationcontroller]
controller1.example.com node_type=control
controller2.example.com node_type=control

# Execution Nodes
# There are two valid node_types that can be assigned for this group.
# A node_type=hop implies that the node will forward jobs to an execution node.
# A node_type=execution implies that the node will be able to run jobs.
# If you do not define the node_type, it defaults to execution.
#
# hop.example node_type=hop
# execution.example  node_type=execution
# execution2.example <- this will default to execution

[execution_nodes]
execution1.example.com node_type=execution
execution2.example.com node_type=execution

[automationhub]
automationhub.exaample.com
[automationedacontroller]
eda.example.com
[database]
data.example.com

[all:vars]
admin_password='<password>'
pg_host='data.example.com'
pg_port='5432'
pg_database='awx'
pg_username='awx'
pg_password='<password>'
pg_sslmode='prefer'  # set to 'verify-full' for client-side enforced SSL

registry_url='registry.redhat.io'
registry_username='<registry username>'
registry_password='<registry password>'

# Receptor Configuration
#
receptor_listener_port=27199

# Automation Hub Configuration
#
automationhub_admin_password='<password>'
automationhub_pg_host='data.example.com
automationhub_pg_port='5432'
automationhub_pg_database='automationhub'
automationhub_pg_username='automationhub'
automationhub_pg_password='<password>'
automationhub_pg_sslmode='prefer'

# The default install will deploy a TLS enabled Automation Hub.
# If for some reason this is not the behavior wanted one can
# disable TLS enabled deployment.
#
# automationhub_disable_https = False
# The default install will generate self-signed certificates for the Automation
# Hub service. If you are providing valid certificate via automationhub_ssl_cert
# and automationhub_ssl_key, one should toggle that value to True.
#
# automationhub_ssl_validate_certs = False
# SSL-related variables
# If set, this will install a custom CA certificate to the system trust store.
# custom_ca_cert=/path/to/ca.crt
# Certificate and key to install in nginx for the web UI and API
# web_server_ssl_cert=/path/to/tower.cert
# web_server_ssl_key=/path/to/tower.key
# Certificate and key to install in Automation Hub node
# automationhub_ssl_cert=/path/to/automationhub.cert
# automationhub_ssl_key=/path/to/automationhub.key
# Server-side SSL settings for PostgreSQL (when we are installing it).
# postgres_use_ssl=False
# postgres_ssl_cert=/path/to/pgsql.crt
# postgres_ssl_key=/path/to/pgsql.key

# Automation EDA Controller Configuration
#

automationedacontroller_admin_password='<eda-password>'

automationedacontroller_pg_host='data.example.com'
automationedacontroller_pg_port=5432

automationedacontroller_pg_database='automationedacontroller'
automationedacontroller_pg_username='automationedacontroller'
automationedacontroller_pg_password='<password>'

# The full routable URL used by EDA to connect to a controller host.
# This URL is required if there is no Automation Controller configured
# in inventory.
#
# automation_controller_main_url=''

# Boolean flag used to verify Automation Controller's
# web certificates when making calls from Automation EDA Controller.
#
# automationedacontroller_controller_verify_ssl = true

# SSL-related variables

# If set, this will install a custom CA certificate to the system trust store.
# custom_ca_cert=/path/to/ca.crt

# Certificate and key to install in nginx for the web UI and API
# web_server_ssl_cert=/path/to/tower.cert
# web_server_ssl_key=/path/to/tower.key

# Certificate and key to install in Automation Hub node
# automationhub_ssl_cert=/path/to/automationhub.cert
# automationhub_ssl_key=/path/to/automationhub.key

# Server-side SSL settings for PostgreSQL (when we are installing it).
# postgres_use_ssl=False
# postgres_ssl_cert=/path/to/pgsql.crt
# postgres_ssl_key=/path/to/pgsql.key

# Keystore file to install in SSO node
# sso_custom_keystore_file='/path/to/sso.jks'

# The default install will deploy SSO with sso_use_https=True
# Keystore password is required for https enabled SSO
sso_keystore_password=''

3.1.1.5. 외부(고객 제공) 데이터베이스가 있는 Ansible Automation Platform

이 예제를 사용하여 Red Hat Ansible Automation Platform을 설치할 인벤토리 파일을 채웁니다. 이 설치 인벤토리 파일에는 플랫폼 설치 프로그램에서 관리하지 않는 외부 관리 데이터베이스와 이벤트 기반 Ansible 컨트롤러(컨트롤, 하이브리드, 홉 및 실행) 중 하나가 포함되어 있습니다.

중요

이 예제에는 데이터베이스 그룹에 호스트가 없습니다. 이는 설치 관리자가 데이터베이스가 이미 존재하고 있으며 다른 위치에서 관리되고 있음을 나타냅니다.

# Automation Controller Nodes
# There are two valid node_types that can be assigned for this group.
# A node_type=control implies that the node will only be able to run
# project and inventory updates, but not regular jobs.
# A node_type=hybrid will have the ability to run everything.
# If you do not define the node_type, it defaults to hybrid.
#
# control.example node_type=control
# hybrid.example  node_type=hybrid
# hybrid2.example <- this will default to hybrid

[automationcontroller]
hybrid1.example.com node_type=hybrid
controller1.example.com node_type=control

# Execution Nodes
# There are two valid node_types that can be assigned for this group.
# A node_type=hop implies that the node will forward jobs to an execution node.
# A node_type=execution implies that the node will be able to run jobs.
# If you do not define the node_type, it defaults to execution.
#
# hop.example node_type=hop
# execution.example  node_type=execution
# execution2.example <- this will default to execution

[execution_nodes]
hop1.example.com node_type=hop
execution1.example.com node_type=execution

[automationhub]
automationhub.example.com
[automationedacontroller]
eda.example.com
[database]

[all:vars]
admin_password='<password>'
pg_host='data.example.com'
pg_port='5432'
pg_database='awx'
pg_username='awx'
pg_password='<password>'
pg_sslmode='prefer'  # set to 'verify-full' for client-side enforced SSL

registry_url='registry.redhat.io'
registry_username='<registry username>'
registry_password='<registry password>'

# Receptor Configuration
#
receptor_listener_port=27199

# Automation Hub Configuration
#
automationhub_admin_password='<password>'
automationhub_pg_host='data.example.com'
automationhub_pg_port='5432'
automationhub_pg_database='automationhub'
automationhub_pg_username='automationhub'
automationhub_pg_password='<password>'
automationhub_pg_sslmode='prefer'

# The default install will deploy a TLS enabled Automation Hub.
# If for some reason this is not the behavior wanted one can
# disable TLS enabled deployment.
#
# automationhub_disable_https = False
# The default install will generate self-signed certificates for the Automation
# Hub service. If you are providing valid certificate via automationhub_ssl_cert
# and automationhub_ssl_key, one should toggle that value to True.
#
# automationhub_ssl_validate_certs = False
# SSL-related variables
# If set, this will install a custom CA certificate to the system trust store.
# custom_ca_cert=/path/to/ca.crt
# Certificate and key to install in nginx for the web UI and API
# web_server_ssl_cert=/path/to/tower.cert
# web_server_ssl_key=/path/to/tower.key
# Certificate and key to install in Automation Hub node
# automationhub_ssl_cert=/path/to/automationhub.cert
# automationhub_ssl_key=/path/to/automationhub.key
# Server-side SSL settings for PostgreSQL (when we are installing it).
# postgres_use_ssl=False
# postgres_ssl_cert=/path/to/pgsql.crt
# postgres_ssl_key=/path/to/pgsql.key

# Automation EDA Controller Configuration
#

automationedacontroller_admin_password='<eda-password>'

automationedacontroller_pg_host='data.example.com'
automationedacontroller_pg_port=5432

automationedacontroller_pg_database='automationedacontroller'
automationedacontroller_pg_username='automationedacontroller'
automationedacontroller_pg_password='<password>'

# The full routable URL used by EDA to connect to a controller host.
# This URL is required if there is no Automation Controller configured
# in inventory.
#
# automation_controller_main_url=''

# Boolean flag used to verify Automation Controller's
# web certificates when making calls from Automation EDA Controller.
#
# automationedacontroller_controller_verify_ssl = true

# SSL-related variables

# If set, this installs a custom CA certificate to the system trust store.
# custom_ca_cert=/path/to/ca.crt

# Certificate and key to install in nginx for the web UI and API
# web_server_ssl_cert=/path/to/tower.cert
# web_server_ssl_key=/path/to/tower.key

# Certificate and key to install in Automation Hub node
# automationhub_ssl_cert=/path/to/automationhub.cert
# automationhub_ssl_key=/path/to/automationhub.key

# Server-side SSL settings for PostgreSQL (when we are installing it).
# postgres_use_ssl=False
# postgres_ssl_cert=/path/to/pgsql.crt
# postgres_ssl_key=/path/to/pgsql.key

# Keystore file to install in SSO node
# sso_custom_keystore_file='/path/to/sso.jks'

# The default install will deploy SSO with sso_use_https=True
# Keystore password is required for https enabled SSO
sso_keystore_password=''

3.1.1.6. 내부 데이터베이스가 있는 단일 이벤트 기반 Ansible 컨트롤러 노드

이 예제를 사용하여 이벤트 기반 Ansible 컨트롤러를 설치하기 위해 인벤토리 파일을 채웁니다. 이 설치 인벤토리 파일에는 내부 데이터베이스가 있는 단일 이벤트 기반 Ansible 컨트롤러 노드가 포함되어 있습니다.

중요

자동화 컨트롤러는 인벤토리 파일을 다음 Event-Driven Ansible 변수로 채우기 전에 설치해야 합니다.

# Automation EDA Controller Configuration
#

automationedacontroller_admin_password='<eda-password>'

automationedacontroller_pg_host=''
automationedacontroller_pg_port=5432

automationedacontroller_pg_database='automationedacontroller'
automationedacontroller_pg_username='automationedacontroller'
automationedacontroller_pg_password='<password>'

# The full routable URL used by EDA to connect to a controller host.
# This URL is required if there is no Automation Controller configured
# in inventory.
#
automation_controller_main_url = 'https://controller.example.com/'

# Boolean flag used to verify Automation Controller's
# web certificates when making calls from Automation EDA Controller.
#
automationedacontroller_controller_verify_ssl = true

추가 리소스

3.1.1.7. 내부 데이터베이스가 있는 독립형 자동화 허브

이 예제를 사용하여 인벤토리 파일을 채우고 자동화 허브의 독립 실행형 인스턴스를 내부 데이터베이스로 배포합니다.

[automationcontroller]


[automationhub]
automationhub.example.com ansible_connection=local

[all:vars]
registry_url='registry.redhat.io'
registry_username='<registry username>'
registry_password='<registry password>'

automationhub_admin_password= <PASSWORD>

automationhub_pg_host=''
automationhub_pg_port='5432'

automationhub_pg_database='automationhub'
automationhub_pg_username='automationhub'
automationhub_pg_password=<PASSWORD>
automationhub_pg_sslmode='prefer'

# The default install will deploy a TLS enabled Automation Hub.
# If for some reason this is not the behavior wanted one can
# disable TLS enabled deployment.
#
# automationhub_disable_https = False
# The default install will generate self-signed certificates for the Automation
# Hub service. If you are providing valid certificate via automationhub_ssl_cert
# and automationhub_ssl_key, one should toggle that value to True.
#
# automationhub_ssl_validate_certs = False
# SSL-related variables
# If set, this will install a custom CA certificate to the system trust store.
# custom_ca_cert=/path/to/ca.crt
# Certificate and key to install in Automation Hub node
# automationhub_ssl_cert=/path/to/automationhub.cert
# automationhub_ssl_key=/path/to/automationhub.key

3.1.1.8. 외부(installer 관리) 데이터베이스가 있는 단일 자동화 허브

이 예제를 사용하여 자동화 허브의 단일 인스턴스를 외부(installer 관리) 데이터베이스로 배포하도록 인벤토리 파일을 채웁니다.

[automationcontroller]

[automationhub]
automationhub.example.com

[database]
data.example.com

[all:vars]
registry_url='registry.redhat.io'
registry_username='<registry username>'
registry_password='<registry password>'

automationhub_admin_password= <PASSWORD>

automationhub_pg_host='data.example.com'
automationhub_pg_port='5432'

automationhub_pg_database='automationhub'
automationhub_pg_username='automationhub'
automationhub_pg_password=<PASSWORD>
automationhub_pg_sslmode='prefer'

# The default install will deploy a TLS enabled Automation Hub.
# If for some reason this is not the behavior wanted one can
# disable TLS enabled deployment.
#
# automationhub_disable_https = False
# The default install will generate self-signed certificates for the Automation
# Hub service. If you are providing valid certificate via automationhub_ssl_cert
# and automationhub_ssl_key, one should toggle that value to True.
#
# automationhub_ssl_validate_certs = False
# SSL-related variables
# If set, this will install a custom CA certificate to the system trust store.
# custom_ca_cert=/path/to/ca.crt
# Certificate and key to install in Automation Hub node
# automationhub_ssl_cert=/path/to/automationhub.cert
# automationhub_ssl_key=/path/to/automationhub.key

3.1.1.9. 외부(고객 제공) 데이터베이스가 있는 단일 자동화 허브

이 예제를 사용하여 자동화 허브의 단일 인스턴스를 플랫폼 설치 프로그램에서 관리하지 않는 외부 데이터베이스에 배포하도록 인벤토리 파일을 채웁니다.

중요

이 예제에는 데이터베이스 그룹에 호스트가 없습니다. 이는 설치 관리자가 데이터베이스가 이미 존재하고 있으며 다른 위치에서 관리되고 있음을 나타냅니다.

[automationcontroller]

[automationhub]
automationhub.example.com

[database]

[all:vars]
registry_url='registry.redhat.io'
registry_username='<registry username>'
registry_password='<registry password>'

automationhub_admin_password= <PASSWORD>

automationhub_pg_host='data.example.com'
automationhub_pg_port='5432'

automationhub_pg_database='automationhub'
automationhub_pg_username='automationhub'
automationhub_pg_password=<PASSWORD>
automationhub_pg_sslmode='prefer'

# The default install will deploy a TLS enabled Automation Hub.
# If for some reason this is not the behavior wanted one can
# disable TLS enabled deployment.
#
# automationhub_disable_https = False
# The default install will generate self-signed certificates for the Automation
# Hub service. If you are providing valid certificate via automationhub_ssl_cert
# and automationhub_ssl_key, one should toggle that value to True.
#
# automationhub_ssl_validate_certs = False
# SSL-related variables
# If set, this will install a custom CA certificate to the system trust store.
# custom_ca_cert=/path/to/ca.crt
# Certificate and key to install in Automation Hub node
# automationhub_ssl_cert=/path/to/automationhub.cert
# automationhub_ssl_key=/path/to/automationhub.key

3.1.1.10. 프라이빗 자동화 허브에서 LDAP 구성

LDAP 인증에 대한 프라이빗 자동화 허브를 구성하려면 Red Hat Ansible Automation Platform 설치 프로그램 인벤토리 파일에서 다음 6개의 변수를 설정해야 합니다.

  • automationhub_authentication_backend
  • automationhub_ldap_server_uri
  • automationhub_ldap_bind_dn
  • automationhub_ldap_bind_password
  • automationhub_ldap_user_search_base_dn
  • automationhub_ldap_group_search_base_dn

이러한 변수 중 하나라도 누락된 경우 Ansible Automation 설치 프로그램에서 설치를 완료하지 않습니다.

3.1.1.10.1. 인벤토리 파일 변수 설정

LDAP 인증을 사용하여 프라이빗 자동화 허브를 구성할 때 설치 프로세스 중에 인벤토리 파일에 적절한 변수를 설정해야 합니다.

절차

  1. Red Hat Ansible Automation Platform 설치 프로그램 인벤토리 파일 편집 절차에 따라 인벤토리 파일에 액세스합니다.
  2. 다음 예제를 가이드로 사용하여 Ansible Automation Platform 인벤토리 파일을 설정합니다.

    automationhub_authentication_backend = "ldap"
    
    automationhub_ldap_server_uri = "ldap://ldap:389"   (for LDAPs use  automationhub_ldap_server_uri = "ldaps://ldap-server-fqdn")
    automationhub_ldap_bind_dn = "cn=admin,dc=ansible,dc=com"
    automationhub_ldap_bind_password = "GoodNewsEveryone"
    automationhub_ldap_user_search_base_dn = "ou=people,dc=ansible,dc=com"
    automationhub_ldap_group_search_base_dn = "ou=people,dc=ansible,dc=com"

    다른 옵션으로 설정하지 않는 한 다음 변수는 기본값으로 설정됩니다.

    auth_ldap_user_search_scope= `SUBTREE'
    auth_ldap_user_search_filter= `(uid=%(user)s)`
    auth_ldap_group_search_scope= 'SUBTREE'
    auth_ldap_group_search_filter= '(objectClass=Group)`
    auth_ldap_group_type_class= 'django_auth_ldap.config:GroupOfNamesType'
  3. 프라이빗 자동화 허브(예: 사용자 그룹, 슈퍼 사용자 액세스, 미러링 등)에서 추가 매개변수를 설정하려는 경우 다음 섹션을 진행합니다.
3.1.1.10.2. 추가 LDAP 매개변수 구성

슈퍼 사용자 액세스, 사용자 그룹, 미러링 또는 기타 추가 매개변수를 설정하려는 경우 ldap_extra_settings 사전에 구성하는 YAML 파일을 생성할 수 있습니다.

절차

  1. 다음과 같이 ldap_extra_settings 를 포함할 YAML 파일을 생성합니다.

    #ldapextras.yml
    ---
    ldap_extra_settings:
      AUTH_LDAP_USER_ATTR_MAP: '{"first_name": "givenName", "last_name": "sn", "email": "mail"}'
    ...

    그런 다음 프라이빗 자동화 허브를 설치하는 동안 setup.sh -e @ldapextras.yml 을 실행합니다.

  2. 이 예제를 사용하여 LDAP 그룹의 멤버십에 따라 슈퍼유저 플래그를 설정합니다.

    #ldapextras.yml
    ---
    ldap_extra_settings:
      AUTH_LDAP_USER_FLAGS_BY_GROUP: {"is_superuser": "cn=pah-admins,ou=groups,dc=example,dc=com",}
    ...

    그런 다음 프라이빗 자동화 허브를 설치하는 동안 setup.sh -e @ldapextras.yml 을 실행합니다.

  3. 이 예제를 사용하여 슈퍼유저 액세스를 설정합니다.

    #ldapextras.yml
    ---
    ldap_extra_settings:
      AUTH_LDAP_USER_FLAGS_BY_GROUP: {"is_superuser": "cn=pah-admins,ou=groups,dc=example,dc=com",}
    ...

    그런 다음 프라이빗 자동화 허브를 설치하는 동안 setup.sh -e @ldapextras.yml 을 실행합니다.

  4. 이 예제를 사용하여 사용자가 속한 모든 LDAP 그룹을 미러링합니다.

    #ldapextras.yml
    ---
    ldap_extra_settings:
      AUTH_LDAP_MIRROR_GROUPS: True
    ...

    그런 다음 프라이빗 자동화 허브를 설치하는 동안 setup.sh -e @ldapextras.yml 을 실행합니다.

  5. 이 예제를 사용하여 LDAP 사용자 속성(예: 사용자의 이름, 성, 이메일 주소)을 매핑합니다.

    #ldapextras.yml
    ---
    ldap_extra_settings:
      AUTH_LDAP_USER_ATTR_MAP: {"first_name": "givenName", "last_name": "sn", "email": "mail",}
    ...

    그런 다음 프라이빗 자동화 허브를 설치하는 동안 setup.sh -e @ldapextras.yml 을 실행합니다.

  6. 다음 예제를 사용하여 LDAP 그룹 멤버십에 따라 액세스 권한을 부여하거나 거부합니다.

    1. 프라이빗 자동화 허브 액세스 권한을 부여하려면(예: cn=pah-nosoupforyou,ou=groups,dc=example,dc=com 그룹)

      #ldapextras.yml
      ---
      ldap_extra_settings:
        AUTH_LDAP_DENY_GROUP: 'cn=pah-nosoupforyou,ou=groups,dc=example,dc=com'
      ...
    2. 프라이빗 자동화 허브 액세스를 거부하려면 (예: cn=pah-nosoupforyou,ou=groups,dc=example,dc=com 그룹)의 멤버:

      #ldapextras.yml
      ---
      ldap_extra_settings:
        AUTH_LDAP_DENY_GROUP: 'cn=pah-nosoupforyou,ou=groups,dc=example,dc=com'
      ...

      그런 다음 프라이빗 자동화 허브를 설치하는 동안 setup.sh -e @ldapextras.yml 을 실행합니다.

  7. LDAP 디버그 로깅을 활성화하려면 이 예제를 사용합니다.

    #ldapextras.yml
    ---
    ldap_extra_settings:
      GALAXY_LDAP_LOGGING: True
    ...

    그런 다음 프라이빗 자동화 허브를 설치하는 동안 setup.sh -e @ldapextras.yml 을 실행합니다.

    참고

    setup.sh 를 다시 실행하는 것이 바람직하지 않거나 디버그 로깅이 짧은 시간 동안 활성화된 경우 프라이빗 자동화 허브의 /etc/pulp/settings.py 파일에 GALAXY_LDAP_LOGGING: True 를 포함하는 행을 수동으로 추가할 수 있습니다. 변경 사항을 적용하려면 pulpcore-api.servicenginx.service 를 모두 다시 시작합니다. 인적 오류로 인한 실패를 방지하려면 필요한 경우에만 이 방법을 사용하십시오.

  8. AUTH_LDAP_CACHE_TIMEOUT 변수를 설정하여 LDAP 캐싱을 구성하려면 이 예제를 사용합니다.

    #ldapextras.yml
    ---
    ldap_extra_settings:
      AUTH_LDAP_CACHE_TIMEOUT: 3600
    ...

    그런 다음 프라이빗 자동화 허브를 설치하는 동안 setup.sh -e @ldapextras.yml 을 실행합니다.

개인 자동화 허브의 /etc/pulp/settings.py 파일에서 모든 설정을 볼 수 있습니다.

3.2. Red Hat Ansible Automation Platform 설치 프로그램 설정 스크립트 실행

개인 자동화 허브 설치에 필요한 매개 변수로 인벤토리 파일을 업데이트한 후 설치 프로그램 설정 스크립트를 실행합니다.

절차

  • setup.sh 스크립트 실행

    $ sudo ./setup.sh

Red Hat Ansible Automation Platform 설치가 시작됩니다.

3.3. 자동화 컨트롤러 설치 확인

인벤토리 파일에 삽입한 관리자 인증 정보로 로그인하여 자동화 컨트롤러를 성공적으로 설치했는지 확인합니다.

절차

  1. 인벤토리 파일에서 자동화 컨트롤러 노드에 지정된 IP 주소로 이동합니다.
  2. 인벤토리 파일에서 설정한 Admin 자격 증명으로 로그인합니다.
참고

자동화 컨트롤러 서버는 포트 80(https://<CONTROLLER_SERVER_NAME>/)에서 액세스할 수 있지만 포트 443으로 리디렉션되므로 포트 443도 사용할 수 있어야 합니다.

중요

설치에 실패하고 Red Hat Ansible Automation Platform에 대한 유효한 라이센스를 구매한 고객인 경우 Red Hat 고객 포털 을 통해 Ansible에 문의하십시오.

자동화 컨트롤러에 성공적으로 로그인하면 Red Hat Ansible Automation Platform 2.4 설치가 완료됩니다.

3.3.1. 추가 자동화 컨트롤러 구성 및 리소스

추가 자동화 컨트롤러 구성을 보려면 다음 리소스를 참조하십시오.

표 3.1. 자동화 컨트롤러를 구성하는 리소스

리소스 링크설명

자동화 컨트롤러 빠른 설정 가이드

자동화 컨트롤러를 설정하고 첫 번째 플레이북을 실행합니다.

자동화 컨트롤러 관리 가이드

고객 스크립트, 관리 작업 등을 통해 자동화 컨트롤러 관리를 구성합니다.

Red Hat Ansible Automation Platform의 프록시 지원 구성

프록시 서버를 사용하여 자동화 컨트롤러 설정

자동화 컨트롤러에서 사용성 분석 및 데이터 수집 관리

Red Hat과 공유하는 자동화 컨트롤러 정보 관리

자동화 컨트롤러 사용자 가이드

자동화 컨트롤러 기능을 자세히 검토합니다.

3.4. 자동화 허브 설치 확인

인벤토리 파일에 삽입한 admin 자격 증명으로 로그인하여 자동화 허브를 성공적으로 설치했는지 확인합니다.

절차

  1. 인벤토리 파일에서 자동화 허브 노드에 지정된 IP 주소로 이동합니다.
  2. 인벤토리 파일에서 설정한 Admin 자격 증명으로 로그인합니다.
중요

설치에 실패하고 Red Hat Ansible Automation Platform에 대한 유효한 라이센스를 구매한 고객인 경우 Red Hat 고객 포털 을 통해 Ansible에 문의하십시오.

자동화 허브에 성공적으로 로그인하면 Red Hat Ansible Automation Platform 2.4 설치가 완료됩니다.

3.4.1. 추가 자동화 허브 구성 및 리소스

추가 자동화 허브 구성을 보려면 다음 리소스를 참조하십시오.

표 3.2. 자동화 컨트롤러를 구성하는 리소스

리소스 링크설명

프라이빗 자동화 허브에서 사용자 액세스 관리

자동화 허브를 위한 사용자 액세스 구성

자동화 허브에서 Red Hat Certified, validated, Ansible Galaxy 콘텐츠 관리

자동화 허브에 콘텐츠 추가

자동화 허브에서 독점 콘텐츠 컬렉션 게시

자동화 허브에 내부적으로 개발한 컬렉션 게시

3.5. 이벤트 기반 Ansible 컨트롤러 설치 확인

인벤토리 파일에 삽입한 관리자 인증 정보로 로그인하여 Event-Driven Ansible 컨트롤러를 성공적으로 설치했는지 확인합니다.

절차

  1. 인벤토리 파일의 이벤트 기반 Ansible 컨트롤러 노드에 지정된 IP 주소로 이동합니다.
  2. 인벤토리 파일에서 설정한 Admin 자격 증명으로 로그인합니다.
중요

설치에 실패하고 Red Hat Ansible Automation Platform에 대한 유효한 라이센스를 구매한 고객인 경우 Red Hat 고객 포털 을 통해 Ansible에 문의하십시오.

이벤트 기반 Ansible 컨트롤러에 성공적으로 로그인하면 Red Hat Ansible Automation Platform 2.4 설치가 완료됩니다.

3.6. 설치 후 단계

자동화를 시작하려는 새로운 Ansible Automation Platform 사용자 또는 이전 Ansible 콘텐츠를 설치된 최신 Red Hat Ansible Automation Platform 버전으로 마이그레이션하려는 기존 관리자이든 Ansible Automation Platform 2.4의 새로운 기능을 활용하는 다음 단계를 살펴보십시오.

3.6.1. Ansible Automation Platform 2.4로 데이터 마이그레이션

Ansible Automation Platform 2.4로 업그레이드를 완료하려는 플랫폼 관리자의 경우 데이터를 새 인스턴스로 마이그레이션하는 데 추가 단계가 필요할 수 있습니다.

3.6.1.1. 레거시 가상 환경(venvs)에서 자동화 실행 환경으로 마이그레이션

Ansible Automation Platform 2.4는 Ansible 자동화를 실행하고 확장하는 데 필요한 구성 요소를 패키징하는 컨테이너화된 이미지 자동화 실행 환경을 사용하므로 사용자 정의 Python 가상 환경(venvs)에서 멀리 이동합니다. 여기에는 Ansible Core, Ansible Content Collections, Python 종속 항목, Red Hat Enterprise Linux UBI 8 및 추가 패키지 종속성이 포함됩니다.

venvs를 실행 환경으로 마이그레이션하려는 경우 (1)는 awx-manage 명령을 사용하여 원래 인스턴스에서 venvs 목록을 나열하고 내보내야 합니다. (2) ansible-builder 를 사용하여 실행 환경을 생성합니다.

3.6.1.2. Ansible Builder를 사용하여 Ansible Engine 2.9 이미지로 마이그레이션

Ansible Automation Platform 2.4에서 사용할 Ansible Engine 2.9 이미지를 마이그레이션하기 위해 ansible-builder 툴은 자동화 실행 환경에서 사용할 이미지(사용자 정의 플러그인 및 종속 항목 포함)를 다시 빌드하는 프로세스를 자동화합니다.

추가 리소스

Ansible Builder를 사용하여 실행 환경을 빌드하는 방법에 대한 자세한 내용은 실행 환경 생성 및 사용을 참조하십시오.

3.6.1.3. Ansible Core 2.13으로 마이그레이션

Ansible Core 2.13으로 업그레이드할 때 최신 버전의 Ansible Core에서 지원하려면 Ansible 인프라의 플레이북, 플러그인 또는 기타 부분을 업데이트해야 합니다. Ansible Core 2.13 호환성에 대한 Ansible 콘텐츠 업데이트에 대한 자세한 내용은 Ansible-core 2.13 포트 지정 가이드를 참조하십시오.

3.6.2. 실행 환경 이미지 위치 업데이트

프라이빗 자동화 허브를 별도로 설치한 경우 프라이빗 자동화 허브를 가리키도록 실행 환경 이미지 위치를 업데이트할 수 있습니다. 실행 환경 이미지 위치를 업데이트하려면 다음 절차를 사용하십시오.

절차

  1. setup.sh가 포함된 디렉터리로 이동합니다.
  2. 다음 명령을 실행하여 ./group_vars/automationcontroller 를 만듭니다.

    touch ./group_vars/automationcontroller
  3. 다음 내용을 ./group_vars/automationcontroller 에 붙여넣고 환경에 맞게 설정을 조정합니다.

    # Automation Hub Registry
    registry_username: 'your-automation-hub-user'
    registry_password: 'your-automation-hub-password'
    registry_url: 'automationhub.example.org'
    registry_verify_ssl: False
    
    ## Execution Environments
    control_plane_execution_environment: 'automationhub.example.org/ee-supported-rhel8:latest'
    
    global_job_execution_environments:
      - name: "Default execution environment"
        image: "automationhub.example.org/ee-supported-rhel8:latest"
      - name: "Ansible Engine 2.9 execution environment"
        image: "automationhub.example.org/ee-29-rhel8:latest"
      - name: "Minimal execution environment"
        image: "automationhub.example.org/ee-minimal-rhel8:latest"
  4. ./setup.sh 스크립트를 실행합니다.

    $ ./setup.sh

검증

  1. 시스템 관리자 액세스 권한이 있는 사용자로 Ansible Automation Platform에 로그인합니다.
  2. 관리실행 환경으로 이동합니다.
  3. 이미지 열에서 실행 환경 이미지 위치가 < registry url>/ansible-automation-platform-<version>/<image name>:<tag>에서 < automation hub url>:<tag >:<tag > 의 기본값에서 변경되었는지 확인합니다.

3.6.3. 자동화 메시를 사용하여 자동화 확장

Red Hat Ansible Automation Platform의 자동화 메시 구성 요소는 다중 사이트 배포에 자동화를 배포하는 프로세스를 단순화합니다. 여러 격리된 IT 환경을 보유한 엔터프라이즈의 경우 자동화 메시는 피어 투 피어 메시 통신 네트워크를 사용하여 실행 노드 전반에서 자동화를 일관되고 안정적으로 배포하고 확장할 수 있는 방법을 제공합니다.

버전 1.x에서 최신 버전의 Ansible Automation Platform으로 업그레이드할 때 기존 격리된 노드에서 자동화 메시에 필요한 실행 노드로 데이터를 마이그레이션해야 합니다. 하이브리드 및 제어 노드 네트워크를 계획한 다음 Ansible Automation Platform 설치 프로그램에 있는 인벤토리 파일을 편집하여 각 실행 노드에 메시 관련 값을 할당하는 방식으로 자동화 메시를 구현할 수 있습니다.

격리된 노드에서 실행 노드로 마이그레이션하는 방법에 대한 자세한 내용은 Red Hat Ansible Automation Platform 업그레이드 및 마이그레이션 가이드를 참조하십시오.

자동화 메시 및 환경에 대한 자동화 메시를 설계하는 다양한 방법에 대한 자세한 내용은 Red Hat Ansible Automation Platform 자동화 메시 가이드를 참조하십시오.

4장. 연결이 해제된 설치

4.1. 연결이 끊긴 RHEL에 Ansible Automation Platform 설치

인터넷 연결 없이 자동화 컨트롤러에 설치 관리자 관리 데이터베이스를 사용하여 AAP(Ansible Automation Platform) 자동화 컨트롤러 및 프라이빗 자동화 허브를 설치합니다.

4.1.1. 사전 요구 사항

연결이 끊긴 네트워크에 AAP를 설치하려면 다음 사전 요구 사항을 완료하십시오.

  1. 서브스크립션 매니페스트를 생성합니다.
  2. AAP 설정 번들을 다운로드합니다.
  3. 자동화 컨트롤러 및 프라이빗 자동화 허브 서버에 대한 DNS 레코드를 만듭니다.
참고

설정 번들에는 연결이 끊긴 환경에서 AAP를 더 쉽게 설치할 수 있는 추가 구성 요소가 포함되어 있습니다. 여기에는 AAP RPM 및 기본 실행 환경(EE) 이미지가 포함됩니다.

4.1.2. 시스템 요구 사항

하드웨어 요구 사항은 Automation Platform 설치 가이드에 설명되어 있습니다. AAP 버전에 대한 AAP 제품 설명서 의 "Red Hat Ansible Automation Platform 설치 가이드"를 참조하십시오.

4.1.3. RPM Source

BaseOS 및 AppStream 리포지토리에서 제공하는 AAP의 RPM 종속 항목은 설치 번들에 포함되어 있지 않습니다. 이러한 종속성을 추가하려면 BaseOS 및 AppStream 리포지토리에 대한 액세스 권한을 받아야 합니다.

  • Red Hat에서 리포지토리를 동기화하기 위해 Satellite 를 사용하는 것이 좋습니다.
  • reposync - 필요한 RPM 리포지토리의 전체 사본을 만들고 연결이 끊긴 네트워크에서 호스팅합니다.
  • RHEL Binary DVD - RHEL 8 Binary DVD에서 사용할 수 있는 RPM 사용
참고

RHEL Binary DVD 방법에는 버전 8.6 이상을 포함하여 지원되는 RHEL 버전에 대한 DVD가 필요합니다. 현재 지원되는 RHEL 버전에 대한 자세한 내용은 Red Hat Enterprise Linux 라이프 사이클을 참조하십시오.

4.2. 리포지토리 동기화를 사용하여 RPM 리포지토리 동기화

리포지토리 동기화를 수행하려면 인터넷에 액세스할 수 있는 RHEL 호스트가 필요합니다. 리포지토리를 동기화한 후 리포지토리를 웹 서버에서 호스팅되는 연결이 끊긴 네트워크로 이동할 수 있습니다.

절차

  1. BaseOS 및 AppStream 필수 리포지토리를 연결합니다.

    # subscription-manager repos \
        --enable rhel-8-for-x86_64-baseos-rpms \
        --enable rhel-8-for-x86_64-appstream-rpms
  2. reposync를 수행합니다.

    # dnf install yum-utils
    # reposync -m --download-metadata --gpgcheck \
        -p /path/to/download
    1. --download-metadata 와 함께 reposync를 사용하고 --newest-only 없이 reposync를 사용하는지 확인합니다. [RHEL 8] Reposync를 참조하십시오.
    2. --newest-only 리포지토리를 사용하지 않는 경우 다운로드한 리포지토리는 ~90GB입니다.
    3. --newest-only 를 사용하는 경우 다운로드한 리포지토리는 ~14GB입니다.
  3. Red Hat Single Sign-On(RHSSO)을 사용하려면 이러한 리포지토리를 동기화합니다.

    1. jb-eap-7.3-for-rhel-8-x86_64-rpms
    2. rh-sso-7.4-for-rhel-8-x86_64-rpms

    reposync가 완료되면 리포지토리를 웹 서버와 함께 사용할 수 있습니다.

  4. 리포지토리를 연결이 끊긴 네트워크로 이동합니다.

4.3. 리포지토리를 호스팅할 새 웹 서버 생성

리포지토리를 호스팅할 기존 웹 서버가 없는 경우 동기화된 리포지토리를 사용하여 생성합니다.

절차

새 웹 서버를 생성하는 경우 다음 단계를 사용합니다.

  1. 사전 요구 사항 설치:

    $ sudo dnf install httpd
  2. 리포지토리 디렉터리를 제공하도록 httpd를 구성합니다.

    /etc/httpd/conf.d/repository.conf
    
    DocumentRoot '/path/to/repos'
    
    <LocationMatch "^/+$">
        Options -Indexes
        ErrorDocument 403 /.noindex.html
    </LocationMatch>
    
    <Directory '/path/to/repos'>
        Options All Indexes FollowSymLinks
        AllowOverride None
        Require all granted
    </Directory>
  3. apache 사용자가 디렉터리를 읽을 수 있는지 확인합니다.

    $ sudo chown -R apache /path/to/repos
  4. SELinux를 구성합니다.

    $ sudo semanage fcontext -a -t httpd_sys_content_t "/path/to/repos(/.*)?"
    $ sudo restorecon -ir /path/to/repos
  5. httpd를 활성화합니다.

    $ sudo systemctl enable --now httpd.service
  6. 방화벽을 엽니다.

    $ sudo firewall-cmd --zone=public --add-service=http –add-service=https
    --permanent
    $ sudo firewall-cmd --reload
  7. 자동화 컨트롤러 및 자동화 허브에서 리포지토리 파일을 /etc/yum.repos.d/local.repo 에 추가하고 필요한 경우 선택적 리포지토리를 추가합니다.

    [Local-BaseOS]
    name=Local BaseOS
    baseurl=http://<webserver_fqdn>/rhel-8-for-x86_64-baseos-rpms
    enabled=1
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
    
    [Local-AppStream]
    name=Local AppStream
    baseurl=http://<webserver_fqdn>/rhel-8-for-x86_64-appstream-rpms
    enabled=1
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

4.4. 로컬로 마운트된 DVD의 RPM 리포지토리에 액세스

DVD에서 리포지토리에 액세스하려는 경우 로컬 리포지토리를 설정해야 합니다. 이 섹션에서는 이 작업을 수행하는 방법을 설명합니다.

절차

  1. DVD 또는 ISO 마운트

    1. DVD

      # mkdir /media/rheldvd && mount /dev/sr0 /media/rheldvd
    2. ISO

      # mkdir /media/rheldvd && mount -o loop rhrhel-8.6-x86_64-dvd.iso /media/rheldvd
  2. /etc/yum.repos.d/ECDHE.repo에 yum repo 파일을 만듭니다.

    [dvd-BaseOS]
    name=DVD for RHEL - BaseOS
    baseurl=file:///media/rheldvd/BaseOS
    enabled=1
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
    
    [dvd-AppStream]
    name=DVD for RHEL - AppStream
    baseurl=file:///media/rheldvd/AppStream
    enabled=1
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
  3. gpg 키 가져오기

    # rpm --import /media/rheldvd/RPM-GPG-KEY-redhat-release
참고

키를 가져오지 않으면 다음과 유사한 오류가 표시됩니다.

# Curl error (6): Couldn't resolve host name for
https://www.redhat.com/security/data/fd431d51.txt [Could not resolve host:
www.redhat.com]

리포지토리를 설정하려면 Red Hat Enterprise Linux 8에서 로컬로 마운트된 DVD에 대해 yum 리포지토리를 설정해야 합니다.

4.5. 인터넷 연결없이 AAP에 서브스크립션 매니페스트 추가

인터넷 연결 없이 AAP 서브스크립션을 추가하려면 서브스크립션 매니페스트를 생성하고 가져옵니다.

절차

  1. access.redhat.com 에 로그인합니다.
  2. 서브스크립션으로 이동합니다.
  3. Subscription>-<s를 클릭합니다.
  4. 새 서브스크립션 할당 생성을 클릭합니다.
  5. 새 서브스크립션 할당의 이름을 지정합니다.
  6. 유형으로 Satellite 6.8Satellite 6.8 을 선택합니다.
  7. 생성을 클릭합니다. 서브스크립션 할당에 대한 세부 정보 탭이 열립니다.
  8. 서브스크립션 탭을 클릭합니다.
  9. 서브스크립션 추가를 클릭합니다.
  10. Entitlements 상자에서 AAP 서브스크립션을 찾아 환경에 할당할 인타이틀먼트 수를 추가합니다. AAP: 서버, 네트워크 장치 등 AAP에서 관리할 각 노드에 대해 단일 인타이틀먼트가 필요합니다.
  11. Submit 을 클릭합니다.
  12. Export Manifest 를 클릭합니다.
  13. 이렇게 하면 설치 후 Automation Controller로 가져온 파일 manifest_<allocation name>_<date>.zip 이 다운로드됩니다.

4.6. AAP 설치 번들 설치

"번들" 버전은 AAP의 RPM 콘텐츠뿐만 아니라 설치 프로세스 중에 Private Automation Hub에 업로드할 기본 실행 환경 이미지와 함께 제공되므로 연결이 끊긴 설치에 강력히 권장됩니다.

4.6.1. 설치 번들 다운로드

4.6.1.1. 설치 번들 설치

설정 번들의 다운로드 및 설치는 자동화 컨트롤러에 있어야 합니다. 컨트롤러에서 번들의 압축을 풀고 인벤토리 파일을 편집하고 설정을 실행합니다.

  1. 번들의 압축 해제

    $ tar xvf \
       ansible-automation-platform-setup-bundle-2.4-1.tar.gz
    $ cd ansible-automation-platform-setup-bundle-2.4-1
  2. 필요한 옵션을 포함하도록 인벤토리 파일 편집

    1. Automationcontroller 그룹
    2. automationhub 그룹
    3. admin_password
    4. pg_password
    5. automationhub_admin_password
    6. automationhub_pg_host, automationhub_pg_port
    7. automationhub_pg_password

      인벤토리 예

      [automationcontroller]
      automationcontroller.example.org ansible_connection=local
      
      [automationcontroller:vars]
      peers=execution_nodes
      
      [automationhub]
      automationhub.example.org
      
      [all:vars]
      admin_password='password123'
      
      pg_database='awx'
      pg_username='awx'
      pg_password='dbpassword123'
      
      receptor_listener_port=27199
      
      automationhub_admin_password='hubpassword123'
      
      automationhub_pg_host='automationcontroller.example.org'
      automationhub_pg_port='5432'
      
      automationhub_pg_database='automationhub'
      automationhub_pg_username='automationhub'
      automationhub_pg_password='dbpassword123'
      automationhub_pg_sslmode='prefer'
      참고

      인벤토리는 설치 후 백업, 복원 및 업그레이드 기능에 사용되므로 그대로 유지해야 합니다. 인벤토리 파일에 암호가 포함된 경우 백업 사본을 안전한 위치에 보관하는 것이 좋습니다.

  3. root 사용자로 AAP 설정 번들 실행 파일을 실행합니다.

    $ sudo -i
    # cd /path/to/ansible-automation-platform-setup-bundle-2.4-1
    # ./setup.sh
  4. 설치가 완료되면 설치 인벤토리 파일에 지정된 자동화 컨트롤러 노드의 FQDN(정규화된 도메인 이름)으로 이동합니다.
  5. 설치 인벤토리 파일에 지정된 관리자 인증 정보로 로그인합니다.

4.7. 설치 후 작업 완료

4.7.1. 컨트롤러 서브스크립션 추가

절차

  1. 자동화 컨트롤러의 FQDN으로 이동합니다. 인벤토리 파일에서 admin_password 로 지정한 암호와 admin으로 로그인합니다.
  2. 찾아보기를 클릭하고 이전에 만든 manifest.zip 을 선택합니다.
  3. 다음을 클릭합니다.
  4. 사용자 분석자동화 분석 확인 . 이는 인터넷 연결에 따라 달라지므로 해제해야 합니다.
  5. 다음을 클릭합니다.
  6. 최종 사용자 라이센스 계약을 읽고 동의한 경우 제출을 클릭합니다.

4.7.2. CA 신뢰 저장소 업데이트

4.7.2.1. 자체 서명된 certificate

기본적으로 AAP 허브와 컨트롤러는 자체 서명된 인증서를 사용하여 설치됩니다. 이로 인해 컨트롤러가 허브 인증서를 신뢰하지 않고 허브에서 실행 환경을 다운로드하지 않는 문제가 발생합니다. 솔루션은 허브의 CA 인증서를 컨트롤러에서 신뢰할 수 있는 인증서로 가져오는 것입니다. 이 작업을 수행하기 위해 SCP를 사용하거나 한 파일에서 다른 파일로 직접 복사하여 붙여넣을 수 있습니다. 아래 단계는 https://access.redhat.com/solutions/6707451 에 있는 KB 문서에서 복사됩니다.

4.7.2.2. SCP(Secure copy)를 사용하여 개인 자동화 허브의 루트 인증서를 자동화 컨트롤러에 복사

SSH를 컨트롤러와 프라이빗 자동화 허브 간에 root 사용자로 사용할 수 있는 경우 SCP를 사용하여 개인 자동화 허브의 루트 인증서를 컨트롤러에 복사하고 컨트롤러에서 update-ca-trust 를 실행하여 CA 신뢰 저장소를 업데이트합니다.

On the Automation Controller

$ sudo -i
# scp <hub_fqdn>:/etc/pulp/certs/root.crt
/etc/pki/ca-trust/source/anchors/automationhub-root.crt
# update-ca-trust

4.7.2.3. 복사 및 붙여넣기

개인 자동화 허브와 컨트롤러 간에 SSH를 root로 사용할 수 없는 경우 개인 자동화 허브의 /etc/pulp/certs/root.crt 파일의 내용을 복사하여 /etc/pki/ca-trust/source/anchors/automationhub-root.crt 라는 컨트롤러의 새 파일에 붙여넣습니다. 새 파일이 생성되면 update-ca-trust 명령을 실행하여 새 인증서로 CA 신뢰 저장소를 업데이트합니다.

프라이빗 자동화 허브

$ sudo -i
# cat /etc/pulp/certs/root.crt
(copy the contents of the file, including the lines with 'BEGIN CERTIFICATE' and
'END CERTIFICATE')

On the Automation Controller

$ sudo -i
# vi /etc/pki/ca-trust/source/anchors/automationhub-root.crt
(paste the contents of the root.crt file from the private automation hub into the new file and write to disk)
# update-ca-trust

4.8. Private Automation Hub로 컬렉션 가져오기

다음 소스에서 컬렉션 tarball 파일을 다운로드할 수 있습니다.

4.8.1. Red Hat Automation Hub에서 수집 다운로드

이 섹션에서는 Red Hat Automation Hub에서 컬렉션을 다운로드하는 방법을 설명합니다. 컬렉션에 종속 항목이 있는 경우 해당 컬렉션을 다운로드하여 설치해야 합니다.

절차

  1. https://console.redhat.com/ansible/automation-hub/ 으로 이동하여 Red Hat 인증 정보를 사용하여 로그인합니다.
  2. 다운로드하려는 컬렉션을 클릭합니다.
  3. tarball 다운로드를클릭합니다.
  4. 컬렉션에 종속성이 있는지 확인하려면 종속성 탭을 클릭합니다.
  5. 이 컬렉션에 필요한 모든 종속성을 다운로드합니다.

4.9. 컬렉션 네임스페이스 생성

가져오기에 성공하려면 컬렉션의 네임스페이스가 있어야 합니다. tarball 파일 이름의 첫 번째 부분을 보면 네임스페이스 이름을 찾을 수 있습니다. 예를 들어 ansible-netcommon-3.0.0.tar.gz 컬렉션의 네임스페이스는 ansible 입니다.

절차

  1. 프라이빗 자동화 허브 웹 콘솔에 로그인합니다.
  2. CollectionsNamespaces 로 이동합니다.
  3. 생성을 클릭합니다.
  4. 네임스페이스 이름을 제공합니다.
  5. 생성을 클릭합니다.

4.9.1. GUI를 사용하여 tarball 컬렉션 가져오기

  1. 프라이빗 자동화 허브 웹 콘솔에 로그인합니다.
  2. CollectionsNamespaces 로 이동합니다.
  3. 컬렉션을 가져올 네임스페이스의 컬렉션 보기 를 클릭합니다.
  4. Upload collection 을 클릭합니다.
  5. 폴더 아이콘을 클릭하고 컬렉션의 tarball을 선택합니다.
  6. 업로드를 클릭합니다.

그러면 '내 가져오기' 페이지가 열립니다. 가져온 파일 및 모듈의 가져오기 상태 및 다양한 세부 정보를 확인할 수 있습니다.

4.9.1.1. CLI를 통해 ansible-gal Galaxyy를 사용하여 tarball 컬렉션 가져오기

GUI가 아닌 명령줄 인터페이스를 사용하여 컬렉션을 프라이빗 자동화 허브로 가져올 수 있습니다.

  1. 컬렉션 tarballs를 프라이빗 자동화 허브에 복사합니다.
  2. SSH를 통해 프라이빗 자동화 허브 서버에 로그인합니다.
  3. 자동화 허브의 신뢰 저장소에 자체 서명된 루트 CA 인증서를 추가합니다.

    # cp /etc/pulp/certs/root.crt \
        /etc/pki/ca-trust/source/anchors/automationhub-root.crt
    # update-ca-trust
  4. 허브 구성으로 /etc/ansible/ansible.cfg 파일을 업데이트합니다. 인증에 토큰 또는 사용자 이름 및 암호를 사용합니다.

    [galaxy]
    server_list = private_hub
    
    [galaxy_server.private_hub]
    url=https://<hub_fqdn>/api/galaxy/
    token=<token_from_private_hub>
  5. ansible-gal Galaxyy 명령을 사용하여 컬렉션을 가져옵니다.
$ ansible-galaxy collection publish <collection_tarball>
참고

컬렉션이 미리 속하는 네임스페이스를 생성하거나 컬렉션을 게시하지 못할 수 있습니다.

4.10. 가져온 컬렉션 승인

GUI 또는 CLI 메서드가 포함된 컬렉션을 가져온 후에는 GUI를 사용하여 해당 컬렉션을 승인해야 합니다. 승인되면 사용할 수 있습니다.

절차

  1. 프라이빗 자동화 허브 웹 콘솔에 로그인합니다.
  2. 컬렉션승인 으로 이동합니다.
  3. 승인 하려는 컬렉션에 대해 승인을 클릭합니다.
  4. 이제 컬렉션을 프라이빗 자동화 허브에서 사용할 수 있습니다.
참고

컬렉션은 소스에 관계없이 "Published" 리포지토리에 추가됩니다.

  1. 동일한 단계를 사용하여 컬렉션에 대한 종속성을 가져옵니다.

권장 컬렉션은 사용 사례에 따라 다릅니다. Ansible 및 Red Hat은 다음과 같은 컬렉션을 제공합니다.

4.10.1. 사용자 정의 실행 환경

ansible-builder 프로그램을 사용하여 사용자 지정 실행 환경 이미지를 생성합니다. 연결이 끊긴 환경의 경우 다음과 같은 방법으로 사용자 지정 EE 이미지를 빌드할 수 있습니다.

  • 인터넷 연결 시스템에서 EE 이미지를 빌드하고 연결이 끊긴 환경으로 가져옵니다.
  • ansible-builder 사용의 일반적인 프로세스를 일부 수정하면서 연결이 끊긴 환경에 전적으로 EE 이미지를 빌드합니다.
  • 연결이 끊긴 환경에 필요한 모든 수정 사항을 포함하는 최소 기본 컨테이너 이미지를 생성한 다음 기본 컨테이너 이미지에서 사용자 지정 EE 이미지를 빌드합니다.

4.10.1.1. 연결되지 않은 Boundary를 통해 사용자 정의 EE 이미지 전송

사용자 지정 실행 환경 이미지는 기존 문서를 사용하여 인터넷에 연결된 시스템에서 빌드할 수 있습니다. 실행 환경이 생성되면 로컬 podman 이미지 캐시에서 사용할 수 있습니다. 그런 다음 연결 해제된 경계에서 사용자 지정 EE 이미지를 전송할 수 있습니다. 사용자 지정 EE 이미지를 연결이 끊긴 경계에서 전송하려면 먼저 이미지를 저장합니다.

  1. 이미지를 저장합니다.
$ podman image save localhost/custom-ee:latest | gzip -c custom-ee-latest.tar.gz

sneakernet, 단방향 다이오드 등과 같은 기존 메커니즘을 사용하여 연결이 끊긴 경계 전체에 파일을 전송합니다. 연결이 끊긴 쪽에서 이미지를 사용할 수 있는 후 로컬 podman 캐시로 가져와서 태그를 지정하여 연결 해제된 허브로 푸시합니다.

$ podman image load -i custom-ee-latest.tar.gz
$ podman image tag localhost/custom-ee <hub_fqdn>/custom-ee:latest
$ podman login <hub_fqdn> --tls-verify=false
$ podman push <hub_fqdn>/custom-ee:latest

4.11. 연결되지 않은 환경에서 실행 환경 빌드

사용자 지정 실행 환경을 빌드할 때 ansible-builder 툴은 기본적으로 인터넷에서 다음 요구 사항을 다운로드합니다.

  • EE 이미지에 추가된 컬렉션의 Ansible Galaxy(gal excessivey.ansible.com) 또는 Automation Hub(cloud.redhat.com)입니다.
  • 컬렉션 종속성으로 필요한 python 패키지의 경우 PyPI(pypi.org)입니다.
  • UBI 기반 EE 이미지를 업데이트하기 위한 UBI 리포지토리(cdn.redhat.com).

    • 특정 컬렉션 요구 사항을 충족하기 위해 RHEL 리포지토리도 필요할 수 있습니다.
  • ansible-builder-rhel8 컨테이너 이미지에 액세스할 수 있는 registry.redhat.io

연결이 끊긴 환경에서 EE 이미지를 빌드하려면 미러링된 모든 항목의 하위 집합이 필요하거나 연결이 끊긴 네트워크에서 사용할 수 있게 됩니다. Galaxy 또는 Automation Hub에서 개인 자동화 허브로 컬렉션 가져오기에 대한 자세한 내용은 Private Automation Hub로 컬렉션 가져오기를 참조하십시오.

웹 서버 또는 Nexus와 같은 아티팩트 저장소를 사용하여 고정 네트워크로 전송된 미러링된 PyPI 콘텐츠를 사용할 수 있습니다.

UBI 리포지토리는 리포지토리 동기화, 연결이 끊긴 환경으로 가져온 툴을 사용하여 낮은 쪽에서 미러링할 수 있으며 Satellite 또는 간단한 웹 서버에서 사용할 수 있습니다(내용은 자유롭게 재배포 가능).

ansible-builder-rhel8 컨테이너 이미지를 사용자 지정 EE를 가져오는 것과 동일한 방식으로 프라이빗 자동화 허브로 가져올 수 있습니다. registry.redhat.io/ansible-automation-platform-21/ansible-builder-rhel8 의 경우 localhost/custom-ee 를 대체하려면 Disconnected Boundary 간에 사용자 지정 EE 이미지 전송을 참조하십시오. 그러면 기본 EE 이미지와 함께 개인 자동화 허브 레지스트리에서 ansible-builder-rhel8 이미지를 사용할 수 있습니다.

고가용성 네트워크에서 모든 사전 요구 사항을 사용할 수 있게 되면 ansible-builder 및 podman을 사용하여 사용자 지정 실행 환경 이미지를 생성할 수 있습니다.

4.12. ansible-builder RPM 설치

절차

  1. RHEL 시스템에서 ansible-builder RPM을 설치합니다. 이 작업은 여러 가지 방법 중 하나로 수행할 수 있습니다.

    1. 연결되지 않은 네트워크의 Satellite에 RHEL 박스를 서브스크립션합니다.
    2. Ansible Automation Platform 서브스크립션을 연결하고 AAP 리포지터리를 활성화합니다.
    3. ansible-builder RPM을 설치합니다.

      참고

      기본 빌드 호스트가 등록된 경우 EE 이미지에서 Satellite의 RHEL 콘텐츠를 사용할 수 있기 때문에 Satellite가 존재하는 경우 이 작업이 선호됩니다.

  2. AAP 설정 번들의 압축을 해제합니다.
  3. 포함된 콘텐츠의 ansible-builder RPM 및 해당 종속 항목을 설치합니다.

    $ tar -xzvf ansible-automation-platform-setup-bundle-2.4-1.tar.gz
    $ cd ansible-automation-platform-setup-bundle-2.4/bundle/el8/repos/
    $ sudo yum install ansible-builder-1.0.1-2.el8ap.noarch.rpm
    python38-requirements-parser-0.2.0-3.el8ap.noarch.rpm
  4. 사용자 정의 EE 빌드 아티팩트용 디렉터리를 생성합니다.

    $ mkdir custom-ee
    $ cd custom-ee/
  5. https://ansible-builder.readthedocs.io/en/stable/definition/ 의 설명서에 따라 사용자 지정 EE에 대한 요구 사항을 정의하는 execution-environment.yml 파일을 생성합니다. 개인 자동화 허브에서 사용 가능한 EE를 가리키도록 EE_BASE_IMAGEEE_BUILDER_IMAGE 변수를 재정의합니다.

    $ cat execution-environment.yml
    ---
    version: 1
    build_arg_defaults:
      EE_BASE_IMAGE: '<hub_fqdn>/ee-supported-rhel8:latest'
      EE_BUILDER_IMAGE: '<hub_fqdn>/ansible-builder-rhel8:latest'
    
    dependencies:
      python: requirements.txt
      galaxy: requirements.yml
  6. 개인 자동화 허브를 가리키는 ansible.cfg 파일을 만들고 admin 사용자 토큰과 같이 업로드할 수 있는 자격 증명이 포함되어 있습니다.

    $ cat ansible.cfg
    [galaxy]
    server_list = private_hub
    
    [galaxy_server.private_hub]
    url=https://<hub_fqdn>/api/galaxy/
    token=<admin_token>
  7. 연결이 끊긴 UBI 리포지터리 미러를 가리키는 ubi.repo 파일을 만듭니다( UBI 콘텐츠가 호스팅되는 경우 Satellite가 제공될 수 있음).

    다음은 reposync 가 UBI 리포지터리를 미러링하는 데 사용된 출력 예입니다.

    $ cat ubi.repo
    [ubi-8-baseos]
    name = Red Hat Universal Base Image 8 (RPMs) - BaseOS
    baseurl = http://<ubi_mirror_fqdn>/repos/ubi-8-baseos
    enabled = 1
    gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
    gpgcheck = 1
    
    [ubi-8-appstream]
    name = Red Hat Universal Base Image 8 (RPMs) - AppStream
    baseurl = http://<ubi_mirror_fqdn>/repos/ubi-8-appstream
    enabled = 1
    gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
    gpgcheck = 1
  8. 프라이빗 자동화 허브 웹 서버 인증서에 서명하는 데 사용되는 CA 인증서를 추가합니다.

    1. 자체 서명 인증서(설치 프로그램 기본값)의 경우 개인 자동화 허브의 /etc/pulp/certs/root.crt 파일 사본을 만들고 이름을 hub-root.crt 로 지정합니다.
    2. 개인 자동화 허브 웹 서버 인증서를 요청하고 서명하는 데 내부 인증 기관을 사용한 경우 hub-root.crt 라는 CA 인증서의 사본을 만듭니다.
  9. 사용자 지정 EE 이미지에 필요한 콘텐츠를 사용하여 python requirements.txt 및 ansible collection requirements.yml을 생성합니다. 필요한 모든 컬렉션은 이미 프라이빗 자동화 허브에 업로드되어야 합니다.
  10. ansible-builder를 사용하여 EE 이미지를 빌드하는 데 사용되는 컨텍스트 디렉터리를 생성합니다.

    $ ansible-builder create
    Complete! The build context can be found at: /home/cloud-user/custom-ee/context
    $ ls -1F
    ansible.cfg
    context/
    execution-environment.yml
    hub-root.crt
    pip.conf
    requirements.txt
    requirements.yml
    ubi.repo
  11. 인터넷 관련 기본값을 컨텍스트 디렉터리로 덮어쓰는 데 사용되는 파일을 복사합니다.

    $ cp ansible.cfg hub-root.crt pip.conf ubi.repo context/
  12. 파일 컨텍스트/Containerfile 을 편집하고 다음 수정 사항을 추가합니다.

    1. 첫 번째 EE_BASE_IMAGE 빌드 섹션에서 ansible.cfghub-root.crt 파일을 추가하고 update-ca-trust 명령을 실행합니다.
    2. EE_BUILDER_IMAGE 빌드 섹션에서 ubi.repopip.conf 파일을 추가합니다.
    3. 최종 EE_BASE_IMAGE 빌드 섹션에서 ubi.repo 및 pip.conf 파일을 추가합니다.

      $ cat context/Containerfile
      ARG EE_BASE_IMAGE=<hub_fqdn>/ee-supported-rhel8:latest
      ARG EE_BUILDER_IMAGE=<hub_fqdn>/ansible-builder-rhel8:latest
      
      FROM $EE_BASE_IMAGE as galaxy
      ARG ANSIBLE_GALAXY_CLI_COLLECTION_OPTS=
      USER root
      
      ADD _build /build
      WORKDIR /build
      
      # this section added
      ADD ansible.cfg /etc/ansible/ansible.cfg
      ADD hub-root.crt /etc/pki/ca-trust/source/anchors/hub-root.crt
      RUN update-ca-trust
      # end additions
      RUN ansible-galaxy role install -r requirements.yml \
          --roles-path /usr/share/ansible/roles
      RUN ansible-galaxy collection install \
          $ANSIBLE_GALAXY_CLI_COLLECTION_OPTS -r requirements.yml \
          --collections-path /usr/share/ansible/collections
      
      FROM $EE_BUILDER_IMAGE as builder
      
      COPY --from=galaxy /usr/share/ansible /usr/share/ansible
      
      ADD _build/requirements.txt requirements.txt
      RUN ansible-builder introspect --sanitize \
          --user-pip=requirements.txt \
          --write-bindep=/tmp/src/bindep.txt \
          --write-pip=/tmp/src/requirements.txt
      # this section added
      ADD ubi.repo /etc/yum.repos.d/ubi.repo
      ADD pip.conf /etc/pip.conf
      # end additions
      RUN assemble
      
      FROM $EE_BASE_IMAGE
      USER root
      
      COPY --from=galaxy /usr/share/ansible /usr/share/ansible
      # this section added
      ADD ubi.repo /etc/yum.repos.d/ubi.repo
      ADD pip.conf /etc/pip.conf
      # end additions
      
      COPY --from=builder /output/ /output/
      RUN /output/install-from-bindep && rm -rf /output/wheels
  13. podman 명령을 사용하여 로컬 podman 캐시에 EE 이미지를 만듭니다.

    $ podman build -f context/Containerfile \
        -t <hub_fqdn>/custom-ee:latest
  14. 사용자 지정 EE 이미지가 성공적으로 빌드되면 프라이빗 자동화 허브로 푸시합니다.

    $ podman push <hub_fqdn>/custom-ee:latest

4.12.1. 마이너 AAP 릴리스 간 업그레이드를 위한 워크플로

AAP 2의 마이너 릴리스 간에 업그레이드하려면 이 일반 워크플로를 사용하십시오.

절차

  1. 최신 AAP 2 설정 번들을 다운로드하여 압축을 해제합니다.
  2. 기존 설치의 백업을 수행합니다.
  3. 기존 설치 인벤토리 파일을 새 설치 번들 디렉터리에 복사합니다.
  4. ./setup.sh 를 실행하여 설치를 업그레이드합니다.

예를 들어 버전 2.2.0-7에서 2.3-1.2로 업그레이드하려면 설치가 발생한 초기 컨트롤러 노드에 두 설치 번들이 있는지 확인합니다.

    $ ls -1F
ansible-automation-platform-setup-bundle-2.2.0-7/
ansible-automation-platform-setup-bundle-2.2.0-7.tar.gz
ansible-automation-platform-setup-bundle-2.3-1.2/
ansible-automation-platform-setup-bundle-2.3-1.2.tar.gz

2.2.0-7 설치를 백업하십시오.

$ cd ansible-automation-platform-setup-bundle-2.2.0-7
$ sudo ./setup.sh -b
$ cd ..

2.2.0-7 인벤토리 파일을 2.3-1.2 번들 디렉터리에 복사합니다.

$ cd ansible-automation-platform-setup-bundle-2.2.0-7
$ cp inventory ../ansible-automation-platform-setup-bundle-2.3-1.2/
$ cd ..

setup.sh 스크립트를 사용하여 2.2.0-7에서 2.3-1.2로 업그레이드하십시오.

$ cd ansible-automation-platform-setup-bundle-2.3-1.2
$ sudo ./setup.sh

부록 A. 인벤토리 파일 변수

다음 표에는 Ansible 설치 인벤토리 파일에 사용되는 사전 정의된 변수에 대한 정보가 포함되어 있습니다. 이러한 변수가 모두 필요한 것은 아닙니다.

A.1. 일반 변수

변수description

enable_insights_collection

기본 설치는 노드가 Subscription Manager에 등록된 경우 Red Hat Insights for Red Hat Ansible Automation Platform Service에 노드를 등록합니다. 비활성화하려면 False 로 설정합니다.

default = true

registry_password

registry_password 는 번들 이외의 설치 프로그램을 사용하는 경우에만 필요합니다.

registry_url 에 액세스하기 위한 암호 인증 정보 .

[automationcontroller][automationhub] 그룹 모두에 사용됩니다.

registry_usernameregistry_password 에 Red Hat Registry Service 계정 자격 증명을 입력하여 Red Hat 컨테이너 레지스트리에 연결합니다.

registry_urlregistry.redhat.io 인 경우 번들 설치 프로그램을 사용하지 않는 경우 사용자 이름과 암호가 필요합니다.

registry_url

[automationcontroller][automationhub] 그룹 모두에 사용됩니다.

default = registry.redhat.io.

registry_username

registry_username 은 번들 이외의 설치 프로그램을 사용하는 경우에만 필요합니다.

registry_url 에 액세스하기 위한 사용자 인증 정보 .

[automationcontroller][automationhub] 그룹 모두에 사용되지만 registry_url 값이 registry.redhat.io 인 경우에만 사용됩니다.

registry_usernameregistry_password 에 Red Hat Registry Service 계정 자격 증명을 입력하여 Red Hat 컨테이너 레지스트리에 연결합니다.

routable_hostname

라우팅 가능한 호스트 이름은 설치 프로그램을 실행하는 시스템이 특정 URL을 통해서만 라우팅할 수 있는 경우 사용됩니다. 예를 들어 인벤토리에서 단축 이름을 사용하는 경우, 설치 프로그램을 실행하는 노드는 FQDN을 사용하여 해당 호스트를 확인할 수 있습니다.

routable_hostname 이 설정되지 않은 경우 기본적으로 ansible_host 로 설정되어야 합니다. ansible_host 가 설정되지 않은 경우에만 inventory_hostname 이 마지막 수단으로 사용됩니다.

이 변수는 [all:vars] 섹션 아래가 아닌 특정 호스트의 호스트 변수로 사용됩니다. 자세한 내용은 하나의 머신에 변수 할당: 호스트 변수 할당을참조하십시오.

A.2. Ansible 자동화 허브 변수

변수description

automationhub_admin_password

필수 항목

automationhub_api_token

Ansible Automation Platform 2.0 이하에서 업그레이드하는 경우 다음 중 하나를 수행해야 합니다.

  • 기존 Ansible 자동화 허브 토큰을 automationhub_api_token 로 제공하거나
  • generate_automationhub_tokentrue 로 설정하여 새 토큰을 생성합니다.

새 토큰을 생성하면 기존 토큰이 무효화됩니다.

automationhub_authentication_backend

이 변수는 기본적으로 설정되어 있지 않습니다. LDAP 인증을 사용하려면 ldap 로 설정합니다.

이 값이 ldap 로 설정된 경우 다음 변수도 설정해야 합니다.

  • automationhub_ldap_server_uri
  • automationhub_ldap_bind_dn
  • automationhub_ldap_bind_password
  • automationhub_ldap_user_search_base_dn
  • automationhub_ldap_group_seach_base_dn

automationhub_auto_sign_collections

컬렉션 서명 서비스가 활성화된 경우 컬렉션은 기본적으로 자동으로 서명되지 않습니다.

이 매개변수를 true 로 설정하면 기본적으로 서명합니다.

default = false 입니다.

automationhub_backup_collections

선택 사항

Ansible 자동화 허브는 /var/lib/pulp 에 아티팩트를 제공합니다. 자동화 컨트롤러는 기본적으로 아티팩트를 자동으로 백업합니다.

automationhub_backup_collections = false 를 설정하면 backup/restore 프로세스가 /var/lib/pulp 를 백업하거나 복원하지 않습니다.

default = true

automationhub_collection_seed_repository

번들 설치 프로그램이 실행되면 검증된 콘텐츠가 검증된 리포지토리에 업로드되고 인증된 콘텐츠가 rh 인증 리포지토리에 업로드됩니다.

기본적으로 인증된 콘텐츠와 검증된 콘텐츠가 모두 업로드됩니다.

이 변수의 가능한 값은 '인증' 또는 'validated'입니다.

콘텐츠를 설치하지 않으려면 automationhub_seed_collectionsfalse 로 설정하여 시드를 비활성화합니다.

하나의 유형의 콘텐츠만 원한다면 automationhub_seed_collectionstrue 로 설정하고 automationhub_collection_seed_repository 를 포함하려는 콘텐츠 유형으로 설정합니다.

automationhub_collection_signing_service_key

컬렉션 서명 서비스가 활성화된 경우 컬렉션을 올바르게 서명할 수 있도록 이 변수를 제공해야 합니다.

/absolute/path/to/key/to/sign

automationhub_collection_signing_service_script

컬렉션 서명 서비스가 활성화된 경우 컬렉션을 올바르게 서명할 수 있도록 이 변수를 제공해야 합니다.

/absolute/path/to/script/that/signs

automationhub_create_default_collection_signing_service

기본 설치에서는 컬렉션 서명 서비스를 생성하지 않습니다. true 로 설정하면 서명 서비스가 생성됩니다.

default = false

automationhub_container_signing_service_key

컨테이너 서명 서비스가 활성화된 경우 컨테이너를 올바르게 서명할 수 있도록 이 변수를 제공해야 합니다.

/absolute/path/to/key/to/sign

automationhub_container_signing_service_script

컨테이너 서명 서비스가 활성화된 경우 컨테이너를 올바르게 서명할 수 있도록 이 변수를 제공해야 합니다.

/absolute/path/to/script/that/signs

automationhub_create_default_container_signing_service

기본 설치에서는 컨테이너 서명 서비스를 생성하지 않습니다. true 로 설정하면 서명 서비스가 생성됩니다.

default = false

automationhub_disable_hsts

기본 설치는 TLS가 활성화된 Ansible 자동화 허브를 배포합니다. 자동화 허브가 HSM( HTTP Strict Transport Security ) 웹 보안 정책이 활성화된 상태에서 배포되는 경우 사용합니다. 별도로 지정하지 않는 한 HSTS 웹 보안 정책 메커니즘이 활성화됩니다. 이 설정을 사용하면 필요한 경우 비활성화할 수 있습니다.

default = false

automationhub_disable_https

선택 사항

Ansible 자동화 허브가 HTTPS가 활성화된 경우 배포됨.

default = false 입니다.

automationhub_enable_api_access_log

true 로 설정하면 사용자 이름 및 IP 주소를 포함하여 플랫폼에 수행된 모든 사용자 작업을 기록하는 /var/log/gal#178y_api_access.log 에 로그 파일을 생성합니다.

default = false 입니다.

automationhub_enable_analytics

Ansible Automation Platform 2.4의 자동화 허브에 사용되는 pulpcore 버전에 대한 pulp analytics를 활성화할지 여부를 나타내는 부울입니다.

pulp 분석을 활성화하려면 automationhub_enable_analytic = true 를 설정합니다.

default = false 입니다.

automationhub_enable_unauthenticated_collection_access

권한이 없는 사용자가 컬렉션을 볼 수 있습니다.

권한이 없는 사용자가 컬렉션을 볼 수 있도록 하려면 automationhub_enable_unauthenticated_collection_access = true 를 설정합니다.

default = false 입니다.

automationhub_enable_unauthenticated_collection_download

권한이 없는 사용자가 컬렉션을 다운로드할 수 있도록 합니다.

권한이 없는 사용자가 컬렉션을 다운로드할 수 있도록 하려면 automationhub_enable_unauthenticated_collection_download = true 를 설정합니다.

default = false 입니다.

automationhub_importer_settings

선택 사항

galvncy-importer에 전달할 설정 사전입니다.

가져오기 시 컬렉션은 일련의 검사를 수행할 수 있습니다.

동작은 galvncy -importer.cfg 구성으로 구동됩니다.

예를 들면 ansible-doc,ansible-lint, flake8 이 있습니다.

이 매개변수를 사용하면 이 구성을 구동할 수 있습니다.

automationhub_main_url

클라이언트가 연결하는 주요 자동화 허브 URL입니다.

예를 들면 https://<load balancer host>입니다.

지정하지 않으면 [automationhub] 그룹의 첫 번째 노드가 사용됩니다.

automationhub_main_url 을 사용하여 자동화 허브 환경에서 Red Hat Single Sign-On을 구현하는 경우 클라이언트가 연결하는 기본 자동화 허브 URL을 지정합니다.

automationhub_pg_database

필수 항목

데이터베이스 이름입니다.

default = automationhub

automationhub_pg_host

내부 데이터베이스를 사용하지 않는 경우 필수 항목입니다.

자동화 허브에서 사용하는 원격 postgres 데이터베이스의 호스트 이름

Default = 127.0.0.1

automationhub_pg_password

자동화 허브 PostgreSQL 데이터베이스의 암호입니다.

automationhub_pg_password 에는 특수 문자를 사용하지 마십시오. 암호가 실패할 수 있습니다.

automationhub_pg_port

내부 데이터베이스를 사용하지 않는 경우 필수 항목입니다.

기본값 = 5432

automationhub_pg_sslmode

필수 항목입니다.

default = prefer

automationhub_pg_username

필수 항목

default = automationhub

automationhub_require_content_approval

선택 사항

자동화 허브에서 컬렉션을 사용할 수 있기 전에 승인 메커니즘을 적용하는 경우 값이 true 입니다.

기본적으로 자동화 허브에 컬렉션을 업로드할 때 관리자는 사용자가 컬렉션을 사용할 수 있도록 승인해야 합니다.

콘텐츠 승인 흐름을 비활성화하려면 변수를 false 로 설정합니다.

default = true

automationhub_seed_collections

사전 로드 여부를 정의하는 부울입니다.

번들 설치 프로그램이 실행되면 검증된 콘텐츠가 검증된 리포지토리에 업로드되고 인증된 콘텐츠가 rh 인증 리포지토리에 업로드됩니다.

기본적으로 인증된 콘텐츠와 검증된 콘텐츠가 모두 업로드됩니다.

콘텐츠를 설치하지 않으려면 automationhub_seed_collectionsfalse 로 설정하여 시드를 비활성화합니다.

하나의 유형의 콘텐츠만 원한다면 automationhub_seed_collectionstrue 로 설정하고 automationhub_collection_seed_repository 를 포함하려는 콘텐츠 유형으로 설정합니다.

default = true.

automationhub_ssl_cert

선택 사항

/path/to/automationhub.cert as web_server_ssl_cert but for automation hub UI and API

automationhub_ssl_key

선택 사항

/path/to/automationhub.key

web_server_ssl_key 와 동일하지만 자동화 허브 UI 및 API의 경우

automationhub_ssl_validate_certs

Red Hat Ansible Automation Platform 2.2 이상에서는 이 값이 더 이상 사용되지 않습니다.

기본적으로 Ansible Automation Platform이 자체 서명된 인증서로 배포되므로 자체적으로 요청할 때 자동화 허브가 인증서를 검증해야 하는 경우 value는 true 입니다.

default = false 입니다.

automationhub_upgrade

더 이상 사용되지 않음

Ansible Automation Platform 2.2.1 이상의 경우 이 값은 true로 수정되었습니다.

자동화 허브는 항상 최신 패키지로 업데이트됩니다.

ee_from_hub_only

자동화 허브를 사용하여 배포하면 설치 프로그램이 실행 환경 이미지를 자동화 허브로 푸시하고 자동화 허브 레지스트리에서 이미지를 가져오도록 자동화 컨트롤러를 구성합니다.

자동화 허브를 실행 환경 이미지를 가져오는 유일한 레지스트리로 설정하려면 'ee_from_hub_only'를 true 로 설정합니다.

false 로 설정하면 실행 환경 이미지도 Red Hat에서 직접 가져옵니다.

번들 설치 프로그램을 사용하는 경우 default = true 입니다.

generate_automationhub_token

Red Hat Ansible Automation Platform 2.0 이하에서 업그레이드하는 경우 다음 중 하나를 수행해야 합니다.

  • 기존 Ansible 자동화 허브 토큰을 automationhub_api_token 로 제공
  • generate_automationhub_tokentrue 로 설정하여 새 토큰을 생성합니다. 새 토큰을 생성하면 기존 토큰이 무효화됩니다.

nginx_hsts_max_age

이 변수는 시스템을 HSM( HTTP Strict Transport Security ) 호스트로 간주해야 하는 시간(초)을 지정합니다. 즉, HTTPS가 통신에만 사용되는 시간입니다.

기본값은 63072000초 또는 2년입니다.

nginx_tls_protocols

Nginx의 ssl_protocols 지원을 정의합니다.

Default = TLSv1.2.

pulp_db_fields_key

가져오려는 CloudEvent 대칭 암호화 키의 상대 경로 또는 절대 경로입니다. 경로는 Ansible 관리 노드에 있습니다. 데이터베이스의 특정 필드를 암호화하는 데 사용됩니다(예: 자격 증명). 지정하지 않으면 새 키가 생성됩니다.

sso_automation_platform_login_theme

선택 사항

Ansible Automation Platform에서 관리 및 외부에서 관리되는 Red Hat Single Sign-On에 사용됩니다.

요소 파일이 있는 디렉터리의 경로입니다. 이 변수를 변경하는 경우 고유한 topic 파일을 제공해야 합니다.

default = ansible-automation-platform

sso_automation_platform_realm

선택 사항

Ansible Automation Platform에서 관리 및 외부에서 관리되는 Red Hat Single Sign-On에 사용됩니다.

SSO의 영역 이름입니다.

default = ansible-automation-platform

sso_automation_platform_realm_displayname

선택 사항

Ansible Automation Platform에서 관리 및 외부에서 관리되는 Red Hat Single Sign-On에 사용됩니다.

영역의 표시 이름입니다.

default = Ansible Automation Platform

sso_console_admin_username

선택 사항

Ansible Automation Platform에서 관리 및 외부에서 관리되는 Red Hat Single Sign-On에 사용됩니다.

SSO 관리 사용자 이름.

default = admin

sso_console_admin_password

필수 항목

Ansible Automation Platform에서 관리 및 외부에서 관리되는 Red Hat Single Sign-On에 사용됩니다.

SSO 관리 암호.

sso_custom_keystore_file

선택 사항

Ansible Automation Platform에서 관리되는 Red Hat Single Sign-On에만 사용됩니다.

SSO용 고객 제공 키 저장소입니다.

sso_host

필수 항목

외부에서 관리되는 Red Hat Single Sign-On에만 사용됩니다.

자동화 허브에는 인증을 위해 SSO 및 SSO 관리 자격 증명이 필요합니다.

SSO가 구성에 대해 인벤토리에 제공되지 않으면 이 변수를 사용하여 SSO 호스트를 정의해야 합니다.

sso_keystore_file_remote

선택 사항

Ansible Automation Platform에서 관리되는 Red Hat Single Sign-On에만 사용됩니다.

고객 제공 키 저장소가 원격 노드에 있는 경우 true 로 설정합니다.

default = false

sso_keystore_name

선택 사항

Ansible Automation Platform에서 관리되는 Red Hat Single Sign-On에만 사용됩니다.

SSO의 키 저장소 이름입니다.

default = ansible-automation-platform

sso_keystore_password

HTTPS가 활성화된 SSO의 키 저장소 암호입니다.

Ansible Automation Platform 관리 SSO 및 HTTPS가 활성화된 경우 필수 항목입니다. 기본 설치는 sso_use_https=true 를 사용하여 SSO를 배포합니다.

sso_redirect_host

선택 사항

Ansible Automation Platform에서 관리 및 외부에서 관리되는 Red Hat Single Sign-On에 사용됩니다.

sso_redirect_host 가 설정된 경우 애플리케이션에서 인증을 위해 SSO에 연결하는 데 사용됩니다.

클라이언트 시스템에서 액세스할 수 있어야 합니다.

sso_ssl_validate_certs

선택 사항

Ansible Automation Platform에서 관리 및 외부에서 관리되는 Red Hat Single Sign-On에 사용됩니다.

연결 중에 인증서를 검증할 경우 true 로 설정합니다.

default = true

sso_use_https

선택 사항

Ansible Automation Platform에서 관리 및 외부에서 관리되는 Red Hat Single Sign-On에 사용됩니다.

Single Sign On이 https를 사용하는 경우

default = true

Ansible 자동화 허브가 LDAP에 직접 연결하려면 다음 변수를 구성해야 합니다. ldap_extra_settings 변수를 사용하여 전달할 수 있는 기타 LDAP 관련 변수(아래의 automationhub_ldap_xxx 변수에서 다루지 않음) 목록은 여기에서 확인할 수 있습니다. https://django-auth-ldap.readthedocs.io/en/latest/reference.html#settings

변수description

automationhub_ldap_bind_dn

automationhub_ldap_bind_password 를 사용하여 LDAP 서버에 바인딩할 때 사용할 이름입니다.

automationhub_ldap_bind_password

필수 항목

automationhub_ldap_bind_dn 과 함께 사용할 암호입니다.

automationhub_ldap_group_search_base_dn

사용자가 속할 수 있는 모든 LDAP 그룹을 찾는 LDAPSearch 오브젝트입니다. 구성이 LDAP 그룹에 대한 참조를 수행하는 경우 이 및 automationhub_ldap_group_type 을 설정해야 합니다.

기본값 = 없음

automatiohub_ldap_group_search_filter

선택 사항

그룹 멤버십을 찾으려면 필터를 검색합니다.

variable은 자동화 허브 및 LDAP를 사용하여 매핑 그룹에 사용할 objectClass 유형을 식별합니다. LDAP를 사용하여 자동화 허브를 설치하는 데 사용됩니다.

Default = (objectClass=Group)

automationhub_ldap_group_search_scope

선택 사항

LDAP 인증에 django 프레임워크를 사용하여 LDAP 트리에서 그룹을 검색할 범위입니다. LDAP를 사용하여 자동화 허브를 설치하는 데 사용됩니다.

default = SUBTREE

automationhub_ldap_group_type_class

선택 사항

variable은 LDAP 인증을 위한 django 프레임 워크 내에서 그룹 검색 중에 사용되는 그룹 유형을 식별합니다. LDAP를 사용하여 자동화 허브를 설치하는 데 사용됩니다.

Default =django_auth_ldap.config:GroupOfNamesType

automationhub_ldap_server_uri

LDAP 서버의 URI입니다. 기본 LDAP 라이브러리에서 지원하는 모든 URI일 수 있습니다.

automationhub_ldap_user_search_base_dn

디렉터리에서 사용자를 찾는 LDAPSearch 오브젝트입니다. filter 매개변수에는 사용자 이름에 대한 자리 표시자 %(user)가 포함되어야 합니다. 인증이 성공하려면 정확히 하나의 결과를 반환해야 합니다.

automationhub_ldap_user-search_scope

선택 사항

LDAP 인증에 django 프레임워크를 사용하여 LDAP 트리에서 사용자를 검색할 범위입니다. LDAP를 사용하여 자동화 허브를 설치하는 데 사용됩니다.

default = SUBTREE

A.3. 자동화 컨트롤러 변수

변수description

admin_password

설치 완료 시 UI에 액세스할 수 있는 관리 사용자의 암호입니다.

automation_controller_main_url

SSO 구성에 필요한 대체 프런트 엔드 URL의 경우 URL을 제공합니다.

automationcontroller_password

자동화 컨트롤러 인스턴스의 암호입니다.

automationcontroller_username

자동화 컨트롤러 인스턴스의 사용자 이름입니다.

nginx_http_port

nginx HTTP 서버는 인바운드 연결을 수신 대기합니다.

기본값 = 80

nginx_https_port

nginx HTTPS 서버는 보안 연결을 수신 대기합니다.

기본값 = 443

nginx_hsts_max_age

이 변수는 시스템을 HSM( HTTP Strict Transport Security ) 호스트로 간주해야 하는 시간(초)을 지정합니다. 즉, HTTPS가 통신에만 사용되는 시간입니다.

기본값은 63072000초 또는 2년입니다.

nginx_tls_protocols

Nginx의 ssl_protocols 지원을 정의합니다.

Default = TLSv1.2.

node_state

선택 사항

노드 또는 노드 그룹의 상태입니다. 유효한 옵션은 active, 클러스터에서 노드를 제거하거나 iso_migrate 로 기존 격리된 노드를 실행 노드로 마이그레이션하도록프로비저닝 해제 입니다.

default = active 입니다.

node_type

[automationcontroller] 그룹의 경우 다음을 수행합니다.

이 그룹에 대해 두 개의 유효한 node_type 을 할당할 수 있습니다.

node_type=control 은 노드에서 프로젝트 및 인벤토리 업데이트만 실행하지만 일반 작업은 실행하지 않음을 의미합니다.

node_type=hybrid 에는 모든 것을 실행할 수 있습니다.

이 그룹의 기본값 = 하이브리드.

[execution_nodes] 그룹의 경우

이 그룹에 대해 두 개의 유효한 node_type을 할당할 수 있습니다.

node_type=hop 은 노드가 실행 노드로 작업을 전달함을 나타냅니다.

node_type=execution 은 노드에서 작업을 실행할 수 있음을 나타냅니다.

이 그룹의 기본값 = 실행.

피어

선택 사항

peers 변수는 특정 호스트 또는 그룹이 연결되는 노드를 나타내는 데 사용됩니다. peers 변수가 정의될 때마다 특정 호스트 또는 그룹에 아웃바운드 연결이 설정됩니다.

이 변수는 다른 노드와의 네트워크 연결을 설정하는 데 사용되는 receptor.conf 파일에 tcp-peer 항목을 추가하는 데 사용됩니다. 피어링참조

peers 변수는 인벤토리의 쉼표로 구분된 호스트 및/또는 그룹 목록일 수 있습니다. 이 문제는 receptor.conf 파일을 구성하는 데 사용되는 호스트 세트로 해결되었습니다.

pg_database

postgres 데이터베이스의 이름입니다.

default = awx.

pg_host

postgreSQL 호스트는 외부에서 관리되는 데이터베이스일 수 있습니다.

pg_password

postgreSQL 데이터베이스의 암호입니다.

pg_password 에 특수 문자를 사용하지 마십시오. 암호가 실패할 수 있습니다.

참고

PostgreSQL 13에서는 사용자 암호를 보다 안전하게 저장할 수 있으므로 설치 시 인벤토리 파일에 pg_hashed_password 를 더 이상 제공할 필요가 없습니다.

설치 프로그램의 인벤토리 파일에 pg_password 를 제공하는 경우 PostgreSQL은 SCRAM-SHA-256 해시를 사용하여 설치 프로세스의 일부로 해당 암호를 보호합니다.

pg_port

사용할 postgreSQL 포트입니다.

기본값 = 5432

pg_ssl_mode

prefer 또는 verify-full 중 하나.

클라이언트 측에서 적용된 SSL의 경우 verify-full 로 설정합니다.

default = prefer.

pg_username

postgres 데이터베이스 사용자 이름입니다.

default = awx.

postgres_ssl_cert

postgres ssl 인증서의 위치.

/path/to/pgsql_ssl.cert

postgres_ssl_key

postgres ssl 키의 위치.

/path/to/pgsql_ssl.key

postgres_use_cert

postgres 사용자 인증서의 위치입니다.

/path/to/pgsql.crt

postgres_use_key

postgres 사용자 키의 위치입니다.

/path/to/pgsql.key

postgres_use_ssl

postgres가 SSL을 사용하는 경우

receptor_listener_port

recptor 연결에 사용할 포트입니다.

기본값 = 27199.

supervisor_start_retry_count

지정된 경우 (기본값이 존재하지 않음), supervisor config 파일(/etc/supervisord.d/tower.ini)에 startretries = <value specified >를 추가합니다.

startretries대한 자세한 내용은 program:x 섹션 값을 참조하십시오.

web_server_ssl_cert

선택 사항

/path/to/webserver.cert

automationhub_ssl_cert 와 동일하지만 웹 서버 UI 및 API의 경우 마찬가지입니다.

web_server_ssl_key

선택 사항

/path/to/webserver.key

automationhub_server_ssl_key 와 동일하지만 웹 서버 UI 및 API의 경우

A.4. Ansible 변수

다음 변수는 Ansible Automation Platform이 원격 호스트와 상호 작용하는 방법을 제어합니다.

특정 플러그인 관련 변수에 대한 추가 정보는 https://docs.ansible.com/ansible-core/devel/collections/ansible/builtin/index.html에서 확인할 수 있습니다.

글로벌 구성 옵션 목록은 https://docs.ansible.com/ansible-core/devel/reference_appendices/config.html에서 확인할 수 있습니다.

변수description

ansible_connection

대상 호스트에서 작업에 사용되는 연결 플러그인입니다.

이는 ansible 연결 플러그인의 이름일 수 있습니다. SSH 프로토콜 유형은 smart,ssh 또는 paramiko 입니다.

default = smart

ansible_host

inventory_hostname 대신 사용할 대상 호스트의 IP 또는 이름입니다.

ansible_port

연결 포트 번호(가 없는 경우 ssh의 기본값)입니다.

ansible_user

호스트에 연결할 때 사용할 사용자 이름입니다.

ansible_password

호스트에 인증하는 데 사용할 암호입니다.

이 변수를 일반 텍스트로 저장하지 마십시오.

항상 자격 증명 모음을 사용합니다.

ansible_ssh_private_key_file

ssh에서 사용하는 개인 키 파일입니다. 여러 키를 사용하는 경우 유용하며 SSH 에이전트를 사용하지 않습니다.

ansible_ssh_common_args

이 설정은 항상 sftp,scp, ssh 의 기본 명령줄에 추가됩니다. 특정 호스트(또는 그룹)에 대해 ProxyCommand를 구성하는 데 유용합니다.

ansible_sftp_extra_args

이 설정은 항상 기본 sftp 명령줄에 추가됩니다.

ansible_scp_extra_args

이 설정은 항상 기본 scp 명령줄에 추가됩니다.

ansible_ssh_extra_args

이 설정은 항상 기본 ssh 명령줄에 추가됩니다.

ansible_ssh_pipelining

SSH 파이프링 사용 여부를 결정합니다. 이렇게 하면 ansible.cfg 에서 pipelining 설정을 덮어쓸 수 있습니다. SSH 키 기반 인증을 사용하는 경우 SSH 에이전트에서 키를 관리해야 합니다.

ansible_ssh_executable

(버전 2.2에서 추가)

이 설정은 시스템 ssh를 사용하기 위한 기본 동작을 덮어씁니다. ansible.cfg 에서 ssh_executable 설정을 덮어쓸 수 있습니다.

ansible_shell_type

대상 시스템의 쉘 유형입니다. ansible_shell_executable 을 비Bourne(sh) 호환 쉘로 설정하지 않는 한 이 설정을 사용해서는 안 됩니다. 기본적으로 명령은 sh-style 구문을 사용하여 포맷됩니다. 이를 csh 또는 fish 로 설정하면 대상 시스템에서 명령이 대신 해당 쉘의 구문을 따릅니다.

ansible_shell_executable

이렇게 하면 ansible 컨트롤러가 대상 머신에서 사용하는 쉘을 설정하고 기본적으로 /bin/sh 로 설정된 ansible.cfg 의 실행 파일을 덮어씁니다.

/bin/sh, 즉 /bin/sh 가 대상 시스템에 설치되어 있지 않거나 sudo에서 실행할 수 없는 경우에만 변경해야 합니다.

inventory_hostname

이 변수는 인벤토리 스크립트 또는 ansible 구성 파일에서 시스템의 호스트 이름을 가져옵니다.

이 변수의 값을 설정할 수 없습니다.

이 값은 구성 파일에서 가져 오기 때문에 실제 런타임 호스트 이름 값은 이 변수에서 반환하는 내용과 다를 수 있습니다.

A.5. 이벤트 기반 Ansible 컨트롤러 변수

변수description

automationedacontroller_admin_password

이벤트 기반 Ansible 컨트롤러 인스턴스에서 사용하는 관리자 암호입니다.

automationedacontroller_admin_username

Django에서 Event-Driven Ansible 컨트롤러에서 admin 슈퍼유저를 식별하고 생성하는 데 사용하는 사용자 이름입니다.

default = admin

automationedacontroller_admin_email

이벤트 기반 Ansible 컨트롤러에 대해 admin 사용자에 대해 Django에서 사용하는 이메일 주소입니다.

Default = admin@example.com

automationedacontroller_disable_https

HTTPS 이벤트 기반 Ansible 컨트롤러를 비활성화하는 부울 플래그입니다.

default = false

automationedacontroller_disable_hsts

HSTS 이벤트 기반 Ansible 컨트롤러를 비활성화하는 부울 플래그입니다.

default = false

automationedacontroller_user_headers

이벤트 기반 Ansible 컨트롤러의 nginx 구성에 추가할 추가 nginx 헤더 목록입니다.

default = 빈 목록

automationedacontroller_nginx_tls_files_remote

인증서 소스가 원격 호스트(true) 또는 로컬(false)에 있는지 여부를 지정하는 부울 플래그입니다.

default = false

automationedacontroller_allowed_hostnames

이벤트 기반 Ansible 컨트롤러에 대한 사용자 액세스에 사용할 추가 주소 목록입니다.

default = 빈 목록

automationedacontroller_controller_verify_ssl

Event-Driven Ansible 컨트롤러에서 호출할 때 자동화 컨트롤러의 웹 인증서를 확인하는 데 사용되는 부울 플래그입니다. 검증은 true 입니다. 검증되지 않은 것은 false 입니다.

default = false

automationedacontroller_gunicorn_workers

gunicorn을 통해 제공되는 API의 작업자 수입니다.

default = (# of cores or threads) * 2 + 1

automationedacontroller_pg_database

이벤트 기반 Ansible 컨트롤러에서 사용하는 postgres 데이터베이스입니다.

default = automtionedacontroller.

automationnedacontroller_pg_host

외부 관리 데이터베이스일 수 있는 이벤트 기반 Ansible 컨트롤러에서 사용하는 postgres 데이터베이스의 호스트 이름입니다.

automationedacontroller_pg_password

Event-Driven Ansible 컨트롤러에서 사용하는 postgres 데이터베이스의 암호입니다.

edacontroller_pg_password 에는 특수 문자를 사용하지 마십시오. 암호가 실패할 수 있습니다.

automationedacontroller_pg_port

Event-Driven Ansible 컨트롤러에서 사용하는 postgres 데이터베이스의 포트 번호입니다.

기본값 = 5432.

automationedacontroller_pg_username

Event-Driven Ansible 컨트롤러 postgres 데이터베이스의 사용자 이름입니다.

default = automationedacontroller.

automationedacontroller_rq_workers

Event-Driven Ansible 컨트롤러에서 사용하는 rq 작업자( 백그라운드에서 실행되는 Python 프로세스) 수입니다.

default = 2 * (# of cores or threads) + 1

법적 공지

Copyright © 2023 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.