더 큰 러너에 대한 접근 제어하기
더 큰 러너에 대한 접근 제어하기
정책을 사용해 조직이나 엔터프라이즈에 추가된 더 큰 러너(larger runners)에 대한 접근을 제한할 수 있어요. 러너 그룹은 어떤 저장소가 더 큰 러너에서 작업을 실행할 수 있는지 제어해요.
출처: 문서
본문
더 큰 러너 접근 관리하기
Note
워크플로가 더 큰 러너로 작업을 보낼 수 있으려면 먼저 러너 그룹의 권한을 구성해야 해요. 자세한 내용은 다음 섹션을 참고하세요.
러너 그룹은 어떤 저장소가 더 큰 러너에서 작업을 실행할 수 있는지 제어하는 데 사용돼요. 더 큰 러너를 정의한 위치에 따라 관리 계층의 각 수준에서 그룹에 대한 접근을 관리해야 해요:
- 엔터프라이즈 수준의 러너: 기본적으로 조직의 저장소는 엔터프라이즈 수준 러너 그룹에 접근할 수 없어요. 저장소가 엔터프라이즈 러너 그룹에 접근할 수 있게 하려면 조직 소유자가 각 엔터프라이즈 러너 그룹을 구성하고 어떤 저장소가 접근할지 선택해야 해요.
- 조직 수준의 러너: 기본적으로 조직의 모든 저장소는 조직 수준 러너 그룹에 접근할 수 있어요. 어떤 저장소가 접근할지 제한하려면 조직 소유자가 조직 러너 그룹을 구성하고 어떤 저장소가 접근할지 선택해야 해요.
예를 들어 다음 다이어그램에는 엔터프라이즈 수준에 grp-ubuntu-24.04-16core라는 러너 그룹이 있어요. octo-repo라는 저장소가 그 그룹의 러너를 사용할 수 있으려면 먼저 엔터프라이즈 수준에서 그룹을 구성해 octo-org 조직이 접근할 수 있게 해야 해요. 그런 다음 조직 수준에서 그룹을 구성해 octo-repo가 접근할 수 있게 해야 해요.

조직용 러너 그룹 만들기
Warning
고정 IP 범위(Fixed IP range)를 사용한다면 더 큰 러너를 비공개 저장소에만 사용할 것을 권장해요. 저장소의 포크는 워크플로에서 코드를 실행하는 풀 리퀘스트를 만들어 더 큰 러너에서 위험한 코드를 잠재적으로 실행할 수 있어요.
Note
러너 그룹을 만들 때는 어떤 저장소가 러너 그룹에 접근할지 정의하는 정책을 선택해야 해요. 어떤 저장소와 워크플로가 러너 그룹에 접근할 수 있는지 변경하려면 조직 소유자가 조직에 대한 정책을 설정할 수 있어요. 자세한 내용은 그룹을 사용해 자체 호스팅 러너 접근 관리하기를 참고하세요.
모든 조직에는 단일 기본 러너 그룹이 있어요. GitHub Team 플랜을 사용하는 조직 소유자는 추가 조직 수준 러너 그룹을 만들 수 있어요.
등록 과정에서 그룹을 지정하지 않으면 러너가 자동으로 기본 그룹에 추가돼요. 나중에 러너를 기본 그룹에서 커스텀 그룹으로 이동할 수 있어요.
REST API로 러너 그룹을 만드는 방법은 GitHub Actions를 위한 REST API 엔드포인트를 참고하세요.
-
GitHub에서 조직의 메인 페이지로 이동해요.
-
조직 이름 아래에서 Settings 탭을 클릭해요.

-
왼쪽 사이드바에서 Actions을 클릭한 다음 Runner groups을 클릭해요.
-
"Runner groups" 섹션에서 New runner group을 클릭해요.
-
러너 그룹의 이름을 입력해요.
-
저장소 접근에 대한 정책을 할당해요.
러너 그룹을 특정 저장소 목록에 접근 가능하도록 구성하거나, 조직의 모든 저장소에 접근 가능하도록 구성할 수 있어요. 기본적으로 비공개 저장소만 러너 그룹의 러너에 접근할 수 있지만, 이를 재정의할 수 있어요. 엔터프라이즈가 공유한 조직의 러너 그룹을 구성하는 경우 이 설정은 재정의할 수 없어요.
-
Create group을 클릭해 그룹을 만들고 정책을 적용해요.
러너 그룹에 접근할 수 있는 저장소 변경하기
Warning
고정 IP 범위(Fixed IP range)를 사용한다면 더 큰 러너를 비공개 저장소에만 사용할 것을 권장해요. 저장소의 포크는 워크플로에서 코드를 실행하는 풀 리퀘스트를 만들어 더 큰 러너에서 위험한 코드를 잠재적으로 실행할 수 있어요.
조직의 러너 그룹에 대해, 조직 내 어떤 저장소가 러너 그룹에 접근할 수 있는지 변경할 수 있어요.
-
러너 그룹이 있는 조직의 메인 페이지로 이동해요.
-
조직 이름 아래에서 Settings 탭을 클릭해요.
-
왼쪽 사이드바에서 Actions을 클릭한 다음 Runner groups을 클릭해요.
-
그룹 목록에서 구성할 러너 그룹을 클릭해요.
-
"Repository access" 아래에서 드롭다운 메뉴를 사용해 Selected repositories을 클릭해요.
- 드롭다운 메뉴 오른쪽에서 설정 아이콘(기어)을 클릭해요.
- 팝업에서 이 러너 그룹에 접근할 수 있는 저장소를 선택하려면 체크박스를 사용해요.
-
Save group을 클릭해요.
더 큰 러너의 사설 네트워크 접근 구성하기
Azure VNET에서 GitHub 호스팅 러너를 사용할 수 있어요. 이렇게 하면 CI/CD에 GitHub 관리 인프라를 사용하면서도 러너의 네트워킹 정책을 완전히 제어할 수 있어요. Azure VNET에 대한 자세한 내용은 Azure 문서의 Azure Virtual Network란 무엇인가요?를 참고하세요.
조직이 Azure VNET에 연결하도록 구성했다면 러너 그룹에 가상 네트워크 접근 권한을 줄 수 있어요. 자세한 내용은 GitHub 호스팅 러너의 사설 네트워킹을 참고하세요.
네트워크 구성이 있는 러너 그룹에는 macOS 더 큰 러너를 할당할 수 없어요. 마찬가지로 macOS 더 큰 러너가 포함된 러너 그룹에는 네트워크 구성을 추가할 수 없어요.
러너 그룹 이름 변경하기
- 러너 그룹이 있는 조직의 메인 페이지로 이동해요.
- 조직 이름 아래에서 Settings 탭을 클릭해요.
- 왼쪽 사이드바에서 Actions을 클릭한 다음 Runner groups을 클릭해요.
- 그룹 목록에서 구성할 러너 그룹을 클릭해요.
- "Group name" 아래의 텍스트 필드에 새 러너 그룹 이름을 입력해요.
- Save을 클릭해요.
러너를 그룹으로 이동하기
등록 과정에서 러너 그룹을 지정하지 않으면 새 러너가 자동으로 기본 그룹에 할당되며, 이후 다른 그룹으로 이동할 수 있어요.
-
GitHub에서 조직의 메인 페이지로 이동해요.
-
조직 이름 아래에서 Settings 탭을 클릭해요.

-
왼쪽 사이드바에서 Actions을 클릭한 다음 Runners을 클릭해요.
-
"Runners" 목록에서 구성할 러너를 클릭해요.
-
Runner group 드롭다운을 선택해요.
-
"Move runner to group"에서 러너의 대상 그룹을 선택해요.
러너 그룹 제거하기
러너 그룹을 제거하려면 먼저 그 그룹의 모든 러너를 이동하거나 제거해야 해요.
- 러너 그룹이 있는 조직의 메인 페이지로 이동해요.
- 조직 이름 아래에서 Settings 탭을 클릭해요.
- 왼쪽 사이드바에서 Actions을 클릭한 다음 Runner groups을 클릭해요.
- 그룹 목록에서 삭제할 그룹 오른쪽의 케밥(세로 점 3개) 아이콘을 클릭해요.
- 그룹을 제거하려면 Remove group을 클릭해요.
- 확인 프롬프트를 검토하고 Remove this runner group을 클릭해요.