InfoGrab Docs

웹 내보내기 도구 (전용 메트릭 서버)

요약

메인 애플리케이션 서버와 별도로 메트릭을 수집하여 GitLab 모니터링의 신뢰성과 성능을 향상시킵니다. 중간 규모 또는 대규모 설치의 경우 이 분리는 피크 사용 시간 동안 더 일관된 데이터 수집을 제공하고 높은 부하 기간 동안 중요한 메트릭을 놓칠 위험을 줄일 수 있습니다.

메인 애플리케이션 서버와 별도로 메트릭을 수집하여 GitLab 모니터링의 신뢰성과 성능을 향상시킵니다. 전용 메트릭 서버는 모니터링 트래픽을 사용자 요청에서 격리하여 메트릭 수집이 애플리케이션 성능에 영향을 주지 않도록 합니다.

중간 규모 또는 대규모 설치의 경우 이 분리는 피크 사용 시간 동안 더 일관된 데이터 수집을 제공하고 높은 부하 기간 동안 중요한 메트릭을 놓칠 위험을 줄일 수 있습니다.

GitLab 메트릭 수집 작동 방식#

Prometheus로 GitLab을 모니터링할 때 GitLab은 사용량, 부하 및 성능과 관련된 데이터에 대해 애플리케이션을 샘플링하는 다양한 수집기를 실행합니다. 그런 다음 GitLab은 하나 이상의 Prometheus 내보내기 도구를 실행하여 이 데이터를 Prometheus 스크래퍼에서 사용할 수 있게 할 수 있습니다. Prometheus 내보내기 도구는 메트릭 데이터를 Prometheus 스크래퍼가 이해하는 형식으로 직렬화하는 HTTP 서버입니다.

Note

이 페이지는 웹 애플리케이션 메트릭에 관한 것입니다. 백그라운드 job 메트릭을 내보내려면 Sidekiq 메트릭 서버 구성 방법을 알아보세요.

웹 애플리케이션 메트릭을 내보낼 수 있는 두 가지 메커니즘을 제공합니다:

  • 메인 Rails 애플리케이션을 통해. 이는 사용하는 애플리케이션 서버인 Puma가 자체 /-/metrics 엔드포인트를 통해 메트릭 데이터를 사용할 수 있게 한다는 것을 의미합니다. 이것이 기본값이며 GitLab 메트릭에 설명되어 있습니다. 수집되는 메트릭 양이 적은 소규모 GitLab 설치에는 이 기본값을 사용해야 합니다.
  • 전용 메트릭 서버를 통해. 이 서버를 활성화하면 Puma가 메트릭을 제공하는 것이 유일한 책임인 추가 프로세스를 시작합니다. 이 접근 방식은 매우 큰 GitLab 설치에서 더 나은 오류 격리 및 성능으로 이어지지만 추가 메모리 사용이 수반됩니다. 높은 성능과 가용성을 추구하는 중간 규모 또는 대규모 GitLab 설치에 이 접근 방식을 권장합니다.

전용 서버와 Rails /-/metrics 엔드포인트 모두 동일한 데이터를 제공하므로 기능적으로 동일하며 단지 성능 특성이 다릅니다.

전용 서버를 활성화하려면:

  1. Prometheus를 활성화합니다.

  2. /etc/gitlab/gitlab.rb를 편집하여 다음 줄을 추가(또는 찾아 주석 해제)합니다. puma['exporter_enabled']true로 설정되어 있는지 확인합니다:

    puma['exporter_enabled'] = true
    puma['exporter_address'] = "127.0.0.1"
    puma['exporter_port'] = 8083
    
  3. Prometheus 스크래퍼를 구성합니다:

  4. 파일을 저장하고 변경 사항이 적용되도록 GitLab을 재구성합니다.

이제 localhost:8083/metrics에서 메트릭을 제공하고 스크래핑할 수 있습니다.

HTTPS 활성화#

히스토리

HTTP 대신 HTTPS를 통해 메트릭을 제공하려면 내보내기 도구 설정에서 TLS를 활성화합니다:

  1. /etc/gitlab/gitlab.rb를 편집하여 다음 줄을 추가(또는 찾아 주석 해제)합니다:

    puma['exporter_tls_enabled'] = true
    puma['exporter_tls_cert_path'] = "/path/to/certificate.pem"
    puma['exporter_tls_key_path'] = "/path/to/private-key.pem"
    
  2. 파일을 저장하고 변경 사항이 적용되도록 GitLab을 재구성합니다.

TLS가 활성화되면 이전에 설명한 것과 동일한 portaddress가 사용됩니다. 메트릭 서버는 HTTP와 HTTPS를 동시에 제공할 수 없습니다.

관련 주제#

문제 해결#

Docker 컨테이너 공간 부족#

Docker에서 GitLab을 실행할 때 컨테이너 공간이 부족할 수 있습니다. 이는 웹 내보내기 도구와 같이 공간 소비를 증가시키는 특정 기능을 활성화할 때 발생할 수 있습니다.

이 문제를 해결하려면 shm-size를 업데이트합니다.

웹 내보내기 도구 (전용 메트릭 서버)

Tier: Free, Premium, Ultimate
Offering: GitLab Self-Managed
원문 보기
요약

메인 애플리케이션 서버와 별도로 메트릭을 수집하여 GitLab 모니터링의 신뢰성과 성능을 향상시킵니다. 중간 규모 또는 대규모 설치의 경우 이 분리는 피크 사용 시간 동안 더 일관된 데이터 수집을 제공하고 높은 부하 기간 동안 중요한 메트릭을 놓칠 위험을 줄일 수 있습니다.

메인 애플리케이션 서버와 별도로 메트릭을 수집하여 GitLab 모니터링의 신뢰성과 성능을 향상시킵니다. 전용 메트릭 서버는 모니터링 트래픽을 사용자 요청에서 격리하여 메트릭 수집이 애플리케이션 성능에 영향을 주지 않도록 합니다.

중간 규모 또는 대규모 설치의 경우 이 분리는 피크 사용 시간 동안 더 일관된 데이터 수집을 제공하고 높은 부하 기간 동안 중요한 메트릭을 놓칠 위험을 줄일 수 있습니다.

GitLab 메트릭 수집 작동 방식#

Prometheus로 GitLab을 모니터링할 때 GitLab은 사용량, 부하 및 성능과 관련된 데이터에 대해 애플리케이션을 샘플링하는 다양한 수집기를 실행합니다. 그런 다음 GitLab은 하나 이상의 Prometheus 내보내기 도구를 실행하여 이 데이터를 Prometheus 스크래퍼에서 사용할 수 있게 할 수 있습니다. Prometheus 내보내기 도구는 메트릭 데이터를 Prometheus 스크래퍼가 이해하는 형식으로 직렬화하는 HTTP 서버입니다.

Note

이 페이지는 웹 애플리케이션 메트릭에 관한 것입니다. 백그라운드 job 메트릭을 내보내려면 Sidekiq 메트릭 서버 구성 방법을 알아보세요.

웹 애플리케이션 메트릭을 내보낼 수 있는 두 가지 메커니즘을 제공합니다:

  • 메인 Rails 애플리케이션을 통해. 이는 사용하는 애플리케이션 서버인 Puma가 자체 /-/metrics 엔드포인트를 통해 메트릭 데이터를 사용할 수 있게 한다는 것을 의미합니다. 이것이 기본값이며 GitLab 메트릭에 설명되어 있습니다. 수집되는 메트릭 양이 적은 소규모 GitLab 설치에는 이 기본값을 사용해야 합니다.
  • 전용 메트릭 서버를 통해. 이 서버를 활성화하면 Puma가 메트릭을 제공하는 것이 유일한 책임인 추가 프로세스를 시작합니다. 이 접근 방식은 매우 큰 GitLab 설치에서 더 나은 오류 격리 및 성능으로 이어지지만 추가 메모리 사용이 수반됩니다. 높은 성능과 가용성을 추구하는 중간 규모 또는 대규모 GitLab 설치에 이 접근 방식을 권장합니다.

전용 서버와 Rails /-/metrics 엔드포인트 모두 동일한 데이터를 제공하므로 기능적으로 동일하며 단지 성능 특성이 다릅니다.

전용 서버를 활성화하려면:

  1. Prometheus를 활성화합니다.

  2. /etc/gitlab/gitlab.rb를 편집하여 다음 줄을 추가(또는 찾아 주석 해제)합니다. puma['exporter_enabled']true로 설정되어 있는지 확인합니다:

    puma['exporter_enabled'] = true
    puma['exporter_address'] = "127.0.0.1"
    puma['exporter_port'] = 8083
    
  3. Prometheus 스크래퍼를 구성합니다:

  4. 파일을 저장하고 변경 사항이 적용되도록 GitLab을 재구성합니다.

이제 localhost:8083/metrics에서 메트릭을 제공하고 스크래핑할 수 있습니다.

HTTPS 활성화#

히스토리

HTTP 대신 HTTPS를 통해 메트릭을 제공하려면 내보내기 도구 설정에서 TLS를 활성화합니다:

  1. /etc/gitlab/gitlab.rb를 편집하여 다음 줄을 추가(또는 찾아 주석 해제)합니다:

    puma['exporter_tls_enabled'] = true
    puma['exporter_tls_cert_path'] = "/path/to/certificate.pem"
    puma['exporter_tls_key_path'] = "/path/to/private-key.pem"
    
  2. 파일을 저장하고 변경 사항이 적용되도록 GitLab을 재구성합니다.

TLS가 활성화되면 이전에 설명한 것과 동일한 portaddress가 사용됩니다. 메트릭 서버는 HTTP와 HTTPS를 동시에 제공할 수 없습니다.

관련 주제#

문제 해결#

Docker 컨테이너 공간 부족#

Docker에서 GitLab을 실행할 때 컨테이너 공간이 부족할 수 있습니다. 이는 웹 내보내기 도구와 같이 공간 소비를 증가시키는 특정 기능을 활성화할 때 발생할 수 있습니다.

이 문제를 해결하려면 shm-size를 업데이트합니다.