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

アプライアンスでのバックアップの設定

システム災害復旧計画の一部として、自動化バックアップを設定してGitHub Enterprise Server インスタンスのプロダクションデータを保護できます。

このガイドの内容

GitHub Enterprise Serverバックアップユーティリティについて

GitHub Enterprise Serverバックアップユーティリティは、個別のホストにインストールするバックアップシステムで、GitHub Enterprise Server インスタンスのバックアップスナップショットをセキュアなSSHネットワーク接続経由で定期的に取得します。 スナップショットを使用して、既存の GitHub Enterprise Server インスタンスをバックアップホストから以前の状態に復元できます。

ネットワーク経由で転送されるのは最後のスナップショット以降に追加されたデータのみで、追加の物理ストレージ領域もその分だけしか占めません。 パフォーマンスへの影響を最小化するために、バックアップは最低のCPU/IO優先度の下でオンライン実行されます。 バックアップを行うために、メンテナンスウィンドウをスケジューリングする必要はありません。

機能、要求事項、高度な利用方法に関する詳しい情報についてはGitHub Enterprise ServerバックアップユーティリティREADMEを参照してください。

必要な環境

GitHub Enterprise Serverバックアップユーティリティを利用するには、GitHub Enterprise Server インスタンスとは別のLinuxもしくはUnixホストシステムが必要です。

GitHub Enterprise Serverバックアップユーティリティは、重要なデータのための長期的な恒久ストレージの既存環境に統合することもできます。

バックアップホストとGitHub Enterprise Server インスタンスは、地理的に離れたところに配置することをおすすめします。 そうすることで、プライマリのサイトにおける大規模な災害やネットワーク障害に際してもリカバリにバックアップが利用できることが保証されます。

物理的なストレージの要求は、Gitリポジトリのディスク利用状況と予想される成長パターンによって異なります。

ハードウェア 推奨構成
vCPUs 2
メモリ 2 GB
ストレージ プライマリインスタンスに割り当てられたストレージの5倍

ユーザのアクティビティや他の製品との結合といった利用方法によっては、さらに多くのリソースが必要になることがあります。

GitHub Enterprise Serverバックアップユーティリティのインストール

注意: リカバリされたアプライアンスがすぐに利用できることを保証するために、Geo-replication構成の場合であってもプライマリインスタンスをターゲットとしたバックアップを実行してください。

  1. 最新のGitHub Enterprise Serverバックアップユーティリティリリースをダウンロードし、tarコマンドで展開してください。

    $ tar -xzvf /path/to/github-backup-utils-vMAJOR.MINOR.PATCH.tar.gz   
  2. Copy the included backup.config-example file to backup.config and open in an editor.
  3. Set the GHE_HOSTNAME value to your primary GitHub Enterprise Server instance's hostname or IP address.
  4. Set the GHE_DATA_DIR value to the filesystem location where you want to store backup snapshots.
  5. Open your primary instance's settings page at https://HOSTNAME/setup/settings and add the backup host's SSH key to the list of authorized SSH keys. For more information, see Accessing the administrative shell (SSH).
  6. Verify SSH connectivity with GitHub Enterprise Server インスタンス with the ghe-host-check command.

    $ bin/ghe-host-check        
  7. To create an initial full backup, run the ghe-backup command.

    $ bin/ghe-backup        

For more information on advanced usage, see the GitHub Enterprise Serverバックアップユーティリティ README.

バックアップのスケジューリング

You can schedule regular backups on the backup host using the cron(8) command or a similar command scheduling service. 設定されたバックアップ頻度によって、リカバリー計画での最悪の目標復旧ポイント (RPO) が決まります。 たとえば、毎日午前 0 時にバックアップを実行するようにスケジュール設定した場合、災害のシナリオで最大 24 時間分のデータが失われる可能性があります。 プライマリサイトのデータが破壊された場合に、最悪でも最大 1 時間分のデータ損失で収まることが保証されるように、1 時間ごとのバックアップスケジュールから始めることをおすすめします。

If backup attempts overlap, the ghe-backup command will abort with an error message, indicating the existence of a simultaneous backup. そのような場合は、スケジュール設定したバックアップの頻度を減らすことをおすすめします。 For more information, see the "Scheduling backups" section of the GitHub Enterprise Serverバックアップユーティリティ README.

バックアップのリストア

In the event of prolonged outage or catastrophic event at the primary site, you can restore GitHub Enterprise Server インスタンス by provisioning another GitHub Enterprise appliance and performing a restore from the backup host. アプライアンスを復元する前に、バックアップホストの SSH キーをターゲットの GitHub Enterprise アプライアンスに認証済み SSH キーとして追加する必要があります。

To restore GitHub Enterprise Server インスタンス from the last successful snapshot, use the ghe-restore command. 以下と同じような出力が表示されるでしょう:

$ ghe-restore -c 169.154.1.1
> Checking for leaked keys in the backup snapshot that is being restored ...
> * No leaked keys found
> Connect 169.154.1.1:122 OK (v2.9.0)

> WARNING: All data on GitHub Enterprise appliance 169.154.1.1 (v2.9.0)
>          will be overwritten with data from snapshot 20170329T150710.
> Please verify that this is the correct restore host before continuing.
> Type 'yes' to continue: yes
> Starting restore of 169.154.1.1:122 from snapshot 20170329T150710
# ...output truncated
> Completed restore of 169.154.1.1:122 from snapshot 20170329T150710
> Visit https://169.154.1.1/setup/settings to review appliance configuration.

メモ: ネットワーク設定はバックアップのスナップショットから除外されます。 ご使用の環境に合わせて、ターゲットの GitHub Enterprise Server アプライアンスでネットワークを手動で設定する必要があります。

以下の追加オプションは、ghe-restore コマンドで使用できます。

担当者にお尋ねください

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

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