GitLab Silent Mode

Tier: Free, Premium, Ultimate Offering: Self-managed

Silent Mode을 사용하면 GitLab에서의 이메일과 같은 외부 통신을 차단할 수 있습니다. Silent Mode은 사용 중인 환경에는 사용하지 않도록 의도되어 있습니다. 사용 사례는 다음과 같습니다:

  • Geo 사이트 프로모션 유효성 검사. 재해 복구 솔루션의 일부로 보조 Geo 사이트가 있는 경우가 있습니다. 일반적인 업계 모베 테스트를 수행하여 보조 사이트를 주 사이트로 프로모션하는 것이 좋습니다. 그러나 사용자에게 가장 낮은 지연 시간을 제공하는 지역에 주 사이트가 있으므로 실제로 전체 장애 조치를 취하고 싶지는 않습니다. 또한 정기적인 테스트 중에 다운타임을 갖고 싶지 않을 수 있습니다. 이 경우 Silent Mode를 사용하여 이 문제를 피할 수 있습니다. 주 사이트를 유지하면서 보조 사이트를 프로모션하는 일부의 일환으로 활성화할 수 있습니다.
  • GitLab 백업 유효성 검사. 백업이 성공적으로 복원되는지 테스트하기 위해 테스트 인스턴스를 설정했습니다. 복원의 일환으로 예를 들어 Silent Mode을 활성화하여 사용자에게 잘못된 이메일을 보내지 않도록하는 것입니다.

Silent Mode 활성화

전제 조건:

  • 관리자 액세스해야 합니다.

Silent Mode을 활성화하는 여러 가지 방법이 있습니다:

  • 웹 UI

    1. 왼쪽 사이드바 아래에서 관리 영역을 선택합니다.
    2. 왼쪽 사이드바에서 설정 > 일반을 선택합니다.
    3. Silent Mode를 확장하고 Enable Silent Mode를 토글합니다.
    4. 변경 사항은 즉시 저장됩니다.
  • API

    curl --request PUT --header "PRIVATE-TOKEN:$ADMIN_TOKEN" "<gitlab-url>/api/v4/application/settings?silent_mode_enabled=true"
    
  • Rails 콘솔

    ::Gitlab::CurrentSettings.update!(silent_mode_enabled: true)
    

적용은 최대 1분이 걸릴 수 있습니다. Issue 405433에서 이 지연 시간을 제거하는 것이 제안되었습니다.

Silent Mode 비활성화

전제 조건:

  • 관리자 액세스해야 합니다.

Silent Mode를 비활성화하는 여러 가지 방법이 있습니다:

  • 웹 UI

    1. 왼쪽 사이드바 아래에서 관리 영역을 선택합니다.
    2. 왼쪽 사이드바에서 설정 > 일반을 선택합니다.
    3. Silent Mode를 확장하고 Enable Silent Mode를 토글합니다.
    4. 변경 사항은 즉시 저장됩니다.
  • API

    curl --request PUT --header "PRIVATE-TOKEN:$ADMIN_TOKEN" "<gitlab-url>/api/v4/application/settings?silent_mode_enabled=false"
    
  • Rails 콘솔

    ::Gitlab::CurrentSettings.update!(silent_mode_enabled: false)
    

적용은 최대 1분이 걸릴 수 있습니다. Issue 405433에서 이 지연 시간을 제거하는 것이 제안되었습니다.

Silent Mode에서의 GitLab 기능 동작

이 섹션에서는 Silent Mode 활성화 시 GitLab의 현재 동작을 문서화합니다. Silent Mode의 첫 번째 반복의 작업은 훌륭한 기능에 의해 추적되고 있습니다.

Silent Mode가 활성화되면 모든 사용자를 위해 페이지 상단에 설정이 활성화되었음을 나타내는 배너가 표시되고 모든 외부 통신이 차단됨이라는 메시지가 표시됩니다.

Silent Mode로 차단되는 외부 통신

다음 기능으로부터의 외부 통신이 Silent Mode에 의해 차단됩니다.

기능 비고
프로젝트 및 그룹 웹훅 UI를 통한 웹훅 테스트의 트리거는 HTTP 상태 500 응답을 반환합니다.
시스템 훅  
원격 미러 원격 미러로의 푸시가 건너뛰어집니다. 원격 미러로부터의 풀은 건너뛰어집니다.
실행 가능한 통합 통합은 실행되지 않습니다.
서비스 데스크 수신된 이메일은 여전히 이슈를 생성하지만, 서비스 데스크로 이메일을 보낸 사용자는 이슈 생성 또는 이슈에 대한 코멘트에 대해 알림을받지 않습니다.
외부 이메일  
외부 HTTP 요청 많은 HTTP 요청이 명시적으로 차단되거나 건너뛰어지지 않는 경우, 오류가 발생할 수 있습니다. 특정 오류가 Silent Mode에서의 테스트 중에 문제가 된다면 GitLab 고객 지원을 참조하십시오.

조용 모드로 음소거되지 않은 발신 통신

다음 기능에서의 발신 통신은 조용 모드로 음소거되지 않습니다.

기능 참고
의존성 프록시 캐시되지 않은 이미지를 가져 오면 일반적으로 소스에서 가져옵니다. 풀 속도 제한을 고려하십시오.
파일 훅  
서버 훅  
고급 검색 두 개의 GitLab 인스턴스가 동일한 고급 검색 인스턴스를 사용하는 경우 둘 다 검색 데이터를 수정할 수 있습니다. 이는 주 예 Geo 사이트가 활성 상태인 동안 보조 Geo 사이트를 홍보 한 후에 발생할 수있는 분할 된 뇌 시나리오입니다.
Snowplow 이러한 요청을 음소거하기위한 제안이 있습니다.
폐기된 쿠버네티스 연결 이러한 요청을 음소거하기위한 제안이 있습니다.
컨테이너 레지스트리 웹훅 이러한 요청을 음소거하기위한 제안이 있습니다.