위키득계정 ↗
기술

Ansible

Ansible기술
주요 용도
설정 관리와 작업 자동화
작업 정의
플레이북
정의 형식
YAML
기본 설계
에이전트 없는 관리
Ansible은 시스템 설정과 응용 배포 및 반복 운영 작업을 자동화하는 도구다. 플레이북에 작업과 원하는 상태를 기술하고 대상 장비와 연결해 실행하며 관리 대상마다 전용 에이전트를 설치하는 방식을 요구하지 않는다.

플레이북에 기록하는 운영 작업

사람이 읽을 수 있는 YAML 형식으로 자동화 과정을 작성한다. 시스템의 원하는 상태와 이를 구성하는 작업을 플레이북으로 표현해 로컬이나 원격 대상에 적용한다. 반복되는 설정과 배포 절차를 함께 다룰 수 있다.

기존 접속 수단의 활용

원격 장비에 접속할 때 SSH와 기존 운영체제 자격 증명 등을 활용한다. 별도 관리 에이전트를 모든 대상에 계속 설치해 두는 구조를 피하도록 설계되었다. 모듈식 구성으로 여러 운영체제와 클라우드 플랫폼 및 네트워크 장비를 다룬다.

상태에 따른 반복 실행

원하는 상태와 실제 상태를 비교해 필요한 변경을 적용하는 멱등성을 중요한 설계 원칙으로 삼는다. 이미 반영된 상태라면 같은 변경을 반복하지 않는 방식이다. 이런 상태 관리 특성을 바탕으로 시스템 구성을 유지하고 반복 운영 절차를 정리한다.

관련 문서

Terraform / Jenkins / Tekton / SSH / YAML / 리눅스