Red Hat Ansible Automation Platform 계획 가이드


Red Hat Ansible Automation Platform 2.3

이 문서에서는 Red Hat Ansible Automation Platform 설치를 위한 요구 사항, 옵션 및 권장 사항을 제공합니다.

Red Hat Customer Content Services

초록

피드백 제공:
이 문서를 개선하기 위한 제안이 있거나 오류를 발견한 경우, Docs 구성 요소를 사용하여 Ansible Automation Platform Jira 프로젝트에서 문제를 생성하기 위해 기술 지원에 문의하십시오 https://access.redhat.com.

머리말

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

이 가이드의 정보를 사용하여 Red Hat Ansible Automation Platform 설치를 계획합니다.

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

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

1장. Red Hat Ansible Automation Platform 설치 계획

Red Hat Ansible Automation Platform은 Red Hat Enterprise Linux 및 Red Hat OpenShift 모두에서 지원됩니다. 이 가이드를 사용하여 Red Hat Enterprise Linux에서 Red Hat Ansible Automation Platform 설치를 계획하십시오.

Red Hat OpenShift Container Platform 환경에 Red Hat Ansible Automation Platform을 설치하려면 OpenShift Container Platform 에 Red Hat Ansible Automation Platform Operator 배포를 참조하십시오.

2장. Red Hat Ansible Automation Platform 아키텍처

모듈식 플랫폼으로 Ansible Automation Platform은 구성 요소를 쉽게 통합하고 자동화 요구 사항에 가장 적합한 배포를 사용자 정의할 수 있는 유연성을 제공합니다. 이 섹션에서는 Ansible Automation Platform 배포의 포괄적인 아키텍처 예를 제공합니다.

2.1. Ansible Automation Platform 아키텍처의 예

Red Hat Ansible Automation Platform 2.3 참조 아키텍처에서는 Red Hat Enterprise Linux에서 자동화 메시를 사용하여 Ansible Automation Platform의 표준 배포 설정을 예제로 제공합니다. 표시된 배포에서는 다음과 같은 주요 구성 요소를 활용하여 자동화 워크로드를 처리하는 간단하고 안전하며 유연한 방법, 콘텐츠 컬렉션의 중앙 위치, IT 요청의 자동화된 해결을 제공합니다.

자동화 컨트롤러
UI, Restful API, RBAC 워크플로 및 CI/CD 통합을 통해 자동화할 컨트롤 플레인을 제공합니다.
자동화 메시
는 기존 네트워크를 사용하여 서로 피어 투 피어 연결을 설정하는 노드를 통해 대규모 작업자 컬렉션에서 작업을 쉽게 배포할 수 있는 기능을 제공하는 오버레이 네트워크입니다.
프라이빗 자동화 허브
자동화 개발자에게 자체 자동화 콘텐츠를 협업 및 게시하고 조직 내에서 Ansible 코드 제공을 간소화할 수 있는 기능을 제공합니다.

이 예제의 아키텍처는 다음으로 구성됩니다.

  • 두 개의 노드 자동화 컨트롤러 클러스터
  • 자동화 컨트롤러를 실행 노드에 연결하는 선택적 홉 노드
  • 두 개의 노드 자동화 허브 클러스터
  • 자동화 컨트롤러 및 자동화 허브에 연결된 단일 PostgreSQL 데이터베이스
  • 자동화 컨트롤러 클러스터당 두 개의 실행 노드

그림 2.1. Ansible Automation Platform 2.3 아키텍처의 예

3장. Red Hat Ansible Automation Platform 플랫폼 구성 요소

Ansible Automation Platform은 배포 요구 사항을 충족하기 위해 함께 연결할 수 있는 별도의 구성 요소로 구성된 모듈식 플랫폼입니다. Ansible Automation Platform 배포는 UI(사용자 인터페이스) 및 RESTful API(애플리케이션 프로그래밍 인터페이스)를 사용하여 Ansible 자동화를 제어, 보안 및 관리하기 위한 엔터프라이즈 프레임워크인 자동화 컨트롤러로 시작합니다. 그런 다음 다음 자동화 플랫폼 구성 요소의 모든 조합을 배포에 추가할 수 있습니다.

3.1. Ansible 자동화 허브

Ansible 자동화 허브는 Ansible 콘텐츠 컬렉션의 인증된 콘텐츠를 위한 리포지토리입니다. Red Hat과 파트너는 중앙 집중식으로 컨텐츠를 게시하며 고객이 인증된 지원되는 Ansible 콘텐츠 컬렉션을 검색할 수 있습니다. Red Hat Ansible 인증 콘텐츠는 Red Hat에서 테스트 및 지원하는 콘텐츠를 사용자에게 제공합니다.

3.2. 프라이빗 자동화 허브

프라이빗 자동화 허브는 콘텐츠를 동기화하기 위해 연결이 끊긴 온프레미스 솔루션과 온프레미스 솔루션을 모두 제공합니다. Red Hat 클라우드 자동화 허브의 컬렉션 및 실행 환경 이미지를 동기화하여 사용자 정의 자동화 컬렉션 및 실행 이미지를 저장하고 제공할 수 있습니다. Ansible Galaxy 또는 기타 컨테이너 레지스트리와 같은 다른 소스를 사용하여 개인 자동화 허브에 콘텐츠를 제공할 수도 있습니다. 프라이빗 자동화 허브는 엔터프라이즈 디렉터리 및 CI/CD 파이프라인에 통합할 수 있습니다.

3.3. 자동화 서비스 카탈로그

자동화 서비스 카탈로그는 Red Hat Ansible Automation Platform 내의 서비스입니다. 자동화 서비스 카탈로그를 사용하면 다양한 환경의 Ansible 자동화 컨트롤러에서 제품 카탈로그 소스를 구성하고 관리할 수 있습니다.

자동화 서비스 카탈로그를 사용하면 다음을 수행할 수 있습니다.

  • 개별 플랫폼 인벤토리에 다중 수준 승인을 적용합니다.
  • 콘텐츠를 플랫폼의 제품 형태로 포트폴리오로 구성하십시오.
  • 포트폴리오를 선택하여 특정 사용자 그룹과 공유하십시오.
  • 사용자 요청 실행을 유도하는 값에 대한 경계를 설정합니다.

3.4. 자동화 메시

자동화 메시는 기존 네트워크를 사용하여 서로 피어 간 연결을 설정하는 노드를 통해 대규모의 분산된 작업자 컬렉션에서 작업 분배를 용이하게하기위한 오버레이 네트워크입니다.

자동화 메시는 다음을 제공합니다.

  • 독립적으로 확장되므로 다운타임을 최소화하여 노드를 생성, 등록, 그룹 해제 및 등록할 수 있습니다.
  • 컨트롤 플레인 용량과 별도로 플레이북 실행 용량을 확장할 수 있는 컨트롤 및 실행 플레인 분리입니다.
  • 대기 시간에 탄력적이고, 중단 없이 다시 구성할 수 있으며, 중단이 발생할 때 다른 경로를 동적으로 다시 라우팅하는 배포 선택
  • 메시 라우팅 변경
  • FIPS(Federal Information Processing Standards) 준수를 위한 양방향, 다중 연결 메시 통신 가능성이 포함됩니다.

3.5. 자동화 실행 환경

자동화 실행 환경은 Red Hat Ansible Automation Platform의 모든 자동화가 실행되는 컨테이너 이미지입니다. Ansible 실행 엔진과 수백 개의 모듈이 포함된 솔루션을 제공하여 사용자가 IT 환경 및 프로세스의 모든 측면을 자동화할 수 있도록 지원합니다. 자동화 실행 환경은 일반적으로 사용되는 운영 체제, 인프라 플랫폼, 네트워크 장치 및 클라우드를 자동화합니다.

3.6. Ansible Galaxy

Ansible Galaxy는 Ansible 콘텐츠를 검색, 재사용 및 공유하기 위한 허브입니다. 사전 패키징된 역할 형태로 커뮤니티 제공 Galaxy 콘텐츠는 자동화 프로젝트를 시작하는 데 도움이 될 수 있습니다. 인프라 프로비저닝, 애플리케이션 배포 및 기타 작업을 완료하는 데 필요한 역할을 Ansible 플레이북에 드롭할 수 있으며 고객 환경에 즉시 적용할 수 있습니다.

3.7. 자동화 콘텐츠 탐색기

Automation Content navigator는 텍스트 사용자 인터페이스 (TUI)로, 콘텐츠 빌드의 사용 사례를 소개하고, 실행 환경에서 로컬로 자동화 실행, Ansible Automation Platform에서 자동화 실행, 향후 IDE( 통합 개발 환경 )의 기반을 제공하는 텍스트 사용자 인터페이스(TUI)입니다.

4장. 시스템 요구 사항

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

사전 요구 사항

  • sudo 명령을 통해 또는 권한 에스컬레이션을 통해 root 액세스 권한을 얻을 수 있어야 합니다. 권한 에스컬레이션에 대한 자세한 내용은 권한 에스컬레이션 이해 를 참조하십시오.
  • root에서 AWX, PostgreSQL 또는 Pulp와 같은 사용자로 권한을 에스컬레이션할 수 있어야 합니다.
  • 모든 노드에 NTP 클라이언트를 구성해야 합니다. 자세한 내용은 Chrony를 사용하여 NTP 서버 구성 을 참조하십시오.

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

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

Expand
표 4.1. 기본 시스템
요구 사항필수 항목참고

서브스크립션

유효한 Red Hat Ansible Automation Platform

 

OS

Red Hat Enterprise Linux 8.6 이상 64비트(x86,ppc64le, s390x, aarch64) 또는 Red Hat Enterprise Linux 9.0 이상(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.14가 포함된 실행 환경이 포함되어 있습니다.

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 사용자 가이드의 시작하기 를 참조하십시오.

Red Hat Ansible Automation Platform 요구 사항에 대한 추가 노트

  • Ansible Automation Platform에서 관리하는 시스템에 대한 요구 사항은 Ansible과 동일합니다. Ansible 사용자 가이드의 시작하기 를 참조하십시오.
  • Red Hat Ansible Automation Platform은 Ansible 플레이북에 따라 달라지며 자동화 컨트롤러를 설치하기 전에 안정적인 최신 버전의 Ansible을 설치해야 하지만 Ansible 수동 설치는 더 이상 필요하지 않습니다.
  • 새로운 설치의 경우 자동화 컨트롤러에서 Ansible 2.3의 최신 릴리스 패키지를 설치합니다.
  • 번들 Ansible Automation Platform 설치를 수행하는 경우 설치 프로그램은 번들에서 Ansible(및 해당 종속 항목)을 설치하려고 합니다.
  • Ansible을 자체적으로 설치하도록 선택하는 경우 Ansible Automation Platform 설치 프로그램에서 Ansible이 설치되었음을 감지하고 다시 설치하지 않습니다.
참고

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

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

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

노드 크기 조정에는 다음 권장 사항을 사용합니다.

참고

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

실행 노드

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

Expand
요구 사항필수 항목

RAM

16GB

CPU

4

로컬 디스크

최소 40GB

컨트롤 노드

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

Expand
요구 사항필수 항목

RAM

16GB

CPU

4

로컬 디스크

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

하이브리드 노드

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

Expand
요구 사항필수 항목

RAM

16GB

CPU

4

로컬 디스크

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

홉 노드

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

Expand
요구 사항필수 항목

RAM

16GB

CPU

4

로컬 디스크

40GB

  • 실제 RAM 요구 사항은 동시에 관리할 호스트 자동화 컨트롤러 수(작업 템플릿 또는 시스템 ansible.cfg 파일의 forks 매개변수에 의해 제어됨)에 따라 달라집니다. 가능한 리소스 충돌을 방지하기 위해 Ansible은 10개의 포크 + 2GB 예약 컨트롤러당 1GB의 메모리를 권장합니다. 자세한 내용은 자동화 컨트롤러 용량 제거 및 작업 영향을 참조하십시오. 포크 가 400으로 설정되면 42GB의 메모리가 권장됩니다.
  • 자동화 컨트롤러 호스트는 Cryostat 0022로 설정되어 있는지 확인합니다. 그렇지 않으면 설정이 실패합니다. 이 오류를 방지하려면 Cryostat=0022 를 설정합니다.
  • 더 많은 수의 호스트를 처리할 수 있지만 포크 번호가 총 호스트 수보다 작으면 호스트 간에 더 많은 패스가 필요합니다. 다음 접근 방법 중 하나를 사용하여 이러한 RAM 제한을 방지할 수 있습니다.

    • 롤링 업데이트를 사용합니다.
    • 자동화 컨트롤러에 빌드된 프로비저닝 콜백 시스템을 사용합니다. 각 시스템은 구성을 요청하는 각 시스템이 대기열로 전환하고 가능한 한 빨리 처리됩니다.
    • 자동화 컨트롤러에서 AMI와 같은 이미지를 생성하거나 배포하는 경우입니다.

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

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

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

Expand
요구 사항필수 항목참고

RAM

최소 8GB

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

CPU

최소 2개

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

로컬 디스크

60GB 디스크

컬렉션 스토리지의 경우 최소 40GB는 /var 전용이어야 합니다.

참고

프라이빗 자동화 허브

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

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

이렇게 하면 외부 주소가 /etc/pulp/settings.py 에 추가됩니다.

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

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

4.4. PostgreSQL 요구 사항

Red Hat Ansible Automation Platform에서는 PostgreSQL 13을 사용합니다.

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

각 자동화 컨트롤러

40GB의 전용 하드 디스크 공간

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

각 자동화 허브

60GB 전용 하드 디스크 공간

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

데이터베이스

20GB 전용 하드 디스크 공간

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

PostgreSQL 구성

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

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
Copy to Clipboard Toggle word wrap

추가 리소스

PostgreSQL 서버 조정에 대한 자세한 내용은 PostgreSQL 문서를 참조하십시오.

4.4.1. 외부(고객 지원) 데이터베이스 설정

중요

Red Hat은 외부(고객 지원) 데이터베이스를 지원하지 않지만 고객이 사용합니다. 제품 설치 관점에서의 초기 구성에 대한 다음 지침은 관련 지원 요청을 방지하기 위해 제공됩니다.

자동화 컨트롤러와 함께 사용할 외부 PostgreSQL 호환 데이터베이스에서 데이터베이스, 사용자 및 암호를 생성하려면 다음 절차를 사용하십시오.

절차

  1. 슈퍼유저 권한으로 PostgreSQL 호환 데이터베이스 서버에 연결합니다.

    # psql -h <db.example.com> -U superuser -p 5432 -d postgres <Password for user superuser>:
    Copy to Clipboard Toggle word wrap

    다음과 같습니다.

    -h hostname
    --host=hostname
    Copy to Clipboard Toggle word wrap

    서버가 실행 중인 시스템의 호스트 이름을 지정합니다. 값이 슬래시로 시작되면 Unix-domain 소켓의 디렉터리로 사용됩니다.

    -d dbname
    --dbname=dbname
    Copy to Clipboard Toggle word wrap

    연결할 데이터베이스의 이름을 지정합니다. 이는 명령줄에서 첫 번째 비옵션 인수로 dbname 을 지정하는 것과 동일합니다. dbname 은 연결 문자열일 수 있습니다. 이 경우 연결 문자열 매개 변수는 충돌하는 명령줄 옵션을 재정의합니다.

    -U username
    --username=username
    Copy to Clipboard Toggle word wrap

    기본값 대신 사용자 이름으로 데이터베이스에 연결합니다. (이 작업을 수행할 수 있는 권한이 있어야 합니다.)

  2. createDB 또는 사용자에게 할당된 관리자 역할을 사용하여 사용자, 데이터베이스 및 암호를 만듭니다. 자세한 내용은 데이터베이스 역할을 참조하십시오.
  3. 데이터베이스 자격 증명 및 호스트 세부 정보를 자동화 컨트롤러 인벤토리 파일에 외부 데이터베이스로 추가합니다.

    다음 예제에서는 기본값을 사용합니다.

    [database]
    pg_host='db.example.com'
    pg_port=5432
    pg_database='awx'
    pg_username='awx'
    pg_password='redhat'
    Copy to Clipboard Toggle word wrap
  4. 설치 프로그램을 실행합니다.

    자동화 컨트롤러가 있는 PostgreSQL 데이터베이스를 사용하는 경우 연결된 사용자가 데이터베이스를 소유하며 createDB 또는 관리자 역할이 할당되어야 합니다.

  5. 사용자, 암호 및 데이터베이스 이름을 사용하여 생성된 데이터베이스에 연결할 수 있는지 확인합니다.
  6. 사용자 권한을 확인합니다. 사용자에게 createDB 또는 관리자 역할이 있어야 합니다.
참고

이 절차 중에 외부 데이터베이스 범위를 확인해야 합니다. 자세한 내용은 https://access.redhat.com/articles/4010491에서 참조하십시오.

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

사전 요구 사항

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

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

    # yum -y install fio
    Copy to Clipboard Toggle word wrap
  • 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
    Copy to Clipboard Toggle word wrap
  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
    Copy to Clipboard Toggle word wrap
  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
    […]
    Copy to Clipboard Toggle word wrap

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

5장. 네트워크 포트 및 프로토콜

Red Hat Ansible Automation Platform은 여러 포트를 사용하여 서비스와 통신합니다. 이러한 포트가 열려 있어야 하며 Red Hat Ansible Automation Platform 서버 연결에서 사용할 수 있어야 합니다. 이러한 포트가 사용 가능하고 서버 방화벽에 의해 차단되지 않았는지 확인합니다.

다음 아키텍처 다이어그램은 가능한 모든 구성 요소가 포함된 완전히 배포된 Ansible Automation Platform의 예입니다.

다음 표에는 각 애플리케이션에 필요한 기본 Red Hat Ansible Automation Platform 대상 포트가 표시되어 있습니다.

참고

나열된 다음 기본 대상 포트 및 설치 프로그램 인벤토리는 구성할 수 있습니다. 환경에 맞게 구성하도록 선택하는 경우 동작 변화가 발생할 수 있습니다.

Expand
표 5.1. PostgreSQL
포트프로토콜Servicedirection설치 프로그램 인벤토리 변수필수 항목

22

TCP

SSH

인바운드 및 아웃 바운드

ansible_port

설치 중 원격 액세스

5432

TCP

Postgres

인바운드 및 아웃 바운드

pg_port

기본 포트

컨트롤러에서 데이터베이스 포트로의 ALLOW 연결

Expand
표 5.2. 자동화 컨트롤러
포트프로토콜Servicedirection설치 프로그램 인벤토리 변수필수 항목

22

TCP

SSH

인바운드 및 아웃 바운드

ansible_port

설치

80

TCP

HTTP

인바운드

nginx_http_port

UI/API

443

TCP

HTTPS

인바운드

nginx_https_port

UI/API

5432

TCP

PostgreSQL

인바운드 및 아웃 바운드

pg_port

내부 데이터베이스를 다른 구성 요소와 함께 사용하는 경우에만 엽니다. 그렇지 않으면 이 포트가 열려서는 안 됩니다.

클러스터의 하이브리드 모드

27199

TCP

Receptor

인바운드 및 아웃 바운드

receptor_listener_port

필수 및 자동 컨트롤 플레인 클러스터링을 위해 모든 컨트롤러에서 ALLOW 수신기 리스너 포트

Expand
표 5.3. 홉 노드
포트프로토콜Servicedirection설치 프로그램 인벤토리 변수필수 항목

22

TCP

SSH

인바운드 및 아웃 바운드

ansible_port

설치

27199

TCP

Receptor

인바운드 및 아웃 바운드

receptor_listener_port

메시

컨트롤러에서 Receptor 포트로의 ALLOW 연결

Expand
표 5.4. 실행 노드
포트프로토콜Servicedirection설치 프로그램 인벤토리 변수필수 항목

22

TCP

SSH

인바운드 및 아웃 바운드

ansible_port

설치

80/443

TCP

SSH

인바운드 및 아웃 바운드

고정 값 (표 5.7 Automation Hub의 "사용자 인터페이스" 포트에 매핑)

실행 노드에서 자동화 허브에서 실행 환경 이미지를 가져올 수 있음

27199

TCP

Receptor

인바운드 및 아웃 바운드

receptor_listener_port

Mesh - 노드는 컨트롤러와 직접 피어링됩니다. 홉 노드가 포함되어 있지 않습니다. 27199는 실행 노드에 대한 양방향입니다.

컨트롤러에서 Receptor 포트로의 ALLOW 연결(연결되지 않은 노드)

Hop node(s)에서 Receptor 포트로의 ALLOW 연결(홉 노드를 통해 중계된 경우)

Expand
표 5.5. 제어 노드
포트프로토콜Servicedirection설치 프로그램 인벤토리 변수필수 항목

22

TCP

SSH

인바운드 및 아웃 바운드

ansible_port

설치

27199

TCP

Receptor

인바운드 및 아웃 바운드

receptor_listener_port

Mesh - 노드는 컨트롤러와 직접 피어링됩니다. 직접 노드와 관련된 노드입니다. 27199는 실행 노드에 대한 양방향입니다.

연결된 노드의 경우 controller에서 Receptor 포트로의 ENABLE 연결

홉 노드를 통해 릴레이하는 경우 hop node에서 Receptor 포트로의 ENABLE 연결

443

TCP

Podman

인바운드

nginx_https_port

UI/API

Expand
표 5.6. 하이브리드 노드
포트프로토콜Servicedirection설치 프로그램 인벤토리 변수필수 항목

22

TCP

SSH

인바운드 및 아웃 바운드

ansible_port

설치

27199

TCP

Receptor

인바운드 및 아웃 바운드

receptor_listener_port

Mesh - 노드는 컨트롤러와 직접 피어링됩니다. 홉 노드가 포함되어 있지 않습니다. 27199는 실행 노드에 대한 양방향입니다.

연결된 노드의 경우 controller에서 Receptor 포트로의 ENABLE 연결

홉 노드를 통해 릴레이하는 경우 hop node에서 Receptor 포트로의 ENABLE 연결

443

TCP

Podman

인바운드

nginx_https_port

UI/API

Expand
표 5.7. 자동화 허브
포트프로토콜Servicedirection설치 프로그램 인벤토리 변수필수 항목

22

TCP

SSH

인바운드 및 아웃 바운드

ansible_port

설치

80

TCP

HTTP

인바운드

고정 값

사용자 인터페이스

443

TCP

HTTPS

인바운드

고정 값

사용자 인터페이스

5432

TCP

PostgreSQL

인바운드 및 아웃 바운드

automationhub_pg_port

내부 데이터베이스를 다른 구성 요소와 함께 사용하는 경우에만 엽니다. 그렇지 않으면 이 포트가 열려서는 안 됩니다.

Expand
표 5.8. 서비스 카탈로그
포트프로토콜Servicedirection설치 프로그램 인벤토리 변수필수 항목

22

TCP

SSH

인바운드 및 아웃 바운드

ansible_port

설치

443

TCP

HTTPS

인바운드

nginx_https_port

Service Catalog 사용자 인터페이스에 액세스

5432

TCP

PostgreSQL

인바운드 및 아웃 바운드

pg_port

내부 데이터베이스가 사용되는 경우에만 엽니다. 그렇지 않으면 이 포트가 열려서는 안 됩니다.

Expand
표 5.9. Red Hat Insights for Red Hat Ansible Automation Platform
URL필수 항목

http://api.access.redhat.com:443

일반 계정 서비스, 서브스크립션

https://cert-api.access.redhat.com:443

Insights 데이터 업로드

https://cert.cloud.redhat.com:443

인벤토리 업로드 및 Cloud Connector 연결

https://cloud.redhat.com

Insights 대시보드에 액세스

Expand
표 5.10. Automation Hub
URL필수 항목

https://console.redhat.com:443

일반 계정 서비스, 서브스크립션

https://catalog.redhat.com

실행 환경 인덱싱

https://sso.redhat.com:443

TCP

https://automation-hub-prd.s3.amazonaws.com https://automation-hub-prd.s3.us-east-2.amazonaws.com/

방화벽 액세스

https://galaxy.ansible.com

Ansible 커뮤니티 큐레이션된 Ansible 콘텐츠

https://ansible-galaxy-ng.s3.dualstack.us-east-1.amazonaws.com

 

https://registry.redhat.io:443

Red Hat 및 파트너사에서 제공하는 컨테이너 이미지에 액세스

https://cert.cloud.redhat.com:443

Red Hat 및 파트너 큐레이션 Ansible 컬렉션

Expand
표 5.11. 실행 환경(EE)
URL필수 항목

https://registry.redhat.io:443

Red Hat 및 파트너사에서 제공하는 컨테이너 이미지에 액세스

cdn.quay.io:443

Red Hat 및 파트너사에서 제공하는 컨테이너 이미지에 액세스

cdn01.quay.io:443

Red Hat 및 파트너사에서 제공하는 컨테이너 이미지에 액세스

cdn02.quay.io:443

Red Hat 및 파트너사에서 제공하는 컨테이너 이미지에 액세스

cdn03.quay.io:443

Red Hat 및 파트너사에서 제공하는 컨테이너 이미지에 액세스

중요

이미지 매니페스트 및 파일 시스템 Blob은 registry.redhat.io 에서 직접 제공됩니다. 그러나 2023년 5월 1일부터 파일 시스템 Blob은 quay.io 에서 대신 제공됩니다. 컨테이너 이미지를 가져오는 데 문제가 발생하지 않도록 하려면 나열된 quay.io 호스트 이름에 대한 아웃바운드 연결을 활성화해야 합니다.

registry.redhat.io 에 대한 아웃바운드 연결을 가능하게 하는 방화벽 구성을 변경합니다.

방화벽 규칙을 구성할 때 IP 주소 대신 호스트 이름을 사용합니다.

이 변경 후 registry.redhat.io 에서 이미지를 계속 가져올 수 있습니다. quay.io 로그인이 필요하지 않거나 Red Hat 컨테이너 이미지를 계속 가져오려면 quay.io 레지스트리와 직접 상호 작용해야 합니다.

자세한 내용은 여기에서문서를 참조하십시오.

6장. Red Hat Ansible Automation Platform 서브스크립션 연결

Red Hat Ansible Automation Platform을 설치하기 전에 모든 노드에 유효한 서브스크립션이 연결되어 있어야 합니다. Ansible Automation Platform 서브스크립션을 연결하면 설치를 진행하는 데 필요한 subcription 전용 리소스에 액세스할 수 있습니다.

참고

Red Hat 계정에서 Simple Content Access 모드를 활성화하면 서브스크립션을 연결할 필요가 없습니다. 활성화되면 Ansible Automation Platform을 설치하기 전에 RHSM(Red Hat Subscription Management) 또는 Satellite에 시스템을 등록해야 합니다. 자세한 내용은 간단한 콘텐츠 액세스 모드를 참조하십시오.

절차

  1. Red Hat Ansible Automation Platform 서브스크립션의 pool_id 를 가져옵니다.

    # subscription-manager list --available --all | grep "Ansible Automation Platform" -B 3 -A 6
    Copy to Clipboard Toggle word wrap
    참고

    Ansible Automation Platform 서브스크립션 연결이 실패할 수 있으므로 서브스크립션에 대해 MCT4022를 pool_id 로 사용하지 마십시오.

    예제

    subsciption-manager list 명령의 출력 예. Pool ID: 섹션에 표시된 대로 pool_id 를 가져옵니다.

    Subscription Name: Red Hat Ansible Automation, Premium (5000 Managed Nodes)
      Provides: Red Hat Ansible Engine
      Red Hat Ansible Automation Platform
      SKU: MCT3695
      Contract: ````
      Pool ID: <pool_id>
      Provides Management: No
      Available: 4999
      Suggested: 1
    Copy to Clipboard Toggle word wrap
  2. 서브스크립션을 연결합니다.

    # subscription-manager attach --pool=<pool_id>
    Copy to Clipboard Toggle word wrap

이제 Red Hat Ansible Automation Platform 서브스크립션을 모든 노드에 연결했습니다.

검증

  • 서브스크립션이 성공적으로 연결되었는지 확인합니다.
# subscription-manager list --consumed
Copy to Clipboard Toggle word wrap

문제 해결

  • Ansible Automation Platform 설치 프로그램과 함께 번들로 제공된 특정 패키지를 찾을 수 없거나 구성 메시지에 의해 비활성화된 리포지토리 가 표시되는 경우 명령을 사용하여 리포지토리를 활성화해 보십시오.

    Red Hat Ansible Automation Platform 2.3 for RHEL 8

    subscription-manager repos --enable ansible-automation-platform-2.3-for-rhel-8-x86_64-rpms
    Copy to Clipboard Toggle word wrap

    Red Hat Ansible Automation Platform 2.3 for RHEL 9

    subscription-manager repos --enable ansible-automation-platform-2.3-for-rhel-9-x86_64-rpms
    Copy to Clipboard Toggle word wrap

7장. Red Hat Ansible Automation Platform 설치 프로그램 선택 및 가져오기

Red Hat Enterprise Linux 환경 인터넷 연결을 기반으로 필요한 Red Hat Ansible Automation Platform 설치 프로그램을 선택합니다. 아래 시나리오를 검토하고 Red Hat Ansible Automation Platform 설치 프로그램이 요구 사항을 충족하는지 확인합니다.

7.1. 인터넷으로 설치

Red Hat Enterprise Linux 환경이 인터넷에 연결된 경우 Red Hat Ansible Automation Platform 설치 프로그램을 선택합니다. 인터넷 액세스가 포함된 설치는 최신 필수 리포지토리, 패키지 및 종속성을 검색합니다. 다음 방법 중 하나를 선택하여 Ansible Automation Platform 설치 프로그램을 설정합니다.

tarball 설치

  1. Red Hat Ansible Automation Platform 다운로드 페이지로 이동합니다.
  2. Ansible Automation Platform <latest-version> 설정에 대해 지금 다운로드를 클릭합니다.
  3. 파일을 추출합니다.

    $ tar xvzf ansible-automation-platform-setup-<latest-version>.tar.gz
    Copy to Clipboard Toggle word wrap

RPM 설치

  1. Ansible Automation Platform 설치 프로그램 패키지 설치

    v.2.3 for RHEL 8 for x86_64

    $ sudo dnf install --enablerepo=ansible-automation-platform-2.3-for-rhel-8-x86_64-rpms ansible-automation-platform-installer
    Copy to Clipboard Toggle word wrap

    x86-64용 RHEL 9용 V.2.3

    $ sudo dnf install --enablerepo=ansible-automation-platform-2.3-for-rhel-9-x86_64-rpms ansible-automation-platform-installer
    Copy to Clipboard Toggle word wrap
참고

리포지토리가 기본적으로 비활성화되어 있으므로 dnf install 을 사용하면 리포지터리를 사용할 수 있습니다.

RPM 설치 프로그램을 사용하면 파일이 /opt/ansible-automation-platform/installer 디렉터리에 배치됩니다.

7.2. 인터넷 액세스없이 설치

인터넷에 액세스할 수 없거나 온라인 리포지토리와 별도의 구성 요소 및 종속 항목을 설치하지 않으려는 경우 Red Hat Ansible Automation Platform Bundle 설치 관리자를 사용합니다. Red Hat Enterprise Linux 리포지토리에 대한 액세스는 여전히 필요합니다. 기타 모든 종속 항목은 tar 아카이브에 포함되어 있습니다.

절차

  1. https://access.redhat.com/downloads/content/480로 이동합니다.
  2. Ansible Automation Platform <latest-version> 설치 번들로 지금 다운로드를 클릭합니다.
  3. 파일을 추출합니다.

    $ tar xvzf ansible-automation-platform-setup-bundle-<latest-version>.tar.gz
    Copy to Clipboard Toggle word wrap

8장. 설치 프로그램 인벤토리 파일 정보

Red Hat Ansible Automation Platform은 인벤토리 파일을 사용하여 논리적으로 구성된 인프라의 관리 노드 또는 호스트 목록과 대조됩니다. Red Hat Ansible Automation Platform 설치 프로그램 인벤토리 파일을 사용하여 설치 시나리오를 지정하고 Ansible에 대한 호스트 배포를 설명할 수 있습니다. Ansible은 인벤토리 파일을 사용하여 단일 명령으로 다수의 호스트를 관리할 수 있습니다. 또한 인벤토리는 지정해야 하는 명령줄 옵션 수를 줄임으로써 Ansible을 보다 효율적으로 사용할 수 있도록 지원합니다.

인벤토리 파일은 보유한 인벤토리 플러그인에 따라 여러 형식 중 하나일 수 있습니다. 가장 일반적인 형식은 INIYAML 입니다. 이 문서에 나열된 인벤토리 파일은 INI 형식으로 표시됩니다.

인벤토리 파일의 위치는 사용한 설치 프로그램에 따라 다릅니다. 다음 표에서는 가능한 위치를 보여줍니다.

Expand
설치 프로그램위치

번들 tar

/ansible-automation-platform-setup-bundle-<latest-version>

제공되지 않음 tar

/ansible-automation-platform-setup-<latest-version>

RPM

/opt/ansible-automation-platform/installer

다음 명령을 사용하여 인벤토리의 호스트를 확인할 수 있습니다.

ansible all -i <path-to-inventory-file. --list-hosts
Copy to Clipboard Toggle word wrap

인벤토리 파일 예

[automationcontroller]
host1.example.com
host2.example.com
Host4.example.com

[automationhub]
host3.example.com

[database]
Host5.example.com

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

pg_host=''
pg_port=''

pg_database='awx'
pg_username='awx'
pg_password='<password>'

registry_url='registry.redhat.io'
registry_username='<registry username>'
registry_password='<registry password>'
Copy to Clipboard Toggle word wrap

인벤토리 파일의 첫 번째 부분에서는 Ansible에서 작업할 수 있는 호스트 또는 그룹을 지정합니다.

8.1. 호스트 및 그룹 관련 지침

데이터베이스

  • 외부 데이터베이스를 사용하는 경우 인벤토리 파일의 [database] 섹션이 올바르게 설정되어 있는지 확인합니다.
  • 성능 향상을 위해 데이터베이스 및 자동화 컨트롤러를 동일한 서버에 공동 배치하지 마십시오.

자동화 허브

  • [automationhub] 그룹이 있는 경우 변수 automationhub_pg_ host 및 automationhub_pg _port 를 포함해야 합니다.
  • [automationhub] 그룹에 Ansible 자동화 허브 정보를 추가합니다.
  • 동일한 노드에 Ansible 자동화 허브 및 자동화 컨트롤러를 설치하지 마십시오.
  • [automationhub][automationcontroller] 호스트에 연결할 수 있는 IP 주소 또는 FQDN(정규화된 도메인 이름)을 제공하여 사용자가 다른 노드의 Ansible 자동화 허브 및 자동화 컨트롤러에서 콘텐츠를 동기화하고 설치할 수 있도록 합니다.

    FQDN은 올바르게 처리되지 않으므로 - 또는 _ 기호를 포함하지 않아야 합니다.

    localhost 를 사용하지 마십시오.

프라이빗 자동화 허브

  • 동일한 노드에 프라이빗 자동화 허브 및 자동화 컨트롤러를 설치하지 마십시오.
  • 동일한 PostgreSQL(데이터베이스) 인스턴스를 사용할 수 있지만 다른 (데이터베이스) 이름을 사용해야 합니다.
  • 내부 주소에서 개인 자동화 허브를 설치하고 외부 주소만 포함하는 인증서가 있는 경우 설치 시 인증서 문제가 없는 컨테이너 레지스트리로 사용할 수 없습니다.
중요

[database] 그룹이 동시에 설치된 경우 둘 다 구분하지 않으므로 자동화 컨트롤러와 Ansible 자동화 허브 설치를 분리해야 합니다.

[database] 에서 하나의 값을 사용하고 자동화 컨트롤러와 Ansible 자동화 허브가 둘 다 정의하는 경우 동일한 데이터베이스를 사용합니다.

자동화 컨트롤러

  • 자동화 컨트롤러는 사용하는 데이터베이스에 대한 복제 또는 장애 조치(failover)를 구성하지 않습니다. 자동화 컨트롤러는 보유 중인 복제와 함께 작동합니다.

클러스터형 설치

  • 기존 클러스터를 업그레이드할 때 기존 인스턴스 또는 인스턴스 그룹을 생략하도록 클러스터를 재구성할 수도 있습니다. 인벤토리 파일에서 인스턴스 또는 인스턴스 그룹을 생략하는 것만으로는 클러스터에서 제거하기에 충분하지 않습니다. 인벤토리 파일에서 인스턴스 또는 인스턴스 그룹을 생략하는 것 외에도 업그레이드를 시작하기 전에 인스턴스 또는 인스턴스 그룹을 프로비저닝 해제해야 합니다. 노드 또는 그룹 프로비저닝 을 참조하십시오. 그러지 않으면 생략된 인스턴스 또는 인스턴스 그룹이 클러스터와 계속 통신하므로 업그레이드 중에 자동화 컨트롤러 서비스에 문제가 발생할 수 있습니다.
  • 클러스터형 설치 설정을 생성하는 경우 [localhost] 를 모든 인스턴스의 호스트 이름 또는 IP 주소로 교체해야 합니다. 자동화 컨트롤러, 자동화 허브 및 자동화 서비스 카탈로그의 설치 프로그램은 [localhost] 모든 노드와 인스턴스를 허용하지 않아야 합니다. 이 호스트 이름 또는 주소를 사용하여 다른 노드에 연결할 수 있어야 합니다. 노드 중 하나에서 localhost ansible_connection=local 을 사용할 수 없습니다. 모든 노드의 호스트 이름에 동일한 형식을 사용합니다.

    따라서 이 작업은 작동하지 않습니다.

    [automationhub]
    localhost ansible_connection=local
    hostA
    hostB.example.com
    172.27.0.4
    Copy to Clipboard Toggle word wrap

    대신 다음 형식을 사용하십시오.

    [automationhub]
    hostA
    hostB
    hostC
    Copy to Clipboard Toggle word wrap

    또는

    [automationhub]
    hostA.example.com
    hostB.example.com
    hostC.example.com
    Copy to Clipboard Toggle word wrap

8.2. 노드 또는 그룹 프로비저닝 해제

Ansible Automation Platform 설치 프로그램을 사용하여 노드 및 인스턴스 그룹 프로비저닝을 해제할 수 있습니다. 설치 프로그램을 실행하면 모든 구성 파일과 해당 그룹의 노드에 연결된 로그가 제거됩니다.

참고

[automationcontroller] 그룹에 지정된 첫 번째 호스트를 제외하고 인벤토리의 모든 호스트를 프로비저닝 해제할 수 있습니다.

노드를 프로비저닝 해제하려면 인벤토리 파일 내의 노드 또는 그룹에 node_state=deprovision 을 추가합니다.

예를 들면 다음과 같습니다.

배포에서 단일 노드를 제거하려면 다음을 수행합니다.

[automationcontroller]
host1.example.com
host2.example.com
host4.example.com   node_state=deprovision
Copy to Clipboard Toggle word wrap

또는

배포에서 전체 인스턴스 그룹을 제거하려면 다음을 수행합니다.

[instance_group_restrictedzone]
host4.example.com
host5.example.com

[instance_group_restrictedzone:vars]
node_state=deprovision
Copy to Clipboard Toggle word wrap

8.3. 인벤토리 변수

예제 인벤토리 파일의 두 번째 부분인 [all:vars] 은 설치 프로그램에서 사용하는 변수 목록입니다. all 을 사용하면 변수가 모든 호스트에 적용됩니다.

특정 호스트에 변수를 적용하려면 [hostname:vars] 를 사용합니다. 예를 들면 [automationhub:vars] 입니다.

8.4. 인벤토리 파일에서 변수를 선언하는 규칙

문자열 변수의 값은 따옴표로 선언됩니다. 예를 들면 다음과 같습니다.

pg_database='awx'
pg_username='awx'
pg_password='<password>'
Copy to Clipboard Toggle word wrap

:vars 섹션에 선언되면 INI 값이 문자열로 해석됩니다. 예를 들어, var=FALSE 는 skopeo 와 같은 문자열을 만듭니다. 호스트 행과 달리 :vars 섹션은 행당 하나의 항목만 허용하므로 = 이후의 모든 항목은 항목의 값이어야 합니다. 호스트 행은 행당 여러 key=value 매개변수를 허용합니다. 따라서 공백이 구분자가 아닌 값의 일부임을 나타내는 방법이 필요합니다. 공백이 포함된 값을 인용할 수 있습니다(단일 또는 이중). 자세한 내용은 Python shlex 구문 분석 규칙을 참조하십시오.

INI 인벤토리에 설정된 변수 값이 특정 유형이어야 하는 경우(예: 문자열 또는 부울 값) 항상 작업에서 필터를 사용하여 유형을 지정합니다. 변수를 사용할 때 INI 인벤토리에 설정된 유형에 의존하지 마십시오.

참고

인벤토리 소스에 YAML 형식을 사용하여 실제 변수 유형에 대한 혼동을 방지하는 것이 좋습니다. YAML 인벤토리 플러그인은 변수 값을 일관되고 올바르게 처리합니다.

Ansible 인벤토리 파일의 매개 변수 값에 #, { 또는 }와 같은 특수 문자가 포함된 경우 값을 두 번 이스케이프해야 합니다(단일 및 이중 인용 표시로 값을 묶습니다).

예를 들어 mypasswordwith#hashsigns 를 변수 pg_password 의 값으로 사용하려면 Ansible 호스트 인벤토리 파일에서 pg_password='mypasswordwith#hashsigns"' 로 선언합니다.

8.5. 인벤토리 파일의 보안 보안

Ansible Vault를 사용하여 민감한 변수 또는 시크릿 변수를 암호화할 수 있습니다. 그러나 변수 이름과 변수 값을 암호화하면 값의 소스를 찾기가 어렵습니다. 이렇게 하려면 ansible-vault encrypt_string 을 사용하여 변수를 개별적으로 암호화하거나 변수가 포함된 파일을 암호화할 수 있습니다.

절차

  1. credentials.yml 이라는 레이블이 지정된 파일을 만들어 암호화된 자격 증명을 저장합니다.

    $ cat credentials.yml
    
    admin_password: my_long_admin_pw
    pg_password: my_long_pg_pw
    registry_password: my_long_registry_pw
    Copy to Clipboard Toggle word wrap
  2. ansible-vault 를 사용하여 credentials.yml 파일을 암호화합니다.

    $ ansible-vault encrypt credentials.yml
    New Vault password:
    Confirm New Vault password:
    Encryption successful
    Copy to Clipboard Toggle word wrap
    중요

    암호화된 자격 증명 모음 암호를 안전한 장소에 저장합니다.

  3. credentials.yml 파일이 암호화되었는지 확인합니다.

    $ cat credentials.yml
    $ANSIBLE_VAULT;1.1;
    AES256363836396535623865343163333339613833363064653364656138313534353135303764646165393765393063303065323466663330646232363065316666310a373062303133376339633831303033343135343839626136323037616366326239326530623438396136396536356433656162333133653636616639313864300a353239373433313339613465326339313035633565353464356538653631633464343835346432376638623533613666326136343332313163343639393964613265616433363430633534303935646264633034383966336232303365383763
    Copy to Clipboard Toggle word wrap
  4. Ansible Automation Platform 2.3 설치를 위해 setup.sh 를 실행하고 credentials.yml--ask-vault-pass 옵션을 모두 전달합니다.

    $ ANSIBLE_BECOME_METHOD='sudo' ANSIBLE_BECOME=True ANSIBLE_HOST_KEY_CHECKING=False ./setup.sh -e @credentials.yml -- --ask-vault-pass
    Copy to Clipboard Toggle word wrap

8.6. 추가 인벤토리 파일 변수

인벤토리 파일에 추가 변수를 포함하여 Red Hat Ansible Automation Platform 설치를 추가로 구성할 수 있습니다. 이러한 구성은 Red Hat Ansible Automation Platform을 관리하기 위한 선택적 기능을 추가합니다. 텍스트 편집기를 사용하여 인벤토리 파일을 편집하여 이러한 변수를 추가합니다.

인벤토리 파일 변수에 대한 사전 정의된 값의 표는 Red Hat Ansible Automation Platform 설치 가이드인벤토리 파일 변수 에서 확인할 수 있습니다.

9장. 지원되는 설치 시나리오

Red Hat은 Red Hat Ansible Automation Platform에 대해 다음과 같은 설치 시나리오를 지원합니다.

이 시나리오에는 단일 시스템에 웹 프런트 엔드, REST API 백엔드 및 데이터베이스를 포함한 자동화 컨트롤러의 설치가 포함됩니다. PostgreSQL을 설치하고 이를 데이터베이스로 사용하도록 자동화 컨트롤러를 구성합니다. 이는 표준 자동화 컨트롤러 설치 시나리오로 간주됩니다.

9.2. 외부 관리 데이터베이스가 있는 독립형 자동화 컨트롤러

이 시나리오에는 단일 시스템에 자동화 컨트롤러 서버를 설치하는 작업과 원격 PostgreSQL 인스턴스와의 통신을 해당 데이터베이스로 구성하는 작업이 포함됩니다. 이 원격 PostgreSQL은 사용자가 관리하는 서버이거나 Amazon RDS와 같은 클라우드 서비스에서 제공할 수 있습니다.

이 시나리오에는 단일 시스템에 웹 프런트 엔드, REST API 백엔드 및 데이터베이스를 포함한 자동화 허브의 설치가 포함됩니다. PostgreSQL을 설치하고 이를 데이터베이스로 사용하도록 자동화 허브를 구성합니다.

9.4. 외부 관리 데이터베이스가 있는 독립형 자동화 허브

이 시나리오에는 단일 시스템에 자동화 허브 서버를 설치하고 Red Hat Ansible Automation Platform 설치 프로그램에서 관리하는 원격 PostgreSQL 데이터베이스를 설치하는 작업이 포함됩니다.

이 시나리오에는 자동화 컨트롤러 노드 또는 설치 프로그램이 아닌 관리형 데이터베이스의 데이터베이스가 있는 자동화 컨트롤러 및 자동화 허브의 설치가 포함됩니다.

9.6. 외부 관리 데이터베이스를 사용한 플랫폼 설치

이 시나리오에는 자동화 컨트롤러 및 자동화 허브 설치를 포함하며 원격 PostgreSQL 인스턴스와의 통신을 해당 데이터베이스로 구성합니다. 이 원격 PostgreSQL은 사용자가 관리하는 서버이거나 Amazon RDS와 같은 클라우드 서비스에서 제공할 수 있습니다.

9.7. 외부 관리 데이터베이스를 사용한 다중 시스템 클러스터 설치

이 시나리오에는 여러 자동화 컨트롤러 노드 및 자동화 허브 인스턴스를 설치하는 작업이 포함되며, 데이터베이스로 원격 PostgreSQL 인스턴스와의 통신을 구성합니다. 이 원격 PostgreSQL은 사용자가 관리하는 서버이거나 Amazon RDS와 같은 클라우드 서비스에서 제공할 수 있습니다. 이 시나리오에서는 모든 자동화 컨트롤러가 활성 상태이며 작업을 실행할 수 있으며 모든 노드에서 HTTP 요청을 수신할 수 있습니다.

참고
  • 클러스터 설정에서 실행하려면 자동화 컨트롤러가 외부 ®PostgreSQL이 되는 데 사용하는 모든 데이터베이스가 기본 또는 보조 Tower 노드 중 하나가 아닌 컴퓨터에 설치해야 합니다. 중복 설정에서 원격 PostgreSQL 버전 요구 사항은 PostgreSQL 13 입니다.

  • [automationhub] 호스트의 액세스 가능한 IP 주소를 제공하여 사용자가 다른 노드에서 Private Automation Hub에서 콘텐츠를 동기화할 수 있도록 합니다.

법적 공지

Copyright © 2024 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.
맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

Theme

© 2025 Red Hat