3장. Operator 토폴로지
Ansible Automation Platform Operator는 Red Hat OpenShift Operator를 사용하여 Red Hat OpenShift 내에 Ansible Automation Platform을 배포합니다. 고객은 제품 및 인프라 라이프사이클을 관리합니다.
Ansible Automation Platform Operator의 단일 인스턴스만 단일 네임스페이스에 설치할 수 있습니다. 동일한 네임스페이스에 여러 인스턴스를 설치하면 두 Operator 인스턴스에 대해 제대로 작동하지 않을 수 있습니다.
3.1. Operator 증가 토폴로지 링크 복사링크가 클립보드에 복사되었습니다!
증가 토폴로지는 Ansible Automation Platform을 시작하고 대규모 자동화에 중복 또는 더 높은 컴퓨팅이 필요하지 않은 조직을 위한 것입니다. 이 토폴로지를 사용하면 설치 공간이 더 작은 배포를 수행할 수 있습니다.
3.1.1. 인프라 토폴로지 링크 복사링크가 클립보드에 복사되었습니다!
다음 다이어그램에서는 고객이 Ansible Automation Platform을 직접 관리할 때 사용할 수 있는 이 배포 모델을 사용하여 Red Hat에서 테스트한 인프라 토폴로지를 간략하게 설명합니다.
그림 3.1. 인프라 토폴로지 다이어그램
Redis 및 PostgreSQL은 Operator 기반 설치 프로세스의 일부로 설치할 수 있지만 이 다이어그램은 Redis와 PostgreSQL이 Ansible Automation Platform 외부에 있는 Red Hat 지원 토폴로지를 나타냅니다.
단일 노드 OpenShift(SNO) 클러스터는 32GB RAM, 16 CPU, 128GB 로컬 디스크, 3000 IOPS와 같은 요구 사항에 따라 테스트되었습니다.
수량 | Component |
---|---|
1 | 자동화 컨트롤러 웹 Pod |
1 | 자동화 컨트롤러 작업 Pod |
1 | Automation Hub 웹 Pod |
1 | Automation Hub API Pod |
2 | Automation Hub 콘텐츠 Pod |
2 | Automation Hub 작업자 Pod |
1 | Automation Hub Redis Pod |
1 | 이벤트 기반 Ansible API Pod |
1 | 이벤트 기반 Ansible 활성화 작업자 Pod |
1 | 이벤트 기반 Ansible 기본 작업자 Pod |
1 | 이벤트 기반 Ansible 이벤트 스트림 Pod |
1 | 이벤트 기반 Ansible 스케줄러 Pod |
1 | 플랫폼 게이트웨이 Pod |
1 | 데이터베이스 Pod |
1 | Redis Pod |
네임스페이스 범위 배포 모델을 사용하여 여러 개의 분리된 Ansible Automation Platform 인스턴스를 동일한 Red Hat OpenShift Container Platform 클러스터에 배포할 수 있습니다. 이 방법을 사용하면 여러 배포에 동일한 클러스터를 사용할 수 있습니다.
3.1.2. 테스트된 시스템 구성 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat은 Red Hat Ansible Automation Platform을 설치하고 실행하기 위해 다음 구성을 테스트했습니다.
유형 | 설명 | 참고 |
---|---|---|
서브스크립션 | 유효한 Red Hat Ansible Automation Platform 서브스크립션 | |
Red Hat OpenShift |
| |
ansible-core | ansible-core 버전 2.16 이상 | |
브라우저 | 현재 지원되는 Mozilla Firefox 또는 Google Chrome 버전입니다. | |
데이터베이스 |
|
|
3.1.3. 사용자 정의 리소스 파일의 예 링크 복사링크가 클립보드에 복사되었습니다!
다음 예제 CR(사용자 정의 리소스)을 사용하여 Ansible Automation Platform 인스턴스를 프로젝트에 추가합니다.
3.1.4. 작동하지 않는 요구 사항 링크 복사링크가 클립보드에 복사되었습니다!
Ansible Automation Platform의 성능 특성 및 용량은 리소스 할당 및 구성의 영향을 받습니다. OpenShift를 사용하면 각 Ansible Automation Platform 구성 요소가 Pod로 배포됩니다. 각 Pod에 대한 리소스 요청 및 제한을 지정할 수 있습니다.
Ansible Automation Platform CR(사용자 정의 리소스)을 사용하여 OpenShift 설치에 대한 리소스 할당을 구성합니다. 구성 가능한 각 항목에는 기본 설정이 있습니다. 이러한 설정은 설치에 대한 최소 요구 사항이지만 프로덕션 워크로드 요구 사항을 충족하지 못할 수 있습니다.
기본적으로 각 구성 요소의 배포는 최소 리소스 요청에 대해 설정되지만 리소스 제한은 없습니다. OpenShift는 사용 가능한 리소스 요청으로만 Pod를 예약하지만, OpenShift 작업자 노드 자체가 노드 부족 상태에 있지 않은 경우 Pod는 무제한 RAM 또는 CPU를 사용할 수 있습니다.
Operator 증가 토폴로지에서 Ansible Automation Platform은 32GB RAM, 16 CPU, 128GB 로컬 디스크 및 3000 IOPS가 있는 단일 노드 OpenShift(SNO)에 배포됩니다. 이는 공유 환경이 아니므로 Ansible Automation Platform Pod는 OpenShift SNO의 모든 컴퓨팅 리소스에 대한 전체 액세스 권한을 갖습니다. 이 시나리오에서는 자동화 컨트롤러 작업 Pod에 대한 용량 계산은 Pod를 실행하는 기본 OpenShift Container Platform 노드에서 파생됩니다. 전체 노드에 액세스할 수 없습니다. 이 용량 계산은 동시 작업 자동화 컨트롤러 수에 영향을 미칩니다.
OpenShift는 VM과 별도로 스토리지를 관리합니다. 이는 자동화 허브가 아티팩트를 저장하는 방법에 영향을 미칩니다. Operator 증가 토폴로지에서는 자동화 허브에 OpenShift의 기본 스토리지 유형이 아닌 ReadWriteMany
유형 스토리지가 필요하기 때문에 S3 스토리지를 사용합니다.
3.1.5. 네트워크 포트 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat Ansible Automation Platform은 여러 포트를 사용하여 서비스와 통신합니다. 이러한 포트가 열려 있어야 하며 Red Hat Ansible Automation Platform 서버에 대한 수신 연결에 사용할 수 있어야 합니다. 이러한 포트를 사용할 수 있고 서버 방화벽에 의해 차단되지 않았는지 확인합니다.
포트 번호 | 프로토콜 | Service | 소스 | 대상 |
---|---|---|---|---|
80/443 | HTTP/HTTPS | 수신기 | 실행 노드 | OpenShift Container Platform 인그레스 |
80/443 | HTTP/HTTPS | 수신기 | 홉 노드 | OpenShift Container Platform 인그레스 |
80/443 | HTTP/HTTPS | 플랫폼 | 고객 클라이언트 | OpenShift Container Platform 인그레스 |
27199 | TCP | 수신기 | OpenShift Container Platform 클러스터 | 실행 노드 |
27199 | TCP | 수신기 | OpenShift Container Platform 클러스터 | 홉 노드 |