Skip to main content

엔터프라이즈를 위한 자체 호스트 러너 시작하기

소속 개발자들이 GitHub Actions를 사용해 워크플로 자동화를 시작할 수 있도록 엔터프라이즈용 러너 머신을 구성할 수 있습니다.

누가 이 기능을 사용할 수 있나요?

Enterprise owners and users with permissions can configure policies for GitHub Actions and add self-hosted runners to the enterprise.

GitHub Actions용 자체 호스팅 실행기 정보

GitHub Actions을(를) 사용하면 엔터프라이즈 사용자가 소프트웨어 개발 워크플로의 모든 단계를 자동화하여 생산성을 향상시킬 수 있습니다. 자세한 내용은 기업용 GitHub Actions 정보을 참조하세요.

이를 통해 GitHub Actions개발자는 작업이라는 개별 작업을 작성하고 결합하여 사용자 지정 워크플로를 만들 수 있습니다.

GitHub Actions에 대해 GitHub Enterprise Server 인스턴스을 사용하도록 설정하려면 작업을 실행할 머신을 하나 이상 호스팅해야 합니다. 컴퓨터를 자체 호스팅 실행기라고 합니다. 실행기 머신은 GitHub 자체 호스트 실행기 애플리케이션을 사용하여 GitHub Actions에 연결합니다. 자체 호스팅 실행기는 Linux, Windows 또는 macOS를 실행할 수 있습니다. 자세한 내용은 자체 호스팅 실행기을(를) 참조하세요.

이 가이드에서는 엔터프라이즈에서 GitHub Actions용 자체 호스팅 실행기에 중앙 집중식 관리 방식을 적용하는 방법을 설명합니다. 이 가이드에서는 다음 작업을 완료할 것입니다.

  1. 엔터프라이즈 내에서 실행할 수 있는 작업 제한하도록 제한된 정책 구성
  2. 엔터프라이즈를 위해 자체 호스트 러너를 배포하십시오.
  3. 엔터프라이즈에 사용할 수 있는 실행기에 대한 액세스 권한을 관리하는 그룹 만들기
  4. 선택 사항으로 러너를 사용할 수 있는 리포지토리를 추가로 제한합니다.
  5. 선택적으로 자체 호스팅 실행기를 자동으로 구축하고 확장하려면 Actions Runner Controller (ARC)를 사용하세요. 자세한 내용은 Actions Runner 컨트롤러을(를) 참조하세요.

자체 호스팅 실행기를 모니터링하고 보호하는 방법,GitHub.com에서 Actions에 액세스하는 방법, 그리고 실행기 컴퓨터의 소프트웨어를 사용자 지정하는 방법에 대한 추가 정보도 확인할 수 있습니다.

가이드를 완료하면 GitHub Enterprise Server 인스턴스 사용자가 GitHub Actions에서 자체 호스팅 실행기 머신으로 워크플로 작업을 실행할 수 있습니다.

필수 조건

  • GitHub Actions에 대해 GitHub Enterprise Server을 활성화해야 합니다. 사이트 관리자는 귀하의 인스턴스에 대해 GitHub Actions을(를) 활성화하고 구성할 수 있습니다. 자세한 내용은 GitHub Enterprise Server에서 GitHub Actions 시작하기을(를) 참조하세요.

  • 사용자 환경에서 자체 호스팅 실행기로 사용할 컴퓨터에 액세스할 수 있어야 합니다.

  • 자체 호스팅 실행기와 GitHub 간의 연결은 HTTP(포트 80) 또는 HTTPS(포트 443)를 통해 이루어집니다. HTTPS를 통한 연결을 보장하려면 에 대한 TLS를 GitHub Enterprise Server구성합니다. 자세한 내용은 TLS 구성을 참조하세요.

1. GitHub Actions에 대한 정책 구성

먼저 모든 조직에 사용하도록 설정하고 GitHub Actions 엔터프라이즈수 있는 작업GitHub Enterprise Server 인스턴스 및 재사용 가능한 워크플로를 제한하는 정책을 구성합니다. 필요에 따라 조직 소유자는 각 조직에 대해 이러한 정책을 추가로 제한할 수 있습니다.

  1. GitHub Enterprise Server의 오른쪽 위 모서리에서 프로필 사진과 Enterprise settings를 차례로 클릭합니다.
  2. 페이지 맨 위에서 정책을 클릭합니다****.
  3. " 정책"에서 작업을 클릭합니다.
  4. “정책”에서 모든 조직에 대해 사용하도록 설정을 선택합니다.
  5. 로컬 액션 그리고 GitHub에서 만든 액션을 사용하도록 설정하려면 선택 작업 허용____을 선택한 다음, GitHub에서 만든 액션 허용을 선택합니다.
  6. 저장을 클릭합니다.

의 엔터프라이즈 구성원GitHub Enterprise Server 인스턴스사용할 수 있는 작업을 제한하도록 추가 정책을 구성할 수 있습니다. 자세한 내용은 엔터프라이즈에서 GitHub Actions 대한 정책 적용을(를) 참조하세요.

2. 엔터프라이즈를 위한 자체 호스트 실행기 배포

다음으로, 기업에 자체 호스트 러너를 추가합니다. GitHub이 러너 머신에 필요한 소프트웨어의 설치 과정을 안내합니다. 실행기를 배포한 후에는 실행기 컴퓨터와 GitHub Enterprise Server 인스턴스 간의 연결을 확인할 수 있습니다.

자체 호스트 실행기 추가

  1. GitHub Enterprise Server의 오른쪽 위 모서리에서 프로필 사진과 Enterprise settings를 차례로 클릭합니다.

  2. 페이지 맨 위에서 정책을 클릭합니다****.

  3. " 정책"에서 작업을 클릭합니다.

  4. 실행기 탭을 클릭합니다.

  5. 새 실행기를 클릭합니다. 1. 자체 호스팅 실행기 컴퓨터의 운영 체제 이미지 및 아키텍처를 선택합니다.

    운영 체제 및 아키텍처 선택 스크린샷 해당 옵션이 진한 주황색 윤곽선으로 강조 표시됩니다.

  6. 러너 애플리케이션을 다운로드하고 자체 호스팅 러너 머신에 설치하는 방법을 보여주는 지침이 표시됩니다.

    자체 호스팅 실행기 컴퓨터에서 셸을 열고 표시되는 순서대로 각 셸 명령을 실행합니다.

    참고

    Windows에서 자체 호스팅 실행기 애플리케이션을 서비스로 설치하려면 관리자 권한으로 셸을 열어야 합니다. 또한 Windows 시스템 계정이 실행기 디렉터리에 액세스할 수 있도록 C:\actions-runner를 자체 호스팅 실행기 애플리케이션의 디렉터리로 사용하는 것이 좋습니다.

    지침은 다음 작업을 완료하는 단계를 안내합니다.

    • 자체 호스팅 러너 애플리케이션 다운로드하고 압축 해제하기
    • config 스크립트를 실행하여 셀프 호스팅 러너 애플리케이션을 구성하고 GitHub Actions에 등록합니다. config 스크립트에는 요청을 인증하기 위해 대상 URL 및 자동으로 생성된 시간 제한 토큰이 필요합니다. 토큰은 1시간 후에 만료됩니다.
      • Windows에서는 config 스크립트도 자체 호스팅 실행기 애플리케이션을 서비스로 설치할지 여부를 묻습니다. Linux 및 macOS의 경우 실행기 추가를 완료한 후 서비스를 설치할 수 있습니다. 자세한 내용은 자체 호스트형 런너 애플리케이션을 서비스로 설정을(를) 참조하세요.
    • 자체 호스팅 실행기 애플리케이션을 실행하여 컴퓨터를 GitHub Actions에 연결하는 중입니다.

자체 호스트 실행기를 성공적으로 추가했는지 확인

자체 호스트형 실행기를 추가하는 단계를 완료하면 이제 실행기와 실행기 상태가 "자체 호스트형 실행기"에 나열됩니다.

실행기에서 작업을 수락하려면 자체 호스트 실행기 애플리케이션이 활성화되어 있어야 합니다. 실행기 애플리케이션이 GitHub에 연결되어 작업을 받을 준비가 되면 머신의 터미널에 다음 메시지가 표시됩니다.

√ Connected to GitHub

2019-10-24 05:45:56Z: Listening for Jobs

3. 그룹을 사용하여 자체 호스트 실행기에 대한 액세스 권한 관리

실행기 그룹을 만들어 엔터프라이즈에 추가한 실행기에 대한 액세스 권한을 관리할 수 있습니다. 그룹을 사용하여 러너에서 GitHub Actions의 작업을 실행할 수 있는 조직을 선택합니다.

GitHub는 새로운 모든 러너를 그룹에 추가합니다. 러너는 한 번에 하나의 그룹에만 있을 수 있습니다. 기본적으로 GitHub는 새 러너를 "기본" 그룹에 추가합니다.

  1. GitHub Enterprise Server의 오른쪽 위 모서리에서 프로필 사진과 Enterprise settings를 차례로 클릭합니다.

  2. 페이지 맨 위에서 정책을 클릭합니다****.

  3. " 정책"에서 작업을 클릭합니다.

  4. 실행기 그룹 탭을 클릭합니다.

  5. 새 실행기 그룹을 클릭합니다.

  6. “그룹 이름”에 실행기 그룹의 이름을 입력합니다.

  7. 조직 액세스에 대한 정책을 선택하려면 “조직 액세스”에서 조직 액세스 드롭다운을 선택하고 선택한 조직을 클릭합니다.

  8. 조직 액세스 정책이 있는 드롭다운 오른쪽에서 을 클릭합니다 .

  9. 실행기 그룹에 대한 액세스 권한을 부여하려는 조직을 선택합니다.

  10. 필요에 따라 선택한 조직의 퍼블릭 리포지토리가 그룹의 실행기를 사용하도록 허용하려면 퍼블릭 리포지토리 허용을 선택합니다.

    경고

    프라이빗 리포지토리에는 자체 호스팅 실행기만 사용하는 것이 좋습니다. 퍼블릭 리포지토리의 포크가 워크플로에서 코드를 실행하는 끌어오기 요청을 만들어 자체 호스팅 실행기 컴퓨터에서 위험한 코드를 실행할 수 있기 때문입니다.

    자세한 내용은 안전 사용 참조을(를) 참조하세요.

  11. 그룹 생성을 클릭하여 그룹을 만들고 정책을 적용합니다.

  12. “러너” 탭을 클릭합니다.

  13. 실행기 목록에서 이전 섹션에서 배포한 실행기를 클릭합니다.

  14. 편집을 클릭합니다.

  15. Runner groups 을 클릭합니다.

  16. 실행기 그룹 목록에서 이전에 만든 그룹의 이름을 클릭합니다.

  17. 저장을 클릭하여 러너를 그룹으로 이동합니다.

이제 지정한 조직에서 GitHub Actions의 작업을 실행할 수 있는 자체 호스팅 러너를 배포했습니다.

4. 자체 호스트 실행기에 대한 액세스 추가 제한

필요에 따라 "조직 실행기 및 실행기 그룹 관리" 권한이 있는 조직 소유자 및 사용자는 만든 실행기 그룹의 액세스 정책을 추가로 제한할 수 있습니다. 예를 들어 조직 소유자는 조직의 특정 리포지토리만 실행기 그룹을 사용하도록 허용할 수 있습니다.

자세한 내용은 그룹을 사용하여 자체 호스팅 실행기에 대한 액세스 관리을(를) 참조하세요.

사용자 지정 조직 역할에 대한 자세한 내용은 사용자 지정 조직 역할의 권한을 참조하세요.

5. 자체 호스트 실행기 자동 스케일링

선택적으로 Actions Runner Controller (ARC)를 사용하여 자체 호스팅 러너를 자동으로 확장할 수 있습니다. Actions Runner Controller (ARC)는 GitHub Actions를 위한 자체 호스팅 러너를 오케스트레이션하고 확장하는 Kubernetes 오퍼레이터입니다. 자세한 내용은 Kubernetes 문서의 작동 패턴을 참조하세요.

ARC를 사용하면 리포지토리, 조직 또는 엔터프라이즈에서 실행 중인 워크플로 수에 따라 자동으로 확장 및 축소되는 실행기 스케일 세트를 만들 수 있습니다. 제어된 실행기가 임시 실행기이거나 컨테이너 기반일 수 있으므로, 새 실행기 인스턴스는 신속하고 명확하게 스케일 업 또는 스케일 다운할 수 있습니다. 오토스케일링에 대한 자세한 내용은 자체 호스팅 실행기 참조을(를) 참조하세요.

다음 단계

  • 자체 호스트 실행기를 모니터링하고 일반적인 이슈를 해결할 수 있습니다. 자세한 내용은 자체 호스트형 실행기 모니터링 및 문제 해결을(를) 참조하세요.

  • GitHub는 자체 호스팅 러너 머신의 보안 고려 사항을 검토할 것을 권장합니다. 자세한 내용은 안전 사용 참조을(를) 참조하세요.

  • , GitHub.com에서 작업이 포함된 리포지토리를 GitHub Enterprise Server의 엔터프라이즈에 수동으로 동기화할 수 있습니다. 또는 GitHub.com을 사용하여 엔터프라이즈의 구성원이 GitHub Connect의 작업에 자동으로 액세스하도록 허용할 수 있습니다. 자세한 내용은 다음 항목을 참조하십시오.

  • 자체 호스팅 실행기 머신에서 사용할 수 있는 소프트웨어를 사용자 지정하거나, 실행기가 GitHub호스팅 실행기와 유사한 소프트웨어를 실행하도록 구성할 수 있습니다. 이 호스팅 실행기는 GitHub.com를 사용하는 고객이 이용할 수 있습니다. GitHub Actions의 러너 머신을 구동하는 소프트웨어는 오픈 소스입니다. 자세한 내용은 actions/runneractions/runner-images 리포지토리를 참조하세요.

추가 참고 자료