Skip to main content

このバージョンの GitHub Enterprise はこの日付をもって終了となります: 2023-01-18. 重大なセキュリティの問題に対してであっても、パッチリリースは作成されません。 パフォーマンスの向上、セキュリティの向上、新機能の向上を図るために、最新バージョンの GitHub Enterprise にアップグレードします。 アップグレードに関するヘルプについては、GitHub Enterprise サポートにお問い合わせください

クラスタノードからの待避

データサービスをクラスタノードから待避させることができます。

クラスター ノードの待避について

GitHub Enterprise Server のクラスターの構成では、ノードをオフラインにする前にノードを待避できます。 待避することで、サービス レベル内の残りのノードに、サービスのすべてのデータが確実に含まれます。 たとえば、クラスター内のノードの仮想マシンを置き換える場合は、最初にノードを待避する必要があります。

GitHub Enterprise Server のノードとサービス レベルについて詳しくは、「クラスター ノードについて」をご覧ください。

警告:

  • データが失われるのを避けるため、GitHub は、ノードをオフラインにする前にノードを待避することを強くお勧めします。

  • データ サービス クラスターにノードが 3 つしかない場合、ghe-spokes でコピーを作成する別の場所がないため、ノードを待避することはできません。 4 つ以上ある場合は、ghe-spokes によって待避元のノードからすべてのリポジトリが移動されます。

クラスタノードからの待避

オフラインにする予定のノードで、git-serverpages-serverstorage-server などのデータ サービス ロールが実行されている場合は、ノードをオフラインにする前に各ノードを待避します。

  1. クラスタ内のいずれかのノードにSSHで接続してください。 詳細については、「管理シェル (SSH) にアクセスする」を参照してください。

  2. 待避するノードの UUID を見つけるには、次のコマンドを実行します。 HOSTNAME は、ノードのホスト名に置き換えます。

    $ ghe-config cluster.HOSTNAME.uuid
  3. GitHub Enterprise Server がデータをコピーしている間、ノードの状態を監視します。 コピーが完了するまで、ノードをオフラインにしないでください。 ノードの状態を監視するには、次のいずれかのコマンドを実行します。UUID は、ステップ 2 の UUID に置き換えます。

    • Git:

      $ ghe-spokes evac-status git-server-UUID
    • GitHub Pages :

      $ echo "select count(*) from pages_replicas where host = 'pages-server-UUID'" | ghe-dbconsole -y
    • ストレージ:

      $ ghe-storage evacuation-status storage-server-UUID
  4. コピーが完了したら、次のいずれかのコマンドを実行して、ノードを待避できます。UUID は、ステップ 2 の UUID に置き換えます。

    • Git:

      $ ghe-spokes server evacuate git-server-UUID \'REASON FOR EVACUATION\'
    • GitHub Pages :

      $ ghe-dpages evacuate pages-server-UUID
    • ストレージ の場合は、最初に次のコマンドを実行してノードをオフラインにします。

      $ ghe-storage offline storage-server-UUID

      ストレージ ノードがオフラインになった後、次のコマンドを実行してノードを待避できます。

      $ ghe-storage evacuate storage-server-UUID