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

このバージョンの GitHub Enterprise はこの日付をもって終了となります: このバージョンの GitHub Enterprise はこの日付をもって終了となりました: 2019-07-12. 重大なセキュリティ上の問題があっても、パッチはリリースされなくなります。優れたパフォーマンス、改善されたセキュリティ、そして新しい機能のために、GitHub Enterprise の最新バージョンにアップグレードしてください。 アップグレードに関するヘルプについては、GitHub Enterprise Support に連絡してください。

AWS で GitHub Enterprise Server をインストールする

GitHub Enterprise Server をAmazon Web Services (AWS) にインストールするには、Amazon Elastic Compute Cloud (EC2) インスタンスを起動し、個別の Amazon Elastic Block Store (EBS) データボリュームを作成してアタッチする必要があります。

このガイドの内容

必要な環境

本ガイドは、読者が以下のAWSの概念に馴染んでいることを前提としています。

ハードウェアについて

GitHub Enterprise Serverは、ルートのディスクとは別に永続的なデータディスクを必要とします。詳しい情報についてはシステムの概要を参照してください。

GitHub Enterprise Server インスタンスで使用するシート数に基づいたハードウェアの構成をおすすめします。

シート vCPUs メモリ アタッチされたストレージ ルートストレージ
10-500 2 16 GB 100 GB 200 GB
500-3000 4 32 GB 250 GB 200 GB
3000-5000 8 64 GB 500 GB 200 GB
5000-8000 12 72 GB 750 GB 200 GB
8000-10000+ 16 128 GB 1000 GB 200 GB

以上は最小限の推奨値です。ユーザのアクティビティやインテグレーションの選択など、利用状況に応じてさらにリソースが必要になることがあります。 詳しい情報についてはCPUあるいはメモリリソースの増加を参照してください。

メモ: ルートディスクは、新しいアプライアンスを構築するか、既存のアプライアンスを使うかしてリサイズできます。詳細は「ストレージ容量の増加」を参照してください。

インスタンスタイプの決定

AWSでGitHub Enterprise Server インスタンスを起動する前に、組織の要求に最も適した仮想マシンのタイプを決定しなければなりません。

サポートされているインスタンスタイプ

GitHub Enterprise Serverは、以下のEC2インスタンスタイプでサポートされています。詳しい情報についてはAWS EC2インスタンスタイプの概要ページを参照してください。

EC2インスタンスタイプ モデル
C3 c3.2xlarge, c3.4xlarge, c3.8xlarge
EC2インスタンスタイプ モデル
C4 c4.2xlarge, c4.4xlarge, c4.8xlarge
EC2インスタンスタイプ モデル
M3 m3.xlarge, m3.2xlarge
EC2インスタンスタイプ モデル
M4 m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge
EC2インスタンスタイプ モデル
R4 r4.large, r4.xlarge, r4.2xlarge, r4.4xlarge, r4.8xlarge, r4.16xlarge
EC2インスタンスタイプ モデル
X1 x1.16xlarge, x1.32xlarge

シート数に基づき、以下のインスタンスタイプをおすすめします。

シート 推奨タイプ
10 - 500 r4.large
500 - 3000 r4.xlarge
3000 - 5000 r4.2xlarge
5000 - 8000 r4.4xlarge
8000 - 10000+ r4.8xlarge

メモ: インスタンスをリサイズすれば、いつでも CPU あるいはメモリをスケールアップできます。ただし、CPU あるいはメモリをリサイズするとユーザにはダウンタイムが生ずるので、スケールに備えてリソースをオーバープロビジョニングすることをおすすめします。

GitHub Enterprise Server AMI を選択する

GitHub Enterprise Server には、GitHub Enterprise Server ポータルまたは AWS CLI を使用することで、Amazon Machine Image (AMI) を選択できます。

GitHub Enterprise Server用のAMIは、AWS GovCloud地域で利用できます。 これにより、特定の規制要件を満たす米国のお客様は、連邦準拠のクラウド環境で GitHub Enterprise Server を実行できます。 AWSの連邦及びその他の標準への準拠に関する詳しい情報についてはAWS's GovCloud (US) page and AWS コンプライアンスページを参照してください。

GitHub Enterprise Server を使用して AMI を選択する

  1. GitHub Enterprise Server のダウンロードページ にアクセスします。

  2. [Get the latest release of GitHub Enterprise Server] (GitHub Enterprise Server の最新リリースを入手) をクリックします。

  3. Select your platform(プラットフォームの選択)ドロップダウンメニューでAmazon Web Servicesをクリックしてください。

  4. Select your AWS region(AWSのリージョン選択)ドロップダウンメニューで、希望するリージョンを選択してください。

  5. 表示されたAMI IDをメモしておいてください。

AWS CLIを使ったAMIの選択

  1. AWS CLI を使用して、GitHub の AWS オーナー ID (GovCloud の場合は 025577942450、その他の地域の場合は 895557238572) によって公開された GitHub Enterprise Server イメージのリストを取得します。 詳しい情報についてはAWSのドキュメンテーションの"describe-images"を参照してください。
aws ec2 describe-images \
--owners OWNER ID \
--query 'sort_by(Images,&Name)[*].{Name:Name,ImageID:ImageId}' \
--output=text
  1. 最新の GitHub Enterprise Server イメージ用の AMI ID をメモしておきます。

セキュリティグループを作成する

AMI を初めてセットアップする場合は、セキュリティグループを作成し、下記の表にある各ポートに関する新しいセキュリティグループのルールを追加する必要があります。 詳しい情報については、AWS ガイド「セキュリティグループを使用する」を参照してください。

  1. AWS CLI を使用して、新しいセキュリティグループを作成します。 詳細は AWSドキュメンテーションの「create-security-group」を参照してください。

    $ aws ec2 create-security-group --group-name SECURITY_GROUP_NAME --description "SECURITY GROUP DESCRIPTION"
  2. 新しく作成したセキュリティグループのセキュリティグループ ID (sg-xxxxxxxx) をメモしておきます。

  3. 下記の表にある各ポートに関するセキュリティグループのルールを作成します。 詳細は AWSドキュメンテーションの「authorize-security-group-ingress」を参照してください。

    $ aws ec2 authorize-security-group-ingress --group-id SECURITY_GROUP_ID --protocol PROTOCOL --port PORT_NUMBER --cidr SOURCE IP RANGE

    This table identifies what each port is used for.

    ポート サービス 説明
    22 SSH Git over SSH のアクセス。パブリック/プライベートリポジトリのクローン、フェッチ、プッシュ操作がサポートされています。
    25 SMTP 暗号化 (STARTTLS) をサポートした SMTP。
    80 HTTP Web アプリケーションへのアクセス。 SSL が有効化されている場合、すべてのリクエストは HTTPS ポートへリダイレクトされます。
    122 SSH インスタンスへのシェルでのアクセス。 デフォルトの SSH ポート (22) は、アプリケーションの git+ssh ネットワークトラフィック専用です。
    161/UDP SNMP ネットワークモニタリングプロトコルの操作に必要です。
    443 HTTPS HTTPS アクセス経由での Web アプリケーションおよび Git へのアクセス。
    1194/UDP VPN 高可用性構成でのセキュアなレプリケーションネットワークトンネル。
    8080 HTTP 平文の Web ベースの Management Console。 SSL が手動で無効化されていない限り不要。
    8443 HTTPS セキュアな Web ベースの Management Console。 基本的なインストールと設定に必要。
    9418 Git シンプル Git プロトコルポート。パブリックリポジトリへのクローンおよびフェッチ操作のみ。 暗号化されていないネットワーク通信。

GitHub Enterprise Server インスタンスを作成する

インスタンスを作成するには、GitHub Enterprise Server AMI を使用して EC2 インスタンスを起動し、インスタンスデータ用の追加のストレージボリュームをアタッチする必要があります。 詳細は「ハードウェアについて」を参照してください。

メモ: データディスクを暗号化してセキュリティを強化すれば、インスタンスに書き込むデータを確実に保護することができます。 暗号化ディスクを使用すると、パフォーマンスにわずかな影響が生じます。 ボリュームを暗号化することに決めた場合は、インスタンスを初めて起動する前に暗号化することを強くおすすめします。 詳細は EBS 暗号化に関する Amazon ガイドを参照してください。

警告: インスタンスを設定した後に暗号化を有効にすると決めた場合は、データを暗号化されたボリュームに移行する必要があります。これにより、ユーザーに何らかのダウンタイムをもたらします。

EC2 インスタンスを起動する

AWS CLI で、AMI および作成したセキュリティグループを使用して EC2 インスタンスを起動します。 インスタンスデータ用にストレージボリュームとして使うための新しブロックデバイスをアタッチし、サイズをシート数に基づいて設定してください。 詳しい情報については、AWSドキュメンテーションの「run-instances」を参照してください。

aws ec2 run-instances \
  --security-group-ids SECURITY_GROUP_ID \
  --instance-type INSTANCE_TYPE \
  --image-id AMI_ID \
  --block-device-mappings '[{"DeviceName":"/dev/xvdf","Ebs":{"VolumeSize":SIZE,"VolumeType":"TYPE"}}]' \
  --region REGION \
  --ebs-optimized

Elastic IP を割り当ててとインスタンスに関連付ける

これが本番インスタンスである場合は、GitHub Enterprise Server の設定に進む前に、Elastic IP (EIP) を割り当ててそれをインスタンスに関連付けることを強くおすすめします。 そうしなければ、インスタンスのパブリック IP アドレスはインスタンスの再起動後に保持されません。 詳しい情報については、Amazon ドキュメンテーションの「Elastic IP アドレスを割り当てる」および「Elastic IP アドレスを実行中のインスタンスに関連付ける」を参照してください。

稼働状態の High Availability 設定では、プライマリインスタンスとレプリカインスタンスの両方に別々の EIP を割り当ててください。 詳細は「High Availability 用に GitHub Enterprise Server を設定する」を参照してください。

GitHub Enterprise Server インスタンスを設定する

  1. VM のパブリック DNS 名をコピーし、Web ブラウザに貼り付けてください。

  2. プロンプトでライセンスファイルをアップロードし、Management Console のパスワードを設定してください。詳しい情報についてはGitHub Enterprise Serverのライセンスの管理を参照してください。

  3. Management Console で、任意の設定を行って保存してください。 詳細は「GitHub Enterprise Server アプライアンスを設定する」を参照してください。

  4. インスタンスは自動的に再起動します。

  5. [Visit your instance] (インスタンスにアクセスする) をクリックしてください。

参考リンク

担当者にお尋ねください

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

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