3. 자동화 관리 도구 비교 - Ansible vs Puppet vs Chef
제품 Ansible Puppet Chef
개발사 AnsibleWorks Puppet Labs Opscode
출시 2012년 3월 2005년 8월 2009년 1월
개발언어 Python Ruby
Ruby(Client) /
Erlang(Server)
코드베이스 Ansible Galaxy Puppet Forge Chef Suermarket
WebUI O (Ansible Tower) O O
정의파일 YAML 독자 DSL / 내장 Ruby 독자 DSL(Ruby Base)
에이전트설치 X O O
확장성 O O O
간편도 상 중 중
가장 늦게 출시 되었으나 출시 이후 꾸준히 성장하고 사람들의 관심이 가장 높음.
에이전트 설치가 필요 없고, 누구나 쉽게 사용할 수 있음
4. Agentless Simple Powerfull
ㆍ 에이전트가 필요없는
환경.
ㆍ OpenSSH &
WinRM 지원
ㆍ 높은 보안성과
신뢰성
ㆍYAML 형식의 읽고
쓰기 쉬운 설정 파일
ㆍ높은수준의 프로그래
밍 스킬 불필요
ㆍ팀간 협업 극대화
ㆍ멱등성* 지원
ㆍ높은 생산성
ㆍ대량의 서버와 네트워크
장비 지원
ㆍ다양한 운영체제 관리
ㆍ동시에 다수의 장비에서
실행
ㆍ완벽환 구성 관리
오케스트레이션, 배포
멱등성이란??
멱등법칙(冪等法則) 또는 멱등성(冪等性, 영어: idempotent)은 수학이나 전산학에서 연산의 한 성질을 나타내는 것으로, 연산을 여러 번 적용하더라도
결과가 달라지지 않는 성질을 의미한다. – 위키백과
Ansible 모듈은 거의 대부분 멱등성을 제공하여 동일 모듈을 여러 번 실행하더라도 결과 값이 달라지지 않는다.
Ansible 특징
10. Ansible WebUI - AWX
DASHBOARD Job의 최근 실행 상태를 한눈에 볼 수 있는 화면
JOBS 최근 실행한 JOB 리스트
SCHEDULES 스케줄로 등록된 Job 리스트
PORTAL MODE 등록된 Job과 실행중인 Job을 하나의 화면에서 확인 가능
PROJECTS playbook 모음을 하나의 단위로 묶어서 관리
CREDENTIALS ansible 실행을 위한 계정 관리 메뉴
CREDENTIAL TYPES 사용자 설정 인증 타입
INVENTORIES Job을 실행하는 Host 모음
TEMPLATES Inventory와 Playbook을 조합하여 실제 job이 실행되는 구성 단위
ORGANIZATIONS Users, Teams, Projects, Inventoryes의 최상위 묶음 단위
USERS AWX 사용자 관리 메뉴
TEAMS AWX 사용자 그룹 단위
INVENTORY SCRIPTS 사용자 Inventory Script 관리 메뉴
NOTIFICATIONS ansible의 실행 상태를 알려주는 알람 등록 화면
MANAGEMENT JOBS Job 리스트나 실행 상태를 관리
INSTANCE GROUPS Job을 실행하는 단위 그룹
SETTINGS AWX의 인증과 기본 Job, ansible 설정을 관리
11. https://www.ansible.com/ - ansible 홈페이지
Ansible 참고 URL
https://github.com/ansible/ansible - ansible Git 저장소
https://docs.ansible.com/ansible/latest/index.html - ansible 가이드 문서
https://github.com/ansible/awx - ansible awx Git 저장소
https://docs.openstack.org/openstack-ansible/latest/ko_KR/index.html
- OpenStack-Ansible 문서