3장. Red Hat Ansible Automation Platform 설치
Red Hat Ansible Automation Platform 설치에는 자동화 컨트롤러 및 자동화 허브를 배포해야 합니다.
Ansible Automation Platform 설치 프로그램을 사용하면 인벤토리당 하나의 자동화 허브만 배포할 수 있습니다. 자동화 허브의 독립 실행형 인스턴스에 대해 Ansible Automation Platform 설치 프로그램을 사용하고 설치 프로그램을 여러 개의 다른 인벤토리와 함께 여러 번 실행하여 여러 자동화 허브 노드를 배포할 수 있습니다.
이 설치 옵션에는 지원되는 두 가지 시나리오가 포함되어 있습니다.
이러한 지침을 사용하여 자동화 컨트롤러 노드의 데이터베이스 또는 비installer 관리 데이터베이스와 함께 Red Hat Ansible Automation Platform(자동 컨트롤러 및 자동화 허브 모두)을 설치할 수 있습니다.
3.1.1. 사전 요구 사항 링크 복사링크가 클립보드에 복사되었습니다!
- Red Hat Ansible Automation Platform 제품 소프트웨어에서 플랫폼 설치 프로그램을 선택 및 취득하셨습니다.
- 기본 시스템 요구 사항을 충족하는 머신에 설치하고 있습니다.
- Red Hat 레지스트리 서비스 계정 생성 가이드의 지침에 따라 Red Hat Registry Service 계정을 생성 했습니다.
3.1.2. Red Hat Ansible Automation Platform 설치 설정 링크 복사링크가 클립보드에 복사되었습니다!
자동화 허브를 설치할 때 다음 설정을 사용할 수 있습니다.
-
automationhub_importer_settings
: galvncy-importer
에 전달할 설정/구성 사전입니다. 이는/etc/galxxxy-importer/galxxxy-importer.cfg로 끝납니다.
-
automationhub_require_content_approval
: 자동화 허브가 수집이 제공되기 전에 승인 메커니즘을 적용하는지 여부 -
automationhub_disable_https
: 자동화 허브가 TLS가 활성화된 상태에서 배포되어야 하는지 여부 -
Automationhub_disable_hsts
: 자동화 허브가 HSM(HTTP Strict Transport Security) 웹 보안 정책 메커니즘을 사용하여 배포해야 하는지 여부 -
automationhub_ssl_validate_certs
: 기본적으로 Platform이 자체 서명 인증서로 배포되므로 자체(default = False)를 요청할 때 자동화 허브가 인증서의 유효성을 검사해야 하는지 여부 -
automationhub_ssl_cert
:web_server_ssl_cert
와 동일하지만 자동화 허브 UI 및 API -
automationhub_ssl_key
:web_server_ssl_key
와 동일하지만 자동화 허브 UI 및 API -
automationhub_backup_collections
: 자동화 허브는/var/lib/pulp
의 아티팩트를 제공합니다. 기본적으로 이 값은true
로 설정되므로 자동화 컨트롤러가 기본적으로 아티팩트를 자동으로 백업합니다. 파티션(예: LVM, NFS, CephFS 등)이 마운트된 경우 엔터프라이즈 조직에서 항상 백업되도록 합니다. 이 경우automationhub_backup_collections = false
를 설정하면 backup/restore/var/lib/pulp
프로세스가 백업/복원 프로세스가 필요하지 않습니다.
3.1.3. Red Hat Ansible Automation Platform 설치 프로그램 인벤토리 파일 편집 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat Ansible Automation Platform 설치 프로그램 인벤토리 파일을 사용하여 설치 시나리오를 지정할 수 있습니다.
- Using external databases: 인벤토리 파일의 데이터베이스 섹션이 올바르게 설정되어 있는지 확인합니다.
-
[automationhub]
그룹에 자동화 허브 정보를 추가합니다. - Automation hub 및 Automation Controller는 동일한 노드에 설치할 수 없습니다.
- 자동화 컨트롤러는 사용하는 데이터베이스에 대한 복제 또는 장애 조치(failover)를 구성하지 않습니다. 자동화 컨트롤러는 사용자가 보유한 복제와 함께 작동해야 합니다.
- 데이터베이스 서버는 성능상의 이유로 자동화 컨트롤러 서버와 동일한 네트워크 또는 데이터 센터에 있어야 합니다.
-
Ansible Automation Platform을 설치하려면 컨테이너 레지스트리 서비스가 필요합니다. 컨테이너 레지스트리에 액세스하면 Ansible Automation Platform에 자동화 실행 환경을 로드하여 Ansible 플레이북 및 역할을 실행할 수 있는 일관되고 컨테이너화된 환경을 제공할 수 있습니다. 기본적으로 Ansible Automation Platform은 Red Hat 레지스트리 서비스 계정이 필요한
registry.redhat.io
를 사용합니다. 레지스트리 서비스 계정을 생성하려면 레지스트리 서비스 계정 생성 가이드를 참조하십시오. - 기존 클러스터 업그레이드 의 경우 : 클러스터를 업그레이드할 때 기존 인스턴스 또는 인스턴스 그룹을 생략하도록 클러스터를 재구성할 수도 있습니다. 인벤토리 파일에서 인스턴스 또는 인스턴스 그룹을 생략하는 것만으로는 클러스터에서 제거되지 않습니다. 인벤토리 파일에서 인스턴스 또는 인스턴스 그룹을 생략하는 것 외에도 업그레이드를 시작하기 전에 인스턴스 또는 인스턴스 그룹을 프로비저닝 해제 해야 합니다. 그러지 않으면 생략된 인스턴스 또는 인스턴스 그룹이 클러스터와 계속 통신하므로 업그레이드하는 동안 Tower 서비스에 문제가 발생할 수 있습니다.
-
클러스터형 설치 의 경우: 클러스터형 설정을 생성하는 경우
localhost
를 모든 인스턴스의 호스트 이름 또는 IP 주소로 교체해야 합니다. 모든 노드/인스턴스는 이 호스트 이름 또는 주소를 사용하여 다른 노드/인스턴스에 도달할 수 있어야 합니다. 즉, 노드 중 하나에서localhost ansible_connection=local
을 사용할 수 없으며 모든 노드는 호스트 이름에 동일한 형식을 사용해야 합니다.
- 원격 시스템에 대한 루트 액세스가 필요합니다. Ansible을 사용하면 다음과 같이 다양한 방법으로 루트 액세스 권한을 얻을 수 있습니다.
-
ansible_user=root ansible_ssh_pass="your_password_here"
인벤토리 호스트 또는 그룹 변수 -
ansible_user=root ansible_ssh_private_key_file="path_to_your_keyfile.pem"
인벤토리 호스트 또는 그룹 변수 -
ANSIBLE_BECOME_METHOD=’sudo’ ANSIBLE_BECOME=True ./setup.sh
become
플러그인에 대한 자세한 내용은 권한 에스컬레이션 이해를 참조하십시오.
절차
설치 프로그램으로 이동합니다.
[bundled installer]
cd ansible-automation-platform-setup-bundle-<latest-version>
$ cd ansible-automation-platform-setup-bundle-<latest-version>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow [online installer]
cd ansible-automation-platform-setup-<latest-version>
$ cd ansible-automation-platform-setup-<latest-version>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
텍스트 편집기를 사용하여
인벤토리
파일을 엽니다. -
인벤토리
파일 매개변수를 편집하여 설치 시나리오를 지정합니다. 아래 예를 따르십시오.
3.1.4. 자동화 컨트롤러 노드 또는 비installer 관리 데이터베이스에서 데이터베이스에 대한 인벤토리 파일의 예 링크 복사링크가 클립보드에 복사되었습니다!
이 예제에서는 Red Hat Ansible Automation Platform을 설치하기 위해 인벤토리 파일을 채우는 방법을 설명합니다. 이 설치 인벤토리 파일에는 자동화 컨트롤러 노드 또는 비installer 관리 데이터베이스의 데이터베이스가 있는 자동화 컨트롤러 및 자동화 허브가 모두 포함됩니다.
- 동일한 노드에 자동화 컨트롤러 및 자동화 허브를 설치할 수 없습니다.
-
[automationhub]
호스트의 액세스 가능한 IP 주소를 제공하여 사용자가 다른 노드에서 Private Automation Hub에서 콘텐츠를 동기화할 수 있도록 합니다. -
registry_username
및registry_password
에 Red Hat Registry Service 계정 자격 증명을 입력하여 Red Hat 컨테이너 레지스트리에 연결합니다.
3.1.5. 설정 스크립트 플래그 및 추가 변수 링크 복사링크가 클립보드에 복사되었습니다!
설정 스크립트를 실행하여 자동화 컨트롤러를 설치할 때 플래그 및 추가 변수를 전달할 수도 있습니다.
인수 | 설명 |
---|---|
| 이 도움말 메시지 표시 및 종료 |
|
Ansible 인벤토리 파일의 경로(기본값: |
| 추가 Ansible 변수를 key=value 또는 YAML/JSON으로 설정 |
| 설치 대신 데이터베이스 백업 수행 |
| 설치 대신 데이터베이스 복원 수행 |
| SECRET_KEY를 생성하고 dsitribute |
적용할 Ansible 인수를 추가하려면 --
separator를 사용합니다. 예: ./setup.sh -i my_awesome_inventory.yml -e rotationburt_is_country_gold=TrueECDHE-ECDHE-K
.
EXTRA_VARS가 기본이 아닌 경로를 제공하지 않는 한
-r
을 전달하여 데이터베이스 복원 기본 복원 경로를 수행합니다. 복원 경로를 지정하는 EXTRA_VAR을 통과한 아래 예제를 참조하십시오../setup.sh -e 'restore_backup_file=/path/to/nondefault/location' -r
./setup.sh -e 'restore_backup_file=/path/to/nondefault/location' -r
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -e bundle_install=false
를 전달하여 온라인 설치를 강제 수행할 수 있습니다../setup.sh -e bundle_install=false
$ ./setup.sh -e bundle_install=false
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Variable | 설명 | Default |
---|---|---|
| 자동화 컨트롤러를 설치할 때 Ansible도 최신 상태인지 확인합니다. |
|
| Tower를 설치할 때 demonstration Org, 프로젝트, 자격 증명, 작업 템플릿 등도 생성합니다. |
|
| 번들에서 설치할 때 번들 리포지터리를 배치할 때 |
|
| nginx를 통한 HTTPS 트래픽을 비활성화합니다. 이는 로드 밸런서에 HTTPS를 오프로드하는 경우 유용합니다. |
|
| HSTS 웹 보안 정책 메커니즘 비활성화 |
|
| HTTP를 수신 대기하도록 nginx를 구성하도록 포트 |
|
| HTTPS를 수신 대기하도록 nginx 구성 |
|
| 백업 시 사용할 임시 위치 |
|
| 복원할 대체 백업 파일 지정 | 없음 |
| Tower를 설치하는 데 필요한 최소 RAM(테스트 설치만 변경) |
|
| 최소 오픈 파일 설명 (테스트 설치에 대해서만 변경) | 없음 |
|
템플릿 또는 기타 시스템 이외의 이미지에 설치할 때 유용합니다(overrides |
|
예
- 코어를 업그레이드하려면 다음을 수행합니다.
./setup.sh -e upgrade_ansible_with_tower=1
./setup.sh -e upgrade_ansible_with_tower=1
- nginx에서 https 처리를 비활성화하려면 다음을 수행합니다.
./setup.sh -e nginx_disable_https=true
./setup.sh -e nginx_disable_https=true
- 백업 파일에서 복원할 때 기본이 아닌 경로를 지정하려면 다음을 수행합니다.
./setup.sh -e 'restore_backup_file=/path/to/nondefault/location' -r
./setup.sh -e 'restore_backup_file=/path/to/nondefault/location' -r
3.1.6. Red Hat Ansible Automation Platform 설치 프로그램 설정 스크립트 실행 링크 복사링크가 클립보드에 복사되었습니다!
Private Automation Hub 설치에 필요한 매개변수로 인벤토리
파일 업데이트를 완료한 후 설정 스크립트를 실행할 수 있습니다.
절차
setup.sh
스크립트 실행./setup.sh
$ ./setup.sh
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
설치가 시작됩니다.
3.1.7. 자동화 컨트롤러 설치 확인 링크 복사링크가 클립보드에 복사되었습니다!
설치가 완료되면 인벤토리
파일에 삽입한 admin 인증 정보로 로그인하여 자동화 컨트롤러가 설치되었는지 확인할 수 있습니다.
절차
-
인벤토리
파일에서 자동화 컨트롤러 노드에 지정된 IP 주소로 이동합니다. -
인벤토리
파일에서 설정한 Admin 자격 증명으로 로그인합니다.
자동화 컨트롤러 서버는 포트 80(https://<TOWER_SERVER_NAME>/)에서 액세스할 수 있지만 포트 443으로 리디렉션되므로 443도 사용할 수 있어야 합니다.
설치에 실패하고 Red Hat Ansible Automation Platform에 대한 유효한 라이센스를 구매한 고객인 경우 https://access.redhat.com/ 에서 Red Hat 고객 포털을 통해 Ansible에 문의하십시오.
자동화 컨트롤러에 성공적으로 로그인하면 Red Hat Ansible Automation Platform 2.1 설치가 완료되었습니다.
3.1.7.1. 추가 자동화 컨트롤러 구성 및 리소스 링크 복사링크가 클립보드에 복사되었습니다!
추가 자동화 컨트롤러 구성을 보려면 다음 리소스를 참조하십시오.
link | 설명 |
---|---|
자동화 컨트롤러를 설정하고 첫 번째 플레이북을 실행합니다. | |
고객 스크립트, 관리 작업 등을 통해 자동화 컨트롤러 관리를 구성합니다. | |
프록시 서버를 사용하여 자동화 컨트롤러 설정 | |
Red Hat과 공유하는 자동화 컨트롤러 정보 관리 | |
자동화 컨트롤러 기능을 자세히 검토합니다. |
3.1.8. 자동화 허브 설치 확인 링크 복사링크가 클립보드에 복사되었습니다!
설치가 완료되면 인벤토리
파일에 삽입한 admin 인증 정보로 로그인하여 자동화 허브가 성공적으로 설치되었는지 확인할 수 있습니다.
절차
-
인벤토리
파일에서 자동화 허브 노드에 지정된 IP 주소로 이동합니다. -
인벤토리
파일에서 설정한 Admin 자격 증명으로 로그인합니다.
설치에 실패하고 Red Hat Ansible Automation Platform에 대한 유효한 라이센스를 구매한 고객인 경우 https://access.redhat.com/ 에서 Red Hat 고객 포털을 통해 Ansible에 문의하십시오.
자동화 허브에 성공적으로 로그인하면 Red Hat Ansible Automation Platform 2.1 설치가 완료되었습니다.
3.1.8.1. 추가 자동화 허브 구성 및 리소스 링크 복사링크가 클립보드에 복사되었습니다!
추가 자동화 허브 구성을 보려면 다음 리소스를 참조하십시오.
link | 설명 |
---|---|
자동화 허브를 위한 사용자 액세스 구성 | |
자동화 허브에 콘텐츠 추가 | |
자동화 허브에 내부적으로 개발한 컬렉션 게시 |
3.1.9. Ansible Automation Platform 2.1의 다음 단계 링크 복사링크가 클립보드에 복사되었습니다!
자동화를 시작하려는 새로운 Ansible Automation Platform 사용자 또는 이전 Ansible 콘텐츠를 설치된 최신 Red Hat Ansible Automation Platform 버전으로 마이그레이션하려는 기존 관리자이든 Ansible Automation Platform 2.1의 새로운 기능을 활용하는 다음 단계를 살펴보십시오.
3.1.9.1. Ansible Automation Platform 2.1으로 데이터 마이그레이션 링크 복사링크가 클립보드에 복사되었습니다!
Ansible Automation Platform 2.1으로 업그레이드를 완료하려는 플랫폼 관리자의 경우 데이터를 새 인스턴스로 마이그레이션하는 데 필요한 추가 단계가 있을 수 있습니다.
3.1.9.1.1. 레거시 가상 환경(venvs)에서 자동화 실행 환경으로 마이그레이션 링크 복사링크가 클립보드에 복사되었습니다!
Ansible Automation Platform 2.1은 Ansible 자동화를 실행하고 확장하는 데 필요한 구성 요소를 패키징하는 컨테이너화된 이미지 자동화 실행 환경을 사용하므로 사용자 정의 Python 가상 환경(venvs)에서 멀리 이동합니다. 여기에는 Ansible Core, Ansible Content Collections, Python 종속 항목, Red Hat Enterprise Linux UBI 8 및 추가 패키지 종속성이 포함됩니다.
venvs를 실행 환경으로 마이그레이션하려는 경우 (1)는 awx-manage
명령을 사용하여 원래 인스턴스에서 venvs 목록을 나열하고 내보내야 합니다. (2) ansible-builder
를 사용하여 실행 환경을 생성합니다. 자세한 내용은 Upgrading to Automation Execution Environments 가이드 및 Ansible Builder Guide 를 참조하십시오.
3.1.9.1.2. Ansible Builder를 사용하여 Ansible Engine 2.9 이미지로 마이그레이션 링크 복사링크가 클립보드에 복사되었습니다!
Ansible Automation Platform 2.1과 함께 사용할 Ansible Engine 2.9 이미지를 마이그레이션하기 위해 ansible-builder
툴은 자동화 실행 환경에서 사용할 이미지(사용자 정의 플러그인 및 종속 항목 포함)를 다시 빌드하는 프로세스를 자동화합니다. Ansible Builder를 사용하여 실행 환경을 빌드하는 방법에 대한 자세한 내용은 Ansible 빌더 가이드를 참조하십시오.
3.1.9.1.3. Ansible Core 2.12로 마이그레이션 링크 복사링크가 클립보드에 복사되었습니다!
Ansible Core 2.12로 업그레이드할 때 최신 버전의 Ansible Core에서 지원하려면 Ansible 인프라의 플레이북, 플러그인 또는 기타 부분을 업데이트해야 합니다. Ansible 콘텐츠를 Ansible Core 2.12 호환으로 업데이트하는 방법에 대한 자세한 내용은 Ansible-core 2.12 포트 지정 가이드를 참조하십시오.
3.1.9.2. 자동화 메시를 사용하여 자동화 확장 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat Ansible Automation Platform의 자동화 메시 구성 요소는 다중 사이트 배포에 자동화를 배포하는 프로세스를 단순화합니다. 여러 격리된 IT 환경을 보유한 엔터프라이즈의 경우 자동화 메시는 피어 투 피어 메시 통신 네트워크를 사용하여 실행 노드 전반에서 자동화를 일관되고 안정적으로 배포하고 확장할 수 있는 방법을 제공합니다.
버전 1.x에서 최신 버전의 Ansible Automation Platform으로 업그레이드할 때 기존 격리된 노드에서 자동화 메시에 필요한 실행 노드로 데이터를 마이그레이션해야 합니다. 하이브리드 및 제어 노드 네트워크를 계획한 다음 Ansible Automation Platform 설치 프로그램에 있는 인벤토리 파일을 편집하여 각 실행 노드에 메시 관련 값을 할당하는 방식으로 자동화 메시를 구현할 수 있습니다.
격리된 노드에서 실행 노드로 마이그레이션하는 방법에 대한 자세한 내용은 업그레이드 및 마이그레이션 가이드를 참조하십시오.
자동화 메시 및 환경에 대한 자동화 메시를 설계하는 다양한 방법에 대한 자세한 내용은 Red Hat Ansible Automation Platform 자동화 메시 가이드를 참조하십시오.