티스토리 뷰

프로그래밍/Ansible

[AAP2.x] Ansible Runner - kr

백오타빅 2022. 8. 2. 18:00
반응형

Ansible Runner는 컨테이너 이미지 인터페이스, 독립 실행형 도구 또는 가져올 수 있는 Python 모듈을 통해 Ansible과 직접 또는 다른 시스템에 부분적으로 인터페이스할 때 도움이 되는 도구 및 Python 라이브러리입니다. (즉, 어느 시스템에서나 Ansible 시스템을 구축할 수 있게 해주는 도구인 것 같습니다.) 목표는 Ansible에 안정적이고 일관된 인터페이스 추상화를 제공하는 것입니다. 이를 통해 인터페이스의 복잡성을 자체적으로 관리하지 않으려는 다른 시스템(예: CI/CD 플랫폼, Jenkins 또는 기타 자동화 도구)에 Ansible 을 내장할 수 있습니다.

Ansible Runner는 'ansible' 및 'ansible-playbook' 명령 작업과 같이 Ansible을 실행하고 그 결과를 수집하는 Ansible Tower/AWX 와 같이 GUI 환경도 제공해주는 도구입니다. Ansible 자체의 업데이트가 Runner와는 무관합니다.( Ansible과 개별로 동작을 하는 것 같습니다..)
이 도구를 유용하게 만드는 부분 중 하나는 유연한 방식으로 결과을 수집할 수 있다는 것입니다(Ansible Runner 소개 참조) . 또한 플레이북 실행의 출력(stdout) 및 artifacts(호스트 수준 이벤트 데이터, 팩트 데이터 등)를 저장하는 시스템이 있습니다.

Ansible Runner를 사용할 수 있는 3가지 기본 방법이 있습니다.
1. Foreground에서 시작하거나 Background에서 비동기적으로 실행할 수 있는 독립 실행형 명령줄 도구(ansible-runner)로 사용
2. 타 이미지의 Base Image로 사용하거나, 독립 실행형 컨테이너로 작동하거나, Openshift 또는 Kubernetes에서 사용
3. 파이썬 모듈 - 라이브러리 인터페이스

Ansible Runner 는 플러그인 인터페이스를 사용하여 다른 시스템에 상태 및 이벤트 데이터를 보내도록 구성할 수도 있습니다 . 외부 시스템에 Runner 상태 및 이벤트 보내기를 참조하시면 됩니다.

이에 대한 예는 다음과 같습니다.

  • Ansible Tower/AWX로 상태 전송
  • 외부 로깅 서비스로 이벤트 보내기

 

참고 문서

 

인덱스 및 테이블 

 

원본 문서

참고 문서

혹시 궁금한 부분을 질문하신다거나 틀린부분 혹은 조언을 해주시면 감사히 받겠습니다.

지금까지 읽어주셔서 감사합니다.

반응형
댓글