Ansible
2021. 12. 27. 23:53ㆍ기타
728x90
Ansible이란
Ansible이란 python으로 오픈소스로 서버의 프로비저닝, SW 배포 등의 자동화를 관리해주는 도구입니다.
Ansible의 특징
Agentless
타 자동화 도구들은 타겟 대상들에 Agent 설치 기반 PULL 방식으로 동작하는 것에 비해 Ansible은 타겟 대상들에 Agentless 기반의 PUSH 방식으로 동작하기 때문에 기술적, 지리적 제한이 보다 넓습니다.
멱등성
어떤 연산이 여러분 수행되더라도 결과가 달라지지 않는 성질을 의미합니다. Ansible 또한 동일한 모듈을 반복 실행해도 결과가 동일하도록 구성되어 멱등성을 일관되게 수행할 수 있습니다.
Ansible의 구성 요소
Module
Ansible에서 실행되는 개별 작업의 정의입니다. 대상 호스트에서 실행하는 라이브러리들입니다.
Inventory
프로비저닝, 배포 등의 대상을 정리한 파일입니다. 간단하게 말하자면 host ip들을 정리란 파일이고 별명을 붙이거나 그룹으로 묶거나 혹은 ssh 접근 방식을 기록해 놓을 수 있습니다.
Playbook
Inventory에 작성된 서버들을 대상으로하는 특정 행위(프로비저닝, 배포등)에 대해 정의한 파일입니다. 보통 플레이북을 작성한다고 하면 YAML 파일에 작성하는 것인데 인벤토리에 기록된 그룹 및 별명을 통해 task 단위로 묶어서 사용 가능 합니다.
728x90