Troubleshooting Gitaly
Gitaly 오류를 해결하기 위한 다양한 디버깅 방법과 일반적인 문제 해결 가이드를 제공합니다.
다음 섹션은 Gitaly 오류에 대한 가능한 해결책을 제공합니다. Gitaly 타임아웃 설정과 gitaly/current 파일 파싱 에 대한 조언도 참조하세요. 사전 조건 # 관리자 액세스 권한이 있어야 합니다. 독립형 Gitaly 서버 사용 시 버전 확인 # 독립형 Gitaly 서버를 사용할 때 완전한 호환성을 보장하기 위해 GitLab과 동일한 버전인지 확인해야 합니다: 오른쪽 상단에서 Admin 을 선택합니다. Overview > Gitaly servers 를 선택합니다. 모든 Gitaly 서버가 최신 상태임을 확인합니다. 스토리지 리소스 세부 정보 찾기 # Rails 콘솔 에서 다음 명령을 실행하여 Gitaly 스토리지의 사용 가능한 공간과 사용된 공간을 확인할 수 있습니다: Gitlab::GitalyClient::ServerService .new( "default" ).storage_disk_statistics # Gitaly Cluster (Praefect)의 경우 Gitlab::GitalyClient::ServerService .new( "<storage name>" ).disk_statistics gitaly-debug 사용 # gitaly-debug 명령은 Gitaly 및 Git 성능을 위한 "프로덕션 디버깅" 도구를 제공합니다. 프로덕션 엔지니어와 지원 엔지니어가 Gitaly 성능 문제를 조사하는 데 도움이 됩니다. 지원되는 하위 명령 목록을 보려면 gitaly-debug 의 도움말 페이지를 실행하세요: gitaly-debug -h 디버깅에 Git이 필요할 때 gitaly git 사용 # 디버깅 또는 테스트 목적으로 Gitaly와 동일한 Git 실행 환경을 사용하여 Git 명령을 실행하려면 gitaly git 을 사용하세요. gitaly git 은 버전 호환성을 보장하는 데 선호되는 방법입니다. gitaly git 은 모든 인자를 기본 Git 호출에 전달하며 Git이 지원하는 모든 입력 형식을 지원합니다. gitaly git 을 사용하려면: sudo -u git -- /opt/gitlab/embedded/bin/gitaly git <git-command> 예를 들어 Linux 패키지 인스턴스의 저장소 작업 디렉토리에서 Gitaly를 통해 git ls-tree 를 실행하려면: sudo -u git -- /opt/gitlab/embedded/bin/gitaly git ls-tree --name-status HEAD 커밋, 푸시, 클론이 401을 반환하는 경우 # remote: GitLab: 401 Unauthorized GitLab 애플리케이션 노드와 gitlab-secrets.json 파일을 동기화해야 합니다. 저장소 페이지의 500 및 fetching folder content 오류 # Fetching folder content 및 일부 경우 500 오류는 GitLab과 Gitaly 간의 연결 문제를 나타냅니다. 자세한 내용은 클라이언트 측 gRPC 로그 를 참조하세요. 클라이언트 측 gRPC 로그 #
