광고 영역 (상단 디스플레이)

Ansible 플레이북 빌더

호스트·become·태스크 모듈(apt/yum/dnf/copy/template/service/file/lineinfile)·handler·vars를 폼으로 입력하면 즉시 실행 가능한 playbook.yml이 생성됩니다.

1. Play 헤더

2. Tasks

3. Handlers

4. 생성된 playbook.yml

광고 영역 (결과 하단)

Ansible 플레이북 작성 가이드

Ansible은 에이전트 없이 SSH로 원격 호스트를 제어하는 IaC 도구입니다. 가장 자주 작성하는 산출물은 playbook.yml로, 어떤 호스트에서(hosts) 어떤 권한으로(become) 어떤 모듈을(tasks) 실행할지를 선언합니다. 같은 플레이북을 여러 번 실행해도 같은 결과가 되는 멱등성(idempotency)이 큰 장점입니다.

핵심 모듈

Handler 동작 방식

Handler는 일반 task와 동일한 모듈을 쓰지만, notify로 호출된 경우에만 실행됩니다. 또한 플레이북의 모든 task가 끝난 뒤 마지막에 한 번만 실행되어, 설정 파일을 여러 번 수정해도 서비스는 한 번만 재시작되게 합니다. 본 빌더는 task 박스의 "변경 시 호출할 handler" 필드로 notify를 연결합니다.

실행 명령

자주 묻는 질문 (FAQ)

Q. become_user는 어떻게 지정하나요?

A. play 또는 task 레벨에서 become_user: postgres처럼 지정합니다. 본 빌더는 root 권한(become true)만 지원하므로 다른 계정이 필요하면 출력 YAML을 직접 편집하세요.

Q. 변수는 어디에 두는 것이 좋은가요?

A. 적은 양은 플레이북의 vars:에, 환경별로 다르면 group_vars/·host_vars/ 폴더로 분리합니다. 비밀번호는 ansible-vault로 암호화하세요.

Q. when 조건은 어떻게 거나요?

A. 본 빌더는 모듈·인자만 폼으로 받으므로 when은 출력 YAML을 직접 편집해 추가하세요. 예: when: ansible_facts['os_family'] == "Debian".