Skip to main content
We publish frequent updates to our documentation, and translation of this page may still be in progress. For the most current information, please visit the English documentation.

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

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

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

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