IaC/Ansible 이론

Ansible 모듈 및 플러그인 | 모듈 종류, 플러그인 종류, 확인

Greta Lee 2021. 7. 28. 11:26
SMALL

Ansible 모듈 및 플러그인 확인

모듈은 Ansible을 이용해 관리 노드에 작업을 실행하는 핵심 요소입니다. 모듈은 Python 코드로 이루어져 있으며, /usr/lib/python3/dist-packages/ansible 경로에 있습니다. 현재 버전(2.9) 기준으로 약 3000개가 넘는 모듈이 존재합니다.

 

ansible-doc 명령을 이용하여 모듈의 목록과 모듈의 사용법을 확인할 수 있습니다.

 

1. ansible-doc 명령 사용

(1) 모듈 목록 확인

ansible-doc -l

 

(2) 특정 모듈 확인

ansible-doc <module-name>

 

모듈 목록

https://docs.ansible.com/ansible/2.9/modules/modules_by_category.html

 

Module Index — Ansible Documentation

© Copyright 2019 Red Hat, Inc. Last updated on Jul 19, 2021.

docs.ansible.com


2. 자주 사용되는 모듈

(1) 명령 모듈

명령 모듈 기능 PYthon Shell
command 명령 실행 O X
raw 명령 실행 X X
script 스크립트 실행    
shell 쉘 명령 실행 O O

 

(2) 파일 모듈

archive 압축 생성
blockinfile 텍스트 파일에 블록 삽입 / 업데이트 / 삭제
copy 파일 복사
fetch 파일 가져오기
file 파일 및 속성 관리
lineinfile 텍스트 파일에 행 관리
replace 텍스트 파일의 문자열 관리
synchronize rsync 동기화
template Jinja2 템플릿
unarchive 압축 해제

 

(3) 네트워크 도구 모듈

get_url HTTP/S, FTP 파일 다운로드 (wget)
uri 웹 서비스와 상호작용 (curl)

 

(4) 패키지 모듈

gem Ruby Gems
npm Node.js 패키지 관리
pip Python 라이브러리 관리
apt Debian / Ubuntu 패키지 관리
package 일반적인 OS 패키지 관리
dnf dnf 패키지 관리
yum yum 패키지 관리

 

(5) 소스 제어 모듈

git git 관리
github_* github 관련 모듈
gitlab_* gitlab 관련 모듈
bitbucket_* bitbucket 관련 모듈

 

(6) 시스템 모듈

cron crontab 관리
filesystem 파일시스템 관리
firewalld Firewalld 관리
iptables iptables 관리
lvg LVM 볼륨 그룹 관리
lvol LVM 논리 볼륨 관리
mount mount 관리
pared 파티션 관리
ping 원격 호스트 연결 시도
reboot 호스트 재부팅
service  서비스 관리
ufw UFW 방화벽 관리

3. 기타 플러그인 확인

ansible-doc -t <plugin_type> -l

 

플러그인 종류

become cache callback cliconf connection
httpapi inventory netconf lookup shell
module (default) strategy vars    

 

SMALL