Skip to main content

Azure GitHub Enterprise Server のインストール

Azure に GitHub Enterprise Server をインストールするには、Premium Storage をサポートするメモリ最適化インスタンスにデプロイする必要があります。

GitHub Enterprise Server は、グローバル AzureまたはAzure Governmentにデプロイできます。

前提条件

  • GitHub Enterpriseのライセンスファイルを持っていなければなりません。 詳細については、「GitHub Enterprise Server の試用版の設定」および「GitHub Enterprise Server のライセンス ファイル」を参照してください。
  • 新しいマシンをプロビジョニングできるAzure アカウントが必要です。 詳細については、Microsoft Azure Web サイトを参照してください。
  • 仮想マシン (VM) の起動に必要なほとんどのアクションは、Azure Portalを使用して実行することもできます。 ただし、初期セットアップ用の Azure コマンド ライン インターフェイス (CLI) をインストールすることをお勧めします。 Azure CLI 2.0 の使用例を以下に示します。 詳細については、Azureガイド Install Azure CLI 2.0 を参照してください。

ハードウェアに関する考慮事項

データ 使い回し可能な.エンタープライズインストール.ハードウェア考慮事項-全プラットフォーム %}

仮想マシンタイプの決定

Azure でお使いの GitHub Enterprise Server インスタンスを起動するには、Organization のニーズに最適なマシン タイプを決定する必要があります。 メモリ最適化マシンの詳細については、Microsoft Azureドキュメントの「Memory 最適化仮想マシンのサイズを参照してください。 GitHub Enterprise Server の最小リソース要件を確認するには、「最小推奨要件」を参照してください。

インスタンスをサイズ変更すれば、いつでも CPU やメモリをスケールアップできます。 インスタンスで使用できるリソースを変更するには、ユーザーのダウンタイムが必要であるため、GitHub では、スケーリングを考慮してリソースを過剰プロビジョニングすることをおすすめします。

GitHub Enterprise Server アプライアンスは、プレミアムストレージのデータディスクを必要としており、プレミアムストレージをサポートするあらゆる Azure VM でサポートされます。 s サフィックスが付いた Azure VM の種類では、Premium Storage がサポートされます。 詳細については、Azure ドキュメントの「Azure で利用できるディスクの種類」と「Azure Premium Storage: 高パフォーマンス用に設計する」を参照してください。

GitHub は、GitHub Enterprise Server にメモリ最適化された VM を推奨しています。 詳細については、Azure ドキュメントの「メモリ最適化済み仮想マシンのサイズ」を参照してください。

GitHub Enterprise Server は、VM タイプをサポートするあらゆる地域をサポートします。 各 VM でサポートされているリージョンの詳細については、Azure の「リージョン別の利用可能な製品」を参照してください。

GitHub Enterprise Server 仮想マシンを作成する

インスタンスを作成するには、GitHub Enterprise Server のイメージを仮想マシンにインポートし、インスタンスのデータ用に追加のストレージボリュームをアタッチしなければなりません。 詳細については、「ハードウェアに関する考慮事項」を参照してください。

  1. 最新の GitHub Enterprise Server アプライアンスイメージを見つけます。 vm image list コマンドの詳細については、Microsoft のドキュメントの「az vm image list」を参照してください。

    az vm image list --all -f GitHub-Enterprise | grep '"urn": "GitHub:' | sort -V
    
  2. 見つけたアプライアンスイメージを使用して新しい VM を作成します。 詳細については、Microsoft ドキュメントの「az vm create」を参照してください。

    VM の名前、リソース グループ、VM のサイズ、優先Azure リージョンの名前、前の手順で一覧表示したアプライアンス イメージ VM の名前、Premium Storage のストレージ SKU のオプションを渡します。 リソース グループの詳細については、Microsoft のドキュメントの「リソース グループ」を参照してください。

    az vm create -n VM_NAME -g RESOURCE_GROUP --size VM_SIZE -l REGION --image APPLIANCE_IMAGE_NAME --storage-sku Premium_LRS
    
  3. 必要なポートを開くように VM でセキュリティを設定します。 管理とユーザーのために公開する必要があるネットワーク サービスに基づいて、開くネットワーク ポートを選ぶことをお勧めします。 詳細については、「ネットワーク ポート」と、Microsoft のドキュメントの「az vm open-port」を参照してください。 どのポートを開く必要があるかを判断するための各ポートの説明については、以下の表を参照してください。

    az vm open-port -n VM_NAME -g RESOURCE_GROUP --port PORT_NUMBER
    

    次の表に、各ポートの使用目的を示します

    Portサービス説明
    22SSHGit over SSHのアクセス。 パブリック/プライベートリポジトリのクローン、フェッチ、プッシュ操作がサポートされています。
    25SMTP暗号化(STARTTLS)付きのSMTPサポート。
    80HTTPWebアプリケーションへのアクセス。 SSL が有効になっている場合、すべての要求は HTTPS ポートにリダイレクトされます。
    122SSHインスタンスのシェルへのアクセス。 既定の SSH ポート (22) は、アプリケーションの git+ssh ネットワーク トラフィック専用です。
    161/UDPSNMPネットワークモニタリングプロトコルの処理に必要。
    443HTTPSWebアプリケーション及びGit over HTTPSのアクセス。
    1194/UDPVPNHigh Availability設定でのセキュアなレプリケーションネットワークトンネル。 WireGuard を使用して暗号化されます。
    8080HTTPプレーンテキストの Webベースの [Management Console]。 SSL を手動で無効にしない限り必要ありません。
    8443HTTPSセキュアな Webベースの [Management Console]。 基本的なインストールと設定に必要です。
    9418GitシンプルなGitプロトコルのポートです。 パブリックリポジトリのクローンとフェッチのみができます。 暗号化されていないネットワーク通信。 インスタンスでプライベートモードを有効化した場合、このポートをオープンする必要があるのは、匿名Git読み取りアクセスも有効化している場合のみです。 詳しくは、「Enterprise でリポジトリ管理ポリシーを適用する」をご覧ください。
  4. 新しいデータ ディスクを作成して VM にアタッチし、ユーザー ライセンス数に基づいてサイズを構成します。 詳しくは、Microsoft のドキュメントの「az vm disk attach」をご覧ください。

    メモ

    2017 年 6 月 10 日以降に作成されたすべてのAzureマネージド ディスクは、既定で Azure Storage Encryption で暗号化されます。 GitHub Enterprise Server のAzure Disk Encryptionの有効化はサポートされていません。

    VM の名前 (ghe-acme-corp など)、リソースグループ、プレミアムストレージ SKU、ディスクのサイズ (200 など)、および結果の VHD についてのオプションを渡します。

    az vm disk attach --vm-name VM_NAME -g RESOURCE_GROUP --sku Premium_LRS --new -z SIZE_IN_GB --name ghe-data.vhd --caching ReadWrite
    

    メモ

    非運用インスタンスが十分な I/O スループットを得るための推奨される最小ディスク サイズは 150 GiB であり、読み取り/書き込みキャッシュを有効にします (--caching ReadWrite)。

GitHub Enterprise Server 仮想マシンを設定する

インスタンスを構成するには、インスタンスの状態を確認し、ライセンス ファイルをアップロードし、ルート [Management Console] パスワードを設定し、インスタンスの設定を構成し、インスタンスを再起動する必要があります。

警告

攻撃者が新しいインスタンスを侵害できないようにするには、自分だけが知っているルート [Management Console] パスワードを設定し、できるだけ早く最初のユーザーを作成します。

  1. VM を設定する前に、VMがReadyRole ステータスになるのを待つ必要があります。 vm list コマンドを使用して VM の状態を確認します。 詳しくは、Microsoft のドキュメントの「az vm list」をご覧ください。

    $ az vm list -d -g RESOURCE_GROUP -o table
    > Name    ResourceGroup    PowerState    PublicIps     Fqdns    Location    Zones
    > ------  ---------------  ------------  ------------  -------  ----------  -------
    > VM_NAME RESOURCE_GROUP   VM running    40.76.79.202           eastus
    
    

    メモ

    Azureでは、VM の FQDNS エントリは自動的には作成されません。 詳細については、「Azure ガイド Linux VM のAzure ポータルで完全修飾ドメイン名を作成するを参照してください。

    1. 仮想マシンのパブリックDNS名をコピーして、Webブラウザに貼り付けてください。
  2. プロンプトでライセンスファイルをアップロードし、管理コンソールのパスワードを設定してください。 詳しくは、「GitHub Enterprise のライセンスのダウンロード」をご覧ください。

  3. [Management Console] で、目的の設定を構成して保存します。詳細については、「GitHub Enterprise の構成」を参照してください。

    1. インスタンスは自動的に再起動します。1. [Visit your instance](インスタンスにアクセスする) をクリックします。

Azure拡張機能

GitHub Enterprise Server では、Azure拡張機能のインストールはサポートされていません。 GitHub Enterprise Server イメージには、カスタマイズされた waagent パッケージのみが付属します。これによって、基本的な VM 管理機能のみがサポートされ、高度な VM 管理機能はブロックされます。

GitHub Enterprise Server インスタンスのシステムが不安定にならないように、walinuxagent サービスは、制限付きモードで GitHub Enterprise Server で意図的に実行され、エージェントによる他のエージェントのインストールは明示的に禁止されます。 Azure Insights の監視エージェント拡張機能や Azure Backup など、GitHub Enterprise Server イメージに付属する追加のエージェントと拡張機能に依存する VM 管理機能はサポートされていません。

GitHub Enterprise Server では、必要なアプリケーションとサービスのみでカスタマイズされた Linux オペレーティング システムが実行されるため、オペレーティング システム パッケージを手動でインストールまたは更新すると、これらのカスタマイズが上書きされ、予期しない動作が発生する可能性があります。 詳しくは、「システムの概要」をご覧ください。

参考資料

  •         [AUTOTITLE](/admin/overview/system-overview)
    
  •         [AUTOTITLE](/admin/overview/about-upgrades-to-new-releases)