AWX를 활용하여 서버 배포 자동화 시스템 구축 방법을 제시
Ansible Playbook 관리, 배포 스케줄링 등 다양한 기능 제공
무중단 릴리즈를 위한 L4 in/out, Health Check API 구현
AWX는 Ansible Playbook을 웹 인터페이스로 관리하는 오픈 소스 플랫폼이다. 구체적으로 인벤토리 관리, 작업 템플릿, 자동화된 배포, 권한 관리 기능을 제공한다. 따라서 Celery를 통한 분산 작업 처리 및 REST API를 활용한 자동화 통합이 가능하다.
무중단 배포는 Health Check API를 통해 서비스 상태를 확인한다. L4 out을 통해 트래픽을 중단하고, 배포 후 L4 in으로 서비스를 재개한다. 반면, 이 방식은 Health Check API의 정확성과 L4 설정에 의존하므로, 세심한 설계가 필요하다.
AWX Operator는 Kubernetes 환경에서 AWX를 쉽게 배포하고 관리한다. 구체적으로 CRD를 사용하여 AWX 리소스를 정의하고, 자동화된 배포 및 확장을 지원한다. 따라서 Kubernetes 클러스터 자원을 효율적으로 활용하고, 운영 효율성을 높일 수 있다.