GitHub Enterprise Server アップグレードに関する既知の問題について
GitHub は、GitHub Enterprise Server の新しいリリースへのアップグレードに影響を与える可能性がある以下の問題を認識しています。 詳細については、GitHub Enterprise Server リリース ノートを参照してください。
GitHub では、インスタンスの構成とデータの定期的なバックアップを強くお勧めします。 アップグレードを続行する前に、インスタンスをバックアップしてから、ステージング環境でバックアップを検証します。 詳細については、「インスタンスでのバックアップの構成」および「ステージングインスタンスのセットアップ」を参照してください。
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 にアップグレードする場合、解読に必要なキーがないため、解読できないレコードに関する issue が発生する可能性があります。 唯一の解決策は、解読できないレコードを削除することです。 この issue の影響を受けるレコードの種類は 2FA レコードです。つまり、ユーザーに 2 要素認証 (2FA) を再度有効にするよう求める必要がある場合があります。
アップグレードする前に
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 Support に問い合わせるよう求められます。 これらの問題に関連するエラーは、/tmp/column_encryption_unexpected_errors.log
にログされます。 問題が発生してユーザーを 2FA に再登録できない場合は、GitHub Support にお問い合わせください。
アップグレード中
事前に暗号化診断スクリプトを実行する機会がなかった場合は、製品に役立つメカニズムがあります。 アップグレード プロセスの間の事前チェックでは、解読できないレコードが検出されて /tmp/column_encryption_records_to_be_deleted.log
にログされます。 このシーケンスでは、アップグレード後に 2FA の再有効化が必要なユーザーが警告されます。 影響を受けるユーザーのレコードが、/tmp/column_encryption_users_to_have_2fa_disabled.log
にログされます。
解読できないレコードが検出されると、アップグレードを続けるかどうかを確認するメッセージが表示されます。 続けた場合、解読できないレコードはアップグレード プロセスによって削除されます。 それ以外の場合は、アップグレード プロセスが終了します。
アップグレード中に質問がある場合は、GitHub Support にお問い合せください。 影響を理解する時間と機会があれば、アップグレードを再トリガーできます。