* Ansible 이란?
오픈소스 자동화 플랫폼
ansible 플레이북에서 it 애플리케이션 인프라스트럭쳐를 완벽하게 설명할 수 있는 간단한 자동화 언어
ansible 플레이북을 실행하는 자동화 엔진
구성관리, 워크플로우 자동화, 네트워크 자동화를 목적으로 애플리케이션을 배포하는데 사용
전체 애플리케이션 라이프사이클을 오케스트레이션 할 수 있음
* Ansible 장점
다양한 플랫폼 지원
사람이 읽기 쉬움
애플리케이션에 대한 완벽한 설명
(플레이북을 통해 모든 변경을 수행하고 애플리케이션의 환경의 모든 측면을 설명, 기록할 수 있다.)
다른 시스템과 쉽게 통합됨
* Ansible 개념 및 아키텍처
ansible은 다양한 자동화 작업을 수행할 수 있는 수백개의 모듈을 제공한다. 시스템 파일에 대한 작업, 소프트웨어 설치 또는 api 호출을 수행할 수 있다.
가장 중요한 개념으로 '멱등성'을 들 수 있는데,
ansible은 멱등이 되도록 설계되어 있어 같은 호스트에서 여러번 플레이북을 실행했을때
원하는 상태가 아니었을때는 원하는 상태가 되고 원하는 상태에 있을때는 변경되지 않는다.
또한 작업이 실패하는 경우 실패한 호스트에 대해 나머지 작업이 중단된다.
ansible 아키텍처는 에이전트가 필요하지 않는다. 관리자가 ansible 플레이북이나 ad-hoc 명령으로
작업을 실행할때 제어 노드는 기본적으로 ssh를 사용하여 관리 호스트에 연결한다.
· 프로비저닝: 미리 어떤 장비들을 원하는 상태로 만들어 두는 것. 필요할때 바로 쓰기 위함.
· CI/CD: 지속적인 통합/지속적인 배포
· 오케스트레이션: 자동화된 작업에 대한 배치나 조정, 워크 플로우의 결과
ex) 컨테이너 오케스트레이션 툴: 쿠버네티스
'Ansible' 카테고리의 다른 글
[Ansible] 인벤토리, 구성 파일 관리 (0) | 2021.05.24 |
---|---|
[Ansible] 공개키 등록 (0) | 2021.05.20 |
[Ansible] virtual box centos7 ansible 설치 (0) | 2021.05.18 |