3.4. 자동화 작업 Pod의 크기 권장 사항


Ansible Automation Platform 작업은 호스트 인벤토리에 대해 Ansible 플레이북을 시작하는 자동화 컨트롤러의 인스턴스입니다. Ansible Automation Platform이 Red Hat OpenShift에서 실행되는 경우 기본 실행 대기열은 설치 시 Operator가 생성한 컨테이너 그룹입니다.

컨테이너 그룹은 Kubernetes 인증 정보 및 기본 Pod 사양으로 구성됩니다. 컨테이너 그룹으로 작업이 시작되면 컨테이너 그룹 Pod 사양에 지정된 네임스페이스의 자동화 컨트롤러에서 Pod가 생성됩니다. 이러한 Pod를 자동화 작업 Pod라고 합니다.

자동화 작업 Pod에 대한 적절한 크기를 결정하려면 먼저 자동화 컨트롤러 컨트롤 플레인에서 동시에 시작할 수 있는 작업 수의 기능을 이해해야 합니다.

이 예에서는 작업자 노드(각 4 vCPU 및 16GiB의 RAM)가 3개 있습니다. 하나의 작업자 노드는 제어 Pod를 호스팅하고 나머지 두 개의 작업자 노드는 자동화 작업에 사용됩니다.

이러한 값을 기반으로 자동화 컨트롤러 컨트롤 플레인을 실행할 수 있는 컨트롤 용량을 결정할 수 있습니다.

다음 공식은 분석을 제공합니다.

총 제어 용량 = MB 단위의 총 메모리 / 포크 크기

작업자 노드에 따라 다음과 같이 표시할 수 있습니다.

총 제어 용량 = 16,000MB / 100MB = 160

참고

즉, 자동화 컨트롤러가 160개의 작업을 동시에 시작하도록 구성되어 있습니다. 그러나 컨테이너 그룹/실행 플레인 용량과 일치하도록 이 값을 조정해야 합니다.

참고

단순화를 위해 16GB는 16,000MB로 반올림되며 하나의 포크 크기는 기본적으로 100MB입니다.

이제 사용 가능한 제어 용량을 계산했으므로 최대 동시 자동화 작업 수를 확인할 수 있습니다.

이를 확인하려면 컨테이너 그룹/실행 플레인 내의 자동화 작업 Pod 사양에 vCPU 250m 및 100Mi of RAM의 기본 요청이 있음을 알고 있어야 합니다.

하나의 작업자 노드의 총 메모리를 사용합니다.

16,000MB / 100MiB = 160 동시 작업

하나의 작업자 노드의 총 CPU 사용

4000밀리CPU / 250밀리cpu = 16 동시 작업

위의 값을 기반으로 노드의 최대 동시 작업 수를 두 개의 동시 작업 값 - 16 중 가장 작은 값으로 설정해야 합니다. 예제에서는 자동화 작업을 실행하는 데 할당된 작업자 노드가 두 개이므로 이 숫자는 작업자 노드당 동시 작업 16개입니다.

자동화 컨트롤러의 구성은 현재 160개의 동시 작업으로 설정되었으며 사용 가능한 작업자 노드 용량은 32개의 동시 작업만 허용합니다. 이 문제는 숫자가 균형을 해제하기 때문에 발생합니다.

즉, 자동화 컨트롤러의 컨트롤 플레인은 160개의 작업을 동시에 시작할 수 있다고 생각하지만 Kubernetes 스케줄러는 컨테이너 그룹 네임스페이스에서 동시에 최대 32개의 자동화 작업 Pod만 스케줄링합니다.

컨트롤 플레인과 컨테이너 그룹/실행 플레인 간의 균형을 해제하면 다음과 같은 문제가 발생할 수 있습니다.

  • 컨트롤 플레인 용량이 컨테이너 그룹의 최대 작업 Pod 수보다 크면 컨트롤 플레인에서 시작할 Pod를 제출하여 작업을 시작합니다. 그러나 이러한 Pod는 리소스를 사용할 수 있게 될 때까지 실제로 실행되지 않습니다. 작업 Pod가 AWX_CONTAINER_GROUP_POD_PENDING_TIMEOUT 의 시간 초과 내에서 시작되지 않으면 작업이 중단됩니다(기본값은 2시간).
  • 컨테이너 그룹이 컨트롤 플레인에서 시작할 수 있다고 생각한 것보다 더 많은 동시 자동화 작업을 지원할 수 있는 경우, 컨테이너 그룹이 지원할 수 있는 최대 동시 자동화 작업에 도달하기 위해 자동화 컨트롤러에서 충분한 자동화 작업을 시작하지 않으므로 이 용량이 효과적으로 소모됩니다.

중단된 작업 또는 사용되지 않는 리소스를 방지하려면 유효 제어 용량을 기본 컨테이너 그룹에서 지원할 수 있는 최대 동시 작업 수와 균형을 유지하는 것이 좋습니다.

컨트롤 플레인이 시작할 최대 작업 수는 AWX_CONTROL_NODE_TASK_IMPACT 설정의 영향을 받기 때문에 "효율 제어 용량"이라는 용어를 사용합니다. AWX_CONTROL_NODE_TASK_IMPACT 변수는 자동화 작업별로 제어 Pod에서 사용할 수 있는 용량을 정의하여 제어 Pod가 시작하려고 하는 자동화 작업 수를 효과적으로 제어합니다.

효과적인 제어 용량과 사용 가능한 실행 용량 간의 균형을 유지하기 위해 AWX_CONTROL_NODE_TASK_IMPACT 변수를 자동화 컨트롤러 컨트롤 플레인에서 실행할 동시 작업 수를 컨테이너 그룹/실행 플레인에서 시작할 자동화 작업 Pod 수와 일치하도록 제한하는 값으로 설정할 수 있습니다.

컨테이너 그룹이 지원할 수 있는 것보다 더 많은 동시 자동화 작업을 시작하지 않도록 AWX_CONTROL_NODE_TASK_IMPACT 의 최적 값을 계산하려면 다음 공식을 사용하면 됩니다.

AWX_CONTROL_NODE_TASK_IMPACT = 컨테이너 그룹에서 시작할 수 있는 최대 동시 작업/제어 용량 / 최대 동시 작업

참조 환경의 경우 다음과 같습니다.

AWX_CONTROL_NODE_TASK_IMPACT = 160 / 32 = 5

따라서 이 참조 환경에서는 AWX_CONTROL_NODE_TASK_IMPACT 가 5와 같아야 합니다. 이 값은 6장. 자동화 컨트롤러 설치 장의 extra_setting 부분 내에 설정되며 이 문서의 뒷부분에서 다룹니다.

Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

Theme

© 2026 Red Hat
맨 위로 이동