위치 기반 공개 URL

Tier: Premium, Ultimate Offering: Self-managed

Geo proxying for secondary sites를 통해 GitLab 사용자에게 가장 가까운 Geo 사이트를 자동으로 사용하는 단일 URL을 제공할 수 있습니다. 사용자들은 다른 URL을 사용하거나 이동하는 동안 가까운 Geo 사이트를 활용하기 위해 읽기 전용 작업을 걱정할 필요가 없습니다.

[secondary] 사이트에서 [primary]로 web 및 Git 요청을 프록시로 보냅니다.

필수 조건

이 예는 요청을 자동으로 보내는 gitlab.example.com 하위 도메인을 생성합니다.

  • 유럽에서 secondary 사이트로부터.
  • 다른 위치에서 primary 사이트로부터.

각 노드에 개별적으로 액세스하는 URL은 다음과 같습니다.

  • Geo primary 사이트로 액세스하는 primary.example.com.
  • Geo secondary 사이트로 액세스하는 secondary.example.com.

이 예에서는 다음이 필요합니다.

  • gitlab.example.com primary.example.com에서 액세스할 수 있는 작동하는 GitLab primary 사이트.
  • 작동하는 GitLab secondary 사이트.
  • 도메인을 관리하는 DNS 영역. 다음 지침에서는 AWS Route53GCP Cloud DNS을 사용하지만 Cloudflare와 같은 다른 서비스도 사용할 수 있습니다.

아직 Geo primary 사이트 및 secondary 사이트를 설정하지 않았다면 Geo 설정 지침을 참조하세요.

AWS Route53

이 예에서는 Route53 Hosted Zone을 사용하여 Route53 설정하는 방법을 보여줍니다.

Route53 Hosted Zone에서 교통 정책을 사용하여 다양한 라우팅 구성을 설정할 수 있습니다. 교통 정책을 만들려면:

  1. Route53 대시보드로 이동하여 Traffic policies를 선택합니다.

  2. Traffic policies를 선택합니다.
  3. Create traffic policy를 선택합니다.
  4. Policy Name 필드에 Single Git Host를 입력하고 Next를 선택합니다.
  5. DNS typeA: IP Address in IPv4 format으로 유지합니다.
  6. Connect to을 선택한 다음 Geolocation rule을 선택합니다.
  7. 첫 번째 Location에 대해:
    1. Default로 유지합니다.
    2. Connect to을 선택한 다음 New endpoint를 선택합니다.
    3. Typevalue로 선택하고 <your **primary** IP 주소>로 작성합니다.
  8. 두 번째 Location에 대해:
    1. Europe를 선택합니다.
    2. Connect to을 선택한 다음 New endpoint를 선택합니다.
    3. Typevalue로 선택하고 <your **secondary** IP 주소>로 작성합니다.

    Add traffic policy endpoints

  9. Create traffic policy를 선택합니다.
  10. Policy record DNS namegitlab를 입력합니다.

    Create policy records with traffic policy

  11. Create policy records를 선택합니다.

Geo헤핑 지원을 위해 gitlab.example.com과 같은 단일 호스트를 성공적으로 설정했습니다.

GCP

이 예에서는 도메인을 관리하는 GCP Cloud DNS 영역을 생성합니다.

지리 기반 레코드 세트를 생성할 때, GCP는 교통의 출처가 정책 항목과 정확히 일치하지 않는 경우 가장 가까운 매치를 적용합니다. 지리 기반 레코드 세트를 만들려면:

  1. Network Services > Cloud DNS를 선택합니다.
  2. 도메인에 구성된 Zone를 선택합니다.
  3. Add Record Set을 선택합니다.
  4. Location-aware 공개 URL의 DNS 이름을 입력합니다. 예: gitlab.example.com.
  5. Routing Policy: Geo-Based를 선택합니다.
  6. Add Managed RRData를 선택합니다.
    1. Source Region: us-central1를 선택합니다.
    2. <**primary** IP 주소>를 입력합니다.
    3. Done을 선택합니다.
  7. Add Managed RRData를 선택합니다.
    1. Source Region: europe-west1을 선택합니다.
    2. <**secondary** IP 주소>를 입력합니다.
    3. Done을 선택합니다.
  8. Create를 선택합니다.

지리 기반 URL을 사용하여 교통을 Geo 사이트에 분배하는 단일 호스트인 gitlab.example.com를 성공적으로 설정했습니다.

secondary 사이트에 대한 Geo 프록시 설정 활성화

모든 Geo 사이트에 사용할 단일 URL을 설정한 후, secondary 사이트에 대한 Geo 프록시 설정 단계를 계속하세요.