ドキュメントには頻繁に更新が加えられ、その都度公開されています。本ページの翻訳はまだ未完成な部分があることをご了承ください。最新の情報については、英語のドキュメンテーションをご参照ください。本ページの翻訳に問題がある場合はこちらまでご連絡ください。
記事のバージョン: Enterprise Server 2.15

このバージョンの GitHub Enterprise はこの日付をもって終了となります: このバージョンの GitHub Enterprise はこの日付をもって終了となりました: 2019-10-16. 重大なセキュリティの問題に対してであっても、パッチリリースは作成されません。 For better performance, improved security, and new features, upgrade to the latest version of GitHub Enterprise. For help with the upgrade, contact GitHub Enterprise support.

High Availabilityレプリカの作成

アクティブ/パッシブ設定では、レプリカアプライアンスはプライマリアプライアンスの冗長コピーです。 プライマリアプライアンスに障害が起こると、High Availabilityモードではレプリカがプライマリアプライアンスとして動作し、サービスの中断を最小限にできます。

このガイドの内容

High Availabilityレプリカの作成

  1. 新しい GitHub Enterprise Server アプライアンスを希望するプラットフォームにセットアップします。 レプリカアプライアンスのCPU、RAM、ストレージ設定は、プライマリアプライアンスと同じにするべきです。 レプリカアプライアンスは、独立した環境にインストールすることをお勧めします。 下位層のハードウェア、ソフトウェア、ネットワークコンポーネントは、プライマリアプライアンスのそれらとは分離されているべきです。 クラウドプロバイダを利用している場合には、別個のリージョンもしくはゾーンを使ってください。 詳細は「"GitHub Enterprise Server インスタンスをセットアップする」を参照してください。

  2. ブラウザで新しいレプリカアプライアンスのIPアドレスにアクセスして、所有するGitHub Enterpriseのライセンスをアップロードしてください。

  3. プライマリアプライアンス上のパスワードと一致する管理者パスワードを設定して続行します。

  4. Configure as Replica(レプリカとして設定)をクリックしてください。

    新しいインスタンスをレプリカとして設定するリンクを持つインストールオプション

  5. "Add new SSH key(新しいSSH鍵の追加)"の下でSSH鍵を入力してください。

    SSHキーの追加

  6. Add key(鍵の追加)をクリックし、続いてContinue(続ける)をクリックしてください。

  7. SSHを使ってレプリカアプライアンスのIPアドレスに接続してください。

    $ ssh -p 122 admin@REPLICA IP
  8. To generate a key pair for replication, use the ghe-repl-setup command with the primary appliance's IP address and copy the public key that it returns.

    $ ghe-repl-setup PRIMARY IP
  9. To add the public key to the list of authorized keys on the primary appliance, browse to https://PRIMARY-HOSTNAME/setup/settings and add the key you copied from the replica to the list.

  10. To verify the connection to the primary and enable replica mode for the new replica, run ghe-repl-setup again.

    $ ghe-repl-setup PRIMARY IP
  11. データストアのレプリケーションを開始するには、ghe-repl-startコマンドを使ってください。

    $ ghe-repl-start
    **注意:** `ghe-repl-start`を使うとプライマリサーバーは短期間利用できなくなり、その間ユーザにはinternal server errorが返されます。 もっと親切なメッセージを提供するには、`ghe-repl-start`をレプリカノードで実行する前にプライマリノード上で`ghe-maintenance -s`を実行し、アプライアンスをメンテナンスモードにしてください。 レプリケーションを開始したら、`ghe-maintenance -u`でメンテナンスモードを無効化してください。
  12. To verify the status of each datastore's replication channel, use the ghe-repl-status command.

    $ ghe-repl-status

Geo-replicationレプリカの作成

This example configuration uses a primary and two replicas, which are located in three different geographic regions. 3 つのノードは別のネットワークに配置できますが、すべてのノードは他のすべてのノードから到達可能である必要があります。 最低限、必要な管理ポートは他のすべてのノードに対して開かれている必要があります。 For more information about the port requirements, see "Network Ports."

  1. Create the first replica the same way you would for a standard two node configuration by running ghe-repl-setup on the first replica.

    (replica1)$ ghe-repl-setup PRIMARY IP(replica1)$ ghe-repl-start
  2. Create a second replica and use the ghe-repl-setup --add command. The --add flag prevents it from overwriting the existing replication configuration and adds the new replica to the configuration.

    (replica2)$ ghe-repl-setup --add PRIMARY IP(replica2)$ ghe-repl-start
  3. By default, replicas are configured to the same datacenter. レプリカを別のデータセンターに設定するには、datacenter オプションに異なる値を設定します。 具体的な値は、それらが互いに異なる限り、どのようなものでもかまいません。 Run the ghe-repl-node command on each node and specify the datacenter.

    On the primary:

    (primary)$ ghe-repl-node --datacenter [PRIMARY DC NAME]

    On the first replica:

    (replica1)$ ghe-repl-node --datacenter [FIRST REPLICA DC NAME]

    On the second replica:

    (replica2)$ ghe-repl-node --datacenter [SECOND REPLICA DC NAME]

    Tip: You can set the --datacenter and --active options at the same time.

  4. アクティブなレプリカノードは、アプライアンスデータのコピーを保存し、エンドユーザーのリクエストに応じます。 アクティブではないノードは、アプライアンスデータのコピーを保存しますが、エンドユーザーのリクエストに応じることはできません。 Enable active mode using the --active flag or inactive mode using the --inactive flag.

    On the first replica:

    (replica1)$ ghe-repl-node --active

    On the second replica:

    (replica2)$ ghe-repl-node --active
  5. To apply the configuration, use the ghe-config-apply command on the primary.

    (primary)$ ghe-config-apply

Geo-replicationのためのDNSの設定

Configure Geo DNS using the IP addresses of the primary and replica nodes. You can also create a DNS CNAME for the primary node (e.g. primary.github.example.com) to access the primary node via SSH or to back it up via backup-utils.

For testing, you can add entries to the local workstation's hosts file (for example, /etc/hosts). These example entries will resolve requests for HOSTNAME to replica2. 別の行をコメントアウトすることで、特定のホストをターゲットにすることができます。

# <primary IP>     <em>HOSTNAME</em>
# <replica1 IP>    <em>HOSTNAME</em>
<replica2 IP>    <em>HOSTNAME</em>

参考リンク

担当者にお尋ねください

探しているものが見つからなかったでしょうか?

弊社にお問い合わせください