Ansible 모듈과 플러그인 사용하기
Ansible 모듈과 플러그인 사용하기 (Using Ansible modules and plugins)
Ansible 모듈·플러그인·컬렉션 작업 가이드에 오신 것을 환영해요.
Ansible 모듈은 시스템 리소스를 제어하거나 시스템 명령을 실행할 수 있는 코드 단위예요. Ansible은 원격 호스트에서 직접 또는 플레이북을 통해 실행할 수 있는 모듈 라이브러리를 제공해요. 커스텀 모듈을 직접 작성할 수도 있죠.
모듈과 비슷한 것이 플러그인인데, 플러그인은 핵심 Ansible 기능을 확장하는 코드 조각이에요. Ansible은 풍부하고 유연하며 확장 가능한 기능 세트를 가능하게 하는 플러그인 아키텍처를 사용해요. Ansible은 여러 플러그인을 기본 제공하고, 여러분의 플러그인도 쉽게 사용할 수 있게 해 줘요.
출처: 문서
본문
이 가이드는 다음 주제를 다뤄요.
- 모듈 소개 (Introduction to modules) — 모듈을 사용할 수 있는 다양한 방법과 모듈 커스터마이즈·개발 방법
- 불리언 변수 (Boolean variables) — YAML에서 불리언 값 다루기
- 모듈 유지보수·지원 (Module maintenance and support) — 유지보수, 이슈 보고, 지원, 모듈 거부
- 플러그인 작업 (Working with plugins) — 다양한 플러그인 유형
- 모듈·플러그인 인덱스 (Modules and plugins index)
다양한 플러그인 유형
Ansible은 여러 종류의 플러그인을 제공해요. 각각이 고유한 역할을 갖고 있어요.
- Action plugins — 모듈 실행 전후에 조치를 취하는 플러그인
- Become plugins — 권한 상승(privilege escalation) 처리 플러그인
- Cache plugins — 인벤토리·facts 캐시 관리 플러그인
- Callback plugins — 실행 중에 이벤트에 응답·출력하는 플러그인
- Cliconf plugins — CLI 기반 네트워크 기기 설정 플러그인
- Connection plugins — 호스트에 연결하는 방식을 정의하는 플러그인
- Docs fragments — 여러 모듈에서 재사용하는 문서 조각
- Filter plugins — 템플릿에서 데이터 조작용 필터
- Httpapi plugins — HTTP API 기반 네트워크 기기 연결 플러그인
- Inventory plugins — 동적 인벤토리 소스 제공 플러그인
- Lookup plugins — 외부 데이터를 템플릿으로 가져오는 플러그인
- Modules — 시스템 리소스·명령을 제어하는 기본 작업 단위
- Module utilities — 모듈이 공유하는 헬퍼 코드
- Netconf plugins — NETCONF 기반 네트워크 기기 연결 플러그인
- Shell plugins — 쉘 명령 실행 방식을 제어하는 플러그인
- Strategy plugins — 플레이 실행 전략을 제어하는 플러그인
- Terminal plugins — 네트워크 기기용 터미널 명령 실행 플러그인
- Test plugins — 템플릿에서 값 검증용 테스트
- Vars plugins — 런타임에 변수를 주입하는 플러그인
플러그인 유형마다 문서 페이지가 따로 마련되어 있어요. 작업 환경에 맞는 것을 골라 참고하면 돼요.
더 알아보기 (Learn more)
- 모듈은 작업 단위, 플러그인은 Ansible 기능을 확장하는 조각이라는 관계를 기억해 두세요.
- 모듈·플러그인 전체 목록은 "Modules and plugins index"에서 확인할 수 있어요.