쿠버네티스 위에서 Github Actions, ARC로 CI/CD 자동화!
by DD
2년 전
조회수 6
Github Actions 자체 호스팅을 위해 ARC(Actions Runner Controller)를 쿠버네티스에 설치
Github 지원 ARC와 커뮤니티 지원 ARC의 차이점 및 장단점 비교 분석
Runner Scale Sets 모드를 활용하여 비용 효율성 및 확장성 확보
ARC 아키텍처: Controller, Listener, Runner의 역할
ARC(Actions Runner Controller)는 Github API를 호출하여 러너 상태를 관리한다. Listener는 러너 스케일링을 담당하며, Runner는 실제 워크로드를 실행하는 격리된 환경이다. 따라서 자동 스케일링을 통해 자원 효율성을 높인다.
Github 지원 ARC vs 커뮤니티 ARC: 트레이드오프 분석
Github 지원 ARC는 Runner Scale Sets 모드를 통해 안정성을 확보한다. 커뮤니티 ARC는 다양한 기능을 제공하지만, API 속도 제한 및 TLS 설정의 복잡성이 존재한다. 따라서 안정성과 기능 유연성 사이의 균형을 고려해야 한다.
ARC 설치 및 설정: 헬름 차트 활용 가이드
헬름(Helm)을 사용하여 ARC와 Runner Scale Sets를 설치한다. 최소 러너 수 설정을 통해 Pending 시간 감소 및 비용 절감을 달성한다. 또한, IAM Role 설정을 통해 AWS 리소스 접근 권한을 제어한다.