GitHub 호스팅 러너로 프라이빗 네트워킹하기

GitHub 호스팅 러너로 프라이빗 네트워킹하기

GitHub 호스팅 러너를 패키지 레지스트리, 비밀 관리자, 기타 온프레미스 서비스 같은 프라이빗 네트워크의 리소스에 연결하는 방법을 알아볼게요.

출처: Private networking with GitHub-hosted runners

본문

GitHub 호스팅 러너 네트워킹 소개

기본적으로 GitHub 호스팅 러너는 공개 인터넷에 접근할 수 있어요. 하지만 러너가 패키지 레지스트리, 비밀 관리자, 기타 온프레미스 서비스 같은 프라이빗 네트워크의 리소스에도 접근하길 원할 수 있어요.

GitHub 호스팅 러너는 모든 GitHub 고객이 공유해요. 하지만 프라이빗 네트워킹을 사용하면 호스팅 러너가 워크플로를 실행하는 동안 프라이빗 네트워크와 리소스에 연결하는 용도로만 독점적으로 사용되도록 구성할 수 있어요.

이 접근을 구성하는 방법은 몇 가지가 있으며, 각각 장단점이 달라요.

OIDC와 함께 API 게이트웨이 사용하기

GitHub Actions에서는 OpenID Connect(OIDC) 토큰을 사용해 GitHub Actions 밖에서 워크플로를 인증할 수 있어요. 자세한 내용은 OIDC로 API 게이트웨이 사용하기를 참고하세요.

WireGuard로 네트워크 오버레이 만들기

API 게이트웨이용 별도 인프라를 유지 관리하고 싶지 않다면, 러너와 프라이빗 네트워크의 서비스 양쪽에서 WireGuard를 실행해 오버레이 네트워크를 만들 수 있어요. 자세한 내용은 WireGuard로 네트워크 오버레이 만들기를 참고하세요.

Azure Virtual Network(VNET) 사용하기

Azure VNET에서 GitHub 호스팅 러너를 사용할 수 있어요. 그러면 CI/CD에 GitHub이 관리하는 인프라를 사용하면서도 러너의 네트워킹 정책을 완전히 제어할 수 있어요. Azure VNET에 대한 자세한 내용은 Azure 문서의 Azure Virtual Network란 무엇인가요?를 참고하세요.

GitHub Team 플랜을 사용하는 조직 소유자는 조직 수준에서 GitHub 호스팅 러너용 Azure 프라이빗 네트워킹을 구성할 수 있어요. 자세한 내용은 조직의 GitHub 호스팅 러너용 Azure 프라이빗 네트워킹 소개를 참고하세요.

더 알아보기 (Learn more)