11장. 이벤트 기반 Ansible 컨트롤러의 성능 튜닝
이벤트 기반 Ansible은 확장성이 뛰어나고 유연한 자동화 기능입니다. 이벤트 기반 Ansible 컨트롤러는 이벤트 기반 Ansible 자동화가 수행하는 인터페이스를 제공합니다. 다음을 통해 이벤트 기반 Ansible 컨트롤러를 조정하여 성능 및 확장성을 최적화합니다.
- 워크로드 특성화
- 시스템 수준 모니터링
- 성능 문제 해결
11.1. 워크로드 특성화 링크 복사링크가 클립보드에 복사되었습니다!
이벤트 기반 Ansible 컨트롤러에서 워크로드에는 룰북 활성화 및 수신되는 이벤트 수가 포함됩니다. 이벤트 기반 Ansible 컨트롤러 워크로드를 특성화하려면 다음 요인을 고려하십시오.
- 동시 룰북 활성화 수
- 이벤트 기반 Ansible 컨트롤러에서 수신하는 이벤트 수
11.1.1. 각 룰북 활성화에 대한 기본 메모리 제한 수정 링크 복사링크가 클립보드에 복사되었습니다!
메모리 사용량은 이벤트 기반 Ansible 컨트롤러에서 처리해야 하는 이벤트 수를 기반으로 합니다. 각 룰북 활성화 컨테이너에는 200MB 메모리 제한이 있습니다. 예를 들어 CPU 4GB와 16GB의 RAM을 사용하면 할당된 200MB 메모리 제한이 있는 하나의 룰북 활성화 컨테이너는 분당 150,000개 이상의 이벤트를 처리할 수 없습니다. 병렬 실행 룰북 활성화 수가 높으면 각 룰북 활성화가 처리할 수 있는 최대 이벤트 수가 줄어듭니다. 매우 높은 속도로 들어오는 이벤트가 너무 많으면 컨테이너는 이벤트를 처리하려는 메모리가 부족할 수 있습니다. 그러면 컨테이너가 종료되고 룰북 활성화가 137개의 상태 코드와 함께 실패합니다.
이 오류를 해결하기 위해 다음 절차 중 하나를 사용하여 높은 속도로 많은 이벤트를 처리하기 위해 룰북 활성화에 할당된 메모리 양을 늘릴 수 있습니다.
- 설치 중 각 룰북 활성화의 기본 메모리 제한 수정
- 설치 후 각 룰북 활성화의 기본 메모리 제한 수정
11.1.1.1. 설치 중 각 룰북 활성화의 기본 메모리 제한 수정 링크 복사링크가 클립보드에 복사되었습니다!
기본적으로 각 룰북 활성화 컨테이너에는 200MB 메모리 제한이 있습니다. 다음 절차에 따라 설치 중에 이 기본값을 수정할 수 있습니다.
프로세스
- 설정 인벤토리 파일로 이동합니다.
-
[all:vars] 섹션에
automationedacontroller_podman_mem_limit를 추가합니다. 예를 들어automationedacontroller_podman_mem_limit='400m'입니다. - 설정을 실행합니다.
11.1.1.2. 설치 후 각 룰북 활성화의 기본 메모리 제한 수정 링크 복사링크가 클립보드에 복사되었습니다!
기본적으로 각 룰북 활성화 컨테이너에는 200MB 메모리 제한이 있습니다. 다음 절차에 따라 설치 후 이 기본값을 수정할 수 있습니다.
프로세스
-
/etc/ansible-automation-platform/eda/settings.yaml에서 환경 파일로 이동합니다. -
기본 컨테이너 메모리 제한을 수정합니다. 예를 들어
PODMAN_MEM_LIMIT = '300m'입니다. -
Automation-
eda-controller-service 재시작을 사용하여 이벤트 기반 Ansible 컨트롤러 서비스를 다시 시작합니다.