6.6. 소스 교체 및 활성화에 이벤트 스트림 연결
룰북 활성화를 생성할 때 이벤트 스트림을 사용하여 룰북 활성화에서 소스 매핑을 교체하고 외부 소스에서 이벤트 기반 Ansible 컨트롤러로의 라우팅을 간소화할 수 있습니다.
소스 매핑과 관련하여 고려해야 할 몇 가지 주요 사항이 있습니다.
- 이벤트 스트림은 룰북 소스 스왑에서 한 번만 사용할 수 있습니다. 룰북에 여러 소스가 있는 경우 각 소스만 한 번만 교체할 수 있습니다.
- 소스 매핑은 현재 룰북 활성화에서만 수행됩니다. 동일한 룰북을 사용하는 다른 활성화에 대해 이 프로세스를 반복해야 합니다.
- 소스 매핑은 룰북이 수정되지 않는 경우에만 유효합니다. 소스 매핑 프로세스 중에 룰북이 수정되면 소스 매핑이 실패하고 반복해야 합니다.
- 소스 매핑이 생성된 후 룰북이 수정되고 재시작 이 발생하면 룰북 활성화가 실패합니다.
프로세스
- Ansible Automation Platform에 로그인합니다.
-
탐색 패널에서
선택합니다. - 클릭합니다.
다음을 삽입합니다.
- 이름
- 이름을 삽입합니다.
- 설명
- 이 필드는 선택 사항입니다.
- 조직
- 조직 이름을 입력하거나 목록에서 Default를 선택합니다.
- 프로젝트
프로젝트는 룰북의 논리 컬렉션입니다. 이 필드는 선택 사항입니다.
참고이 필드는 선택 사항이지만 프로젝트를 선택하면 룰북 선택 목록을 구체화하는 데 도움이 됩니다.
- 룰북
룰북은 선택한 프로젝트에 따라 표시됩니다. 룰북을 선택합니다.
참고룰북을 선택하면 이벤트 스트림 필드가 활성화됩니다. 도구 모음 아이콘을 클릭하여 이벤트 스트림 매핑 양식을 표시할 수 있습니다.
- 이벤트 스트림
사용 가능한 모든 이벤트 스트림이 룰북 작동에 이벤트를 전달하도록 설정됩니다. 이벤트 스트림을 생성하지 않은 경우 이 필드는 비활성화된 상태로 유지됩니다.
툴바 아이콘을 클릭하여 UI를 매핑하는 이벤트 스트림을 표시합니다.
다음 필드를 작성합니다.
- 룰북 소스
룰북은 여러 규칙 세트에서 여러 소스를 포함할 수 있습니다. 여러 활성화에서 동일한 룰북을 여러 이벤트 스트림에 매핑할 수 있습니다. 이벤트 스트림을 관리하는 동안 이름이 지정되지 않은 소스에는 식별을 위해 임시 이름(__SOURCE {n})이 할당됩니다.
목록에서 __SOURCE_1을 선택합니다.
- 이벤트 스트림
목록에서 이벤트 스트림 이름을 선택합니다.
이벤트 스트림은 룰북에서 일치하는 소스를 교체할 수 있으며 다양한 이벤트 소스를 룰북 활성화에 연결할 수 있는 서버 측 Webhook입니다. ansible.eda.pg_listener 유형의 이벤트 스트림 소스로 교체할 수 있는 소스 유형에는 ansible.eda.webhook 및 기타 호환 웹 후크 소스 플러그인이 포함됩니다. 선택한 소스를 교체하면 이 활성화에만 영향을 미치고 룰북의 소스 유형, 소스 이름 및 인수를 수정합니다. 필터, 규칙, 조건 및 작업은 모두 영향을 받지 않습니다.
단일 이벤트 스트림으로 교체할 소스를 선택할 수 있습니다. 룰북에 여러 소스가 있는 경우 각 소스를 이벤트 스트림으로 교체하도록 선택할 수 있지만 각각을 교체할 필요는 없습니다. 다음 이미지에는 교체할 수 있는 소스가 표시되어 있습니다.
pink의 항목은 소스 유형, 소스 이름 및 인수와 같이 교체할 수 있는 소스를 보여줍니다. 나머지 항목(필터, 규칙 및 작업)은 대체되지 않습니다.
- 인증 정보
이 룰북 활성화에 대해 0개 이상의 인증 정보를 선택합니다. 이 필드는 선택 사항입니다.
참고이 필드에 표시되는 인증 정보는 룰북 활성화에 따라 사용자 지정되며 Vault, Red Hat Ansible Automation Platform 또는 생성한 모든 사용자 정의 인증 정보 유형만 포함합니다. 인증 정보에 대한 자세한 내용은 인증 정보를 참조하십시오. https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html-single/using_automation_decisions/index#eda-credentials
- 의사 결정 환경
의사 결정 환경은 Ansible 룰북을 실행하는 데 사용되는 컨테이너 이미지입니다.
참고이벤트 기반 Ansible 컨트롤러에서는 의사 결정 환경의 가져오기 정책을 사용자 지정할 수 없습니다. 기본적으로 always 정책의 동작을 따릅니다. 활성화가 시작될 때마다 시스템은 최신 버전의 이미지를 가져오려고 합니다.
- 재시작 정책
소스 플러그인을 실행하는 컨테이너 프로세스가 종료된 후 활성화를 다시 시작하는 방법을 결정하는 정책입니다.
정책:
- 항상: 성공적으로 종료되었는지 여부에 관계없이 룰북 활성화를 즉시 재시작하고 5회 이상 발생하지 않습니다.
- Never: 컨테이너 프로세스가 종료될 때 룰북 활성화를 재시작하지 않습니다.
- 실패 시: 컨테이너 프로세스가 실패한 경우에만 기본적으로 60초 후에 룰북 활성화를 재시작하고 5 번 이상 발생하지 않습니다.
- 로그 수준
이 필드는 기록된 이벤트의 심각도 및 콘텐츠 유형을 정의합니다.
수준:
- 오류: 활성화의 기록 탭에 표시되는 오류 메시지가 포함된 로그입니다.
- info: 성공 또는 실패, 트리거된 작업 이름 및 관련 작업 이벤트 및 오류와 같은 룰북 활성화에 대한 유용한 정보가 포함된 로그입니다.
- debug 단계에서만 유용하고 프로덕션 중에 값이 거의 없을 수 있는 정보가 포함된 로그입니다. 이 로그 수준에는 오류 및 로그 수준 데이터가 모두 포함됩니다.
- 서비스 이름
- 이는 활성화가 포트를 노출하는 경우 인바운드 연결을 구성하기 위해 Kubernetes의 서비스 이름을 정의합니다. 이 필드는 선택 사항입니다.
- 룰북 활성화가 활성화됩니까?
- 이렇게 하면 룰북 활성화가 자동으로 활성화됩니다.
- 변수
-
룰북의 변수는 JSON 또는 YAML 형식입니다. 콘텐츠는 ansible-rulebook 명령의
--vars
플래그를 통해 전달되는 파일과 동일합니다. - 옵션
- 규칙 감사에서 이벤트를 표시하지 않으려면 Skip audit events 옵션을 선택합니다.
룰북 활성화를 생성하면 세부 정보 페이지가 표시됩니다.
이벤트 스트림 페이지로 이동하여 이벤트가 수신되었는지 확인할 수 있습니다.