Ansible을 회사에서 운영하려고 하니.
"누가 언제 어떤 명령을 실행했는가?"를 확인할 수 있어야 했다.
이걸 해결하기 위해서 별도의 솔루션을 알아보고자 한다.
추가로, 좀 더 보기 편한 UI도 덤으로..!!
회사에서 사용하려면 필요한 조건은!
* 편한 UI
* 작업이력 확인 기능
Ansible 의 대표 솔루션 3가지를 알아보려고 한다.
- Ansible Tower
- Ansible Semaphore
- Ansible AWX
[Ansible Tower]
첫번째로 소개할 솔루션은 Ansible Tower!
URL : https://www.ansible.com/products/tower
Ansible의 가장 대표적인 상용솔루션이다. (RedHat에서 지원)
대부분의 오픈소스 Ansible 솔루션은 이 Ansible Tower를 기본으로 따라 만들었다고 해도 과언이 아니다.
장점 :
Ansible 운영에 필요한 모든 기능이 구현되어 있다.
상용 솔루션이라 안정적으로 기능 구현이 되어 있으며, 문서화가 잘 되어 있다.
단점 :
모든 장점을 뒤집을 단점이 있다. 가격! 비싸다!! 역시 레드헷
기능 :
대시보드 / 역할 기반 액세스 제어 / 작업 스케줄링 / 그래픽 재고 관리
/ 워크플로 / 외부 로깅 통합 / 실시간 작업 업데이트 등
대시보드 | 작업이력 |
비용(Price) :
무료평가판 라이선스 - 최대 10대의 관리 대상(노드)
상용 라이선스 가입 모델 :
Basic Tower | Enterprise Tower | Premium Tower |
$5,000 per year |
$10,000 per year |
$14,000 per year |
Up to 100 nodes
|
Up to 100 nodes
|
Up to 100 nodes
|
[Semaphore]
Ansible Tower의 대체용 오픈소스로 Semaphore 버전이다.
URL : https://ansible-semaphore.com/
Ansible Tower의 대부분 기능이 구현되어 있다.
(LDAP 인증도 지원한다. )
비용(Price)
* Community = Free
* Enterprise = Commercial
H/W Requirement SPEC :
* CPU - 3.4 Ghz (2 cores) / Memory - 4 GB / Storage - 40 GB
Prerequisites :
* MySQL >= 5.6.4/MariaDB >= 5.3
* Ansible in $PATH
* git >= 2.x in $PATH
설치방법
2022.03.24 - [IT Knowledge/Ansible] - Ansible Semaphore Install on CentOS7
사용방법
2022.03.25 - [IT Knowledge/Ansible] - Ansible Semaphore 2.8.53 사용법
대시보드 | 작업이력 |
[AWX]
Ansible Tower의 오픈소스 버전
URL : https://github.com/ansible/awx
Ansible AWX 역시, Ansible Tower의 대부분의 기능이 구현되어 있다.
(LDAP 인증도 지원한다. )
비용 : 무료
H/W Requirement SPEC :
* CPU - 4 cores / Memory - 8 GB
Prerequisites :
* Ansible 2.8+
* CentOS 7
* Python 3.6+
* Docker
Ansible AWX Ver 17 설치하기
2022.04.02 - [IT Knowledge/Ansible] - Ansible AWX 설치(ver. 17 / CentOS 7)
Q. 기업에서 AWX를 사용해도 되나요? AWX는 Apache 2.0 라이선스를 따릅니다(참고). Apache 2.0에선 소스 수정 시 코드 공개를 강제하지 않습니다. 기업에서 사용하셔도 됩니다. 오히려 AWX를 이용하여 외부에 소스를 공개하거나 상용 솔루션 등을 만들 경우에 대해서 여러 조건 사항이 있으므로 그런 경우엔 확인할 필요가 있습니다. 특허와 관련해서 특허 보복 조항이 있기 때문에 소스를 대외에 공개하는 경우 라이선스에 주의해야 합니다. AWX 프로젝트는 공개되어 있으며 Git에서 다운로드하여 설치한 뒤 사용할 수 있습니다. 다만 기업에서 사용하려면 일부 설치 코드를 직접 조정해야 할 수 있습니다. 이러한 부분은 고가용성(high availability) 등을 요구하는 환경에서 필요하며, 단순히 단일 노드로 운영하기 위한 설치는 어렵지 않습니다. 참조 : https://engineering.linecorp.com/ko/blog/ansible-awx-for-provisioning-1/ |
Ansible Semaphore vs AWX 비교
Ansible AWX | Ansible Semaphore | |
라이선스 | Apache 2.0 | MIT License |
소스 업데이트 | 둘 다 최근까지 지속적으로 업데이트 됨 | 둘 다 최근까지 지속적으로 업데이트 됨 |
구성방법 | Kubernetes 기반 솔루션(Minikube, K3s 등 포함) -. Awx operator를 활용 |
BareMetal에서 구성방법이 편리함 - Snap(snap install) - Package Manager(yum install) - Docker(docker-compose up) - Binary File (tar 압축해제) |
장점 | 레퍼런스 자료가 많음 Semaphore와 비교해서 기능이 좀 더 많음 |
구성방법이 쉬움 |
단점 | 컨테이너 환경(kubernetes)에 대한 기반지식이 필요 | 레퍼런스 자료가 다소 부족함 |
기능 | Task Templates / Access Reporting / Logs / Schedule Workflow / Delegate | Task Templates / Access Control / Logs / Notifications / API |
https://www.ansible.com/blog/5-things-you-can-do-with-awx |
https://medium.com/@farzadhabibii98/using-ansible-semaphore-instead-of-ansible-tower-e9d997b82041 |
참고자료
https://www.centlinux.com/2020/05/install-ansible-semaphore-on-centos-8.html
https://meetup.toast.com/posts/258
https://engineering.linecorp.com/ko/blog/ansible-awx-for-provisioning-1/
'IT Knowledge > IaC' 카테고리의 다른 글
Ansible Semaphore 2.8.53 사용법 (2) | 2022.03.25 |
---|---|
Ansible Semaphore Install on CentOS7 (1) | 2022.03.24 |
Ansible Python 버전 업그레이드 2.7 to 3.6 (0) | 2021.08.10 |
Python upgrade 2.7 to 3.6(CentOS 7) (0) | 2021.08.10 |
Ansible Role 개요 및 사용법 (0) | 2021.07.31 |
댓글