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

このバージョンの GitHub Enterprise はこの日付をもって終了となりました: 2020-11-12. 重大なセキュリティの問題に対してであっても、パッチリリースは作成されません。 パフォーマンスの向上、セキュリティの改善、新機能のためには、最新バージョンのGitHub Enterpriseにアップグレードしてください。 アップグレードに関する支援については、GitHub Enterprise supportに連絡してください。

Differences between clustering and high availability (HA)

GitHub Enterprise Server High Availability (HA) は冗長性を提供するプライマリ/セカンダリフェイルオーバー構成ですが、クラスタリングは読み書きの負荷を複数のノードに分散させることによって冗長性とスケーラビリティを提供します。

ここには以下の内容があります:

フェイルオーバーのシナリオ

High Availability (HA) とクラスタリングはどちらも、障害の原因となる単一ノードを排除することによって冗長性を提供します。 可用性は次のシナリオで提供できます:

  • ソフトウェアのクラッシュ。オペレーティングシステムの障害や、アプリケーションが回復不能になった場合。
  • ハードウェアの障害。ストレージのハードウェア、CPU、RAM、ネットワークインターフェースなどを含みます。
  • 仮想ホストシステムの障害。計画外及びスケジュールされたAWSにおけるメンテナンスイベントを含みます。
  • 論理的あるいは物理的に切断されたネットワーク。フェイルオーバーアプライアンスがその障害によって影響されない別のネットワーク上にある場合。

スケーラビリティ

クラスタリングは、負荷を複数のノードに分配することによってスケーラビリティを向上させます。 この水平スケーリングは、数万の開発者を持つような組織に適しているかもしれません。HAでは、アプライアンスのスケールはプライマリノードにのみ依存し、負荷がレプリカサーバーに分配されることはありません。

フェイルオーバーの方法と構成における相違点

機能フェイルオーバーの構成フェイルオーバーの方法
High Availability構成プライマリアプライアンスもしくはロードバランサを指す短いTTLのDNSレコード。DNSフェイルオーバー及びロードバランサ構成のどちらでも、レプリカアプライアンスを手作業で昇格させなければならない。
クラスタリングDNSレコードはロードバランサを指さなければならない。ロードバランサの背後にあるノードが落ちた場合、トラフィックは動作している他のノードに自動的に送られる。

バックアップとシステム災害復旧

HAもクラスタリングも、定期的なバックアップに代わるものと考えるべきではありません。 詳しくは、" アプライアンスでのバックアップの設定。"を参照してください。

モニタリング

可用性の機能、特にクラスタリングのように自動フェイルオーバーを持つものは、通常は何かが失敗してもサービスが破綻しないので、障害を覆い隠すことができます。 HAもしくはクラスタリングを利用する場合、障害が起きたことに気づけるよう、各インスタンスの健全性をモニタリングすることが重要です。 モニタリングに関する詳しい情報については、「アラートの推奨閾値」および「クラスタノードのモニタリング」を参照してください。

参考リンク