GitLab 을 구성하며 발생했던 에러사항에 대해서 내용을 정리한다.
1. (root) 관리자 설정에서 항목 업데이트 하려 할 시 500에러 발생
[ 환경 ]
1. Hyper-V 에서 VM에 고정 IP를 할당하기 위해 (인터넷이 되지 않는) 내부 네트워크 구성
2. 해당 고정 IP의 VM 에 GitLab 설치 (RHEL_8.6, GitLab Omnibus v16.6.9)
[ 증상 ]
1. Group, Project 생성도 정상적으로 되며, Git 저장소 checkout, push 모두 문제가 없으며 프로젝트의 이슈도 정상적으로 등록이 된다.
2. 다른 부분에 있어서 다른 이상유무는 발견하지 못했으며, 오직 root 로 로그인해서 관리자 Settings 의 모든 항목에 대해서 항목을 수정하여 업데이트 하려 할 시 시간이 오래 걸리며 1분 뒤 화면에 500에러가 발생하며 GitLab 로그에 에러로그가 기록됨.
[ 원인 및 조치방법 ]
1. 내부망 환경 구성으로 인해 /etc/resolv.conf 파일의 DNS 서버와 통신할 수 없는 상태
2. /etc/resolv.conf 의 내용을 모두 삭제 시 정상적으로 동작함. (/etc/hosts 에 접속하는 GitLab 도메인은 등록함)
[ 로그 내용 ]
- 파일명: /var/log/gitlab/gitlab-rails/production.log
- 명령어: sudo gitlab-ctl tail gitlab-rails/production.log
- 로그: Rack::Timeout::RequestTimeoutException, ActiveRecord::StatementInvalid 상황에 따라 두가지 형식의 로그가 발생함
2. 로그인 페이지에서 로그인 시 422 에러 발생
[ 환경 ]
1. Hyper-V 의 VM 서버 (내부망 환경, 인터넷X)
2. RHEL_8.6, GitLab Omnibus 16.6.9
[ 증상 ]
1. 브라우저 뒤로가기 눌렀을 때 로그인화면이 보였으며 ID / PW 를 입력 후 로그인 시 화면에 422 에러가 노출됨
[ 원인 및 조치방법 ]
- CSRF Token 불일치로 인한 일시적인 현상, 브라우저 새로고침 후 다시 로그인 하면 정상 동작함.
[ 로그 내용 ]
- 파일명: /var/log/gitlab/gitlab-rails/production.log
- 명령어: sudo gitlab-ctl tail gitlab-rails/production.log
- 로그: ActionController::InvalidAuthenticityToken
댓글
댓글 쓰기