Skip to main content

인스턴스로의 업그레이드와 관련된 알려진 문제

GitHub Enterprise Server의 업그레이드 프로세스에 영향을 주거나 업그레이드 완료 후 인스턴스에 영향을 주는 문제 해결 방법에 대한 개요를 확인하세요.

GitHub Enterprise Server 업그레이드와 관련된 알려진 문제 정보

GitHub은(는) GitHub Enterprise Server의 새 릴리스로 업그레이드하는 데 영향을 줄 수 있는 다음과 같은 문제를 알고 있습니다. 자세한 내용은 [은(는) 인스턴스의 구성 및 데이터를 정기적으로 백업하도록 권장합니다. 업그레이드를 진행하기 전에 인스턴스를 백업한 다음 스테이징 환경에서 백업의 유효성을 검사합니다. 자세한 내용은 인스턴스에서 백업 구성스테이징 인스턴스 설정을(를) 참조하세요.

필요한 루트 디스크 크기가 400GB로 증가했습니다.

Note

버전 3.15.2 이상에 대한 이전 루트 디스크 크기 요구 사항인 400GB가 제거되었습니다. 이 요구 사항은 지원 번들 및 지원 티켓의 분석을 기반으로 했습니다. 로그와 같은 일부 요인은 루트 디스크에 과도한 압력을 가하여 어플라이언스 문제를 일으켰습니다. 많은 고객이 새 하드웨어를 조달하는 것이 어렵다는 피드백을 받은 후, 점진적인 접근 방식을 위해 요구 사항을 롤백했습니다. 특히 독립 실행형 또는 독립 실행형 고가용성 토폴로지 사용 고객은 루트 디스크를 400GB로 업그레이드하는 것이 좋습니다. 루트 디스크를 400GB로 업그레이드할 수 있는 경우 다음 지침을 참조하세요.

독립 실행형 또는 HA 토폴로지 사용 고객에게는 3.15 이상 버전의 새 설치 또는 3.15로 업그레이드하여 최소 400GB의 루트 디스크 크기를 사용하는 것이 좋습니다. GitHub는 스토리지 용량 늘리기의 지침을 따르는 것이 좋습니다.

암호 해독할 수 없는 레코드

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로 업그레이드하는 경우 암호화 진단 스크립트를 실행하여 암호를 해독할 수 없는 레코드를 미리 식별할 수 있습니다. 이 스크립트는 어떤 레코드도 수정하지 않지만 대신 영향을 이해하고 이에 대한 계획을 세울 수 있습니다.

  1. 암호화 진단 스크립트를 다운로드합니다. curl -L -O https://gh.io/ghes-encryption-diagnostics과 같은 명령을 사용하여 스크립트를 다운로드할 수 있습니다.
  2. 어플라이언스의 /data/user/common 디렉터리에 스크립트를 저장합니다.
  3. 스크립트 맨 위에 있는 지침에 따라 어플라이언스에서 실행합니다. 암호를 해독할 수 없는 레코드가 있는 경우 /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 지원에 문의하여 도움을 받으세요.

스크립트는 암호화된 레코드와 연결된 키를 찾을 수 있는 경우 "Success: Encrypted Records OK"를 출력합니다. 이러한 레코드는 업그레이드 프로세스 중에 암호 해독 및 보존되며 사용자가 수동으로 개입할 필요가 없습니다.

업그레이드하는 동안

암호화 진단 스크립트를 미리 실행할 기회가 없는 경우를 대비해 제품에 도움이 되는 메커니즘이 있습니다. 업그레이드 프로세스 중 플라이트 전 검사는 암호 해독할 수 없는 레코드를 감지하여 이를 /tmp/column_encryption_records_to_be_deleted.log에 로그합니다. 이 시퀀스는 업그레이드 후 2FA를 다시 사용하도록 설정해야 하는 사용자에 대해 경고합니다. 영향을 받은 사용자 레코드는 /tmp/column_encryption_users_to_have_2fa_disabled.log에 로그됩니다.

암호를 해독할 수 없는 레코드가 감지되면 업그레이드를 진행할지 여부를 묻는 메시지가 표시됩니다. 계속 진행하면 업그레이드 프로세스에서 암호를 해독할 수 없는 레코드가 삭제됩니다. 그렇지 않으면 업그레이드 프로세스가 종료됩니다.

업그레이드하는 동안 질문이 있는 경우 GitHub 지원에 문의할 수 있습니다. 영향을 이해할 시간과 기회가 있다면 업그레이드를 다시 시도할 수 있습니다.

3.14에서 3.16.0으로 업그레이드

GitHub Enterprise Server 3.14를 사용하고 조직 수준에서 기본적으로 보안 제품을 사용하도록 설정한 경우 3.14에서 3.16.0으로 직접 업그레이드할 수 없습니다. 업그레이드 자격을 확인하려면 다음 명령을 실행하세요.

ghe-console -y
Organization.any? { |o| [o.vulnerability_updates_enabled_for_new_repos?, o.security_alerts_enabled_for_new_repos?, o.dependency_graph_enabled_for_new_repos?, o.advanced_security_enabled_on_new_repos?, SecretScanning::Features::Org::TokenScanning.new(o).secret_scanning_enabled_for_new_repos?, SecretScanning::Features::Org::PushProtection.new(o).enabled_for_new_repos?].any? }

명령이 true를 반환하면 3.14에서 3.16.0으로의 직접 업그레이드가 실패하고 다음 3.16 패치가 업그레이드될 때까지 기다리는 것이 좋습니다.

또는 먼저 3.14에서 3.15로 업그레이드한 다음, 3.15에서 3.16.0으로 업그레이드하여 3.16.0으로 이동할 수 있습니다.