GitHub Enterprise Server 업그레이드와 관련된 알려진 문제 정보
GitHub은(는) GitHub Enterprise Server의 새 릴리스로 업그레이드하는 데 영향을 줄 수 있는 다음과 같은 문제를 알고 있습니다. 자세한 내용은 [은(는) 인스턴스의 구성 및 데이터를 정기적으로 백업하도록 권장합니다. 업그레이드를 진행하기 전에 인스턴스를 백업한 다음 스테이징 환경에서 백업의 유효성을 검사합니다. 자세한 내용은 "인스턴스에서 백업 구성" 및 "스테이징 인스턴스 설정"을(를) 참조하세요.
Elasticsearch 업그레이드
GitHub Enterprise 서버 버전 3.13 이상으로 업그레이드하는 과정의 일환으로 Elasticsearch 서비스가 업그레이드됩니다. GitHub은(는) "GitHub Enterprise Server 3.13에서 Elasticsearch 업그레이드 준비"의 지침을 따르는 것이 좋습니다.
암호 해독할 수 없는 레코드
GitHub Enterprise Server 3.11 또는 3.12에서 3.13으로 업그레이드하거나 또는 3.12에서 3.14로 업그레이드하는 경우 암호 해독에 필요한 키가 없어서 해독할 수 없는 레코드에 문제가 발생할 수 있습니다. 유일한 해결 방법은 해독할 수 없는 레코드를 삭제하는 것입니다. 이 문제의 영향을 받는 레코드 유형은 2FA 레코드입니다. 즉, 사용자에게 2FA(2단계 인증)를 다시 사용하도록 요청해야 할 수도 있습니다.
업그레이드 이전
GitHub Enterprise Server 3.11 또는 3.12에서 3.13으로 업그레이드하거나 또는 3.12에서 3.14로 업그레이드하는 경우 암호화 진단 스크립트를 실행하여 암호를 해독할 수 없는 레코드를 미리 식별할 수 있습니다. 이렇게 하면 영향을 이해하고 이에 대한 계획을 세울 수 있습니다.
- 암호화 진단 스크립트를 다운로드합니다.
curl -L -O https://gh.io/ghes-encryption-diagnostics
과 같은 명령을 사용하여 스크립트를 다운로드할 수 있습니다. - 어플라이언스의
/data/user/common
디렉터리에 스크립트를 저장합니다. - 스크립트 맨 위에 있는 지침에 따라 어플라이언스에서 실행합니다. 암호를 해독할 수 없는 레코드가 있는 경우
/tmp/column_encryption_records_to_be_deleted.log
에 로그됩니다. 여기에 기록된 모든 레코드는 시스템에서 해당 레코드의 키를 찾을 수 없으므로 레코드의 데이터를 해독할 수 없음을 의미합니다.
이 단계에서는 이러한 레코드가 프로세스의 일부로 삭제된다는 점에 유의하시기 바랍니다. 이 스크립트는 업그레이드 후 2FA에 다시 등록해야 하는 사용자에 대해 경고합니다. 영향을 받은 사용자의 핸들이 /tmp/column_encryption_users_to_have_2fa_disabled.log
에 로그됩니다. 이러한 사용자는 2FA에 다시 등록해야 합니다.
스크립트에서 예기치 않은 문제가 발생하면 GitHub 지원에 문의하라는 메시지가 표시됩니다. 이러한 문제와 관련된 오류가 /tmp/column_encryption_unexpected_errors.log
에 로그됩니다. 심각한 상황에 처해 있고 사용자가 2FA에 다시 등록할 수 없는 경우 GitHub 지원에 문의하여 도움을 받으세요.
업그레이드하는 동안
암호화 진단 스크립트를 미리 실행할 기회가 없는 경우를 대비해 제품에 도움이 되는 메커니즘이 있습니다. 업그레이드 프로세스 중 플라이트 전 검사는 암호 해독할 수 없는 레코드를 감지하여 이를 /tmp/column_encryption_records_to_be_deleted.log
에 로그합니다. 이 시퀀스는 업그레이드 후 2FA를 다시 사용하도록 설정해야 하는 사용자에 대해 경고합니다. 영향을 받은 사용자 레코드는 /tmp/column_encryption_users_to_have_2fa_disabled.log
에 로그됩니다.
암호를 해독할 수 없는 레코드가 감지되면 업그레이드를 진행할지 여부를 묻는 메시지가 표시됩니다. 계속 진행하면 업그레이드 프로세스에서 암호를 해독할 수 없는 레코드가 삭제됩니다. 그렇지 않으면 업그레이드 프로세스가 종료됩니다.
업그레이드하는 동안 질문이 있는 경우 GitHub 지원에 문의할 수 있습니다. 영향을 이해할 시간과 기회가 있다면 업그레이드를 다시 시도할 수 있습니다.