Diese Version von GitHub Enterprise wurde eingestellt am 2021-09-23. Es wird keine Patch-Freigabe vorgenommen, auch nicht für kritische Sicherheitsprobleme. Für eine bessere Leistung, verbesserte Sicherheit und neue Features nimm ein Upgrade auf die neueste Version von GitHub Enterprise vor. Wende Dich an den GitHub Enterprise-Support, um Hilfe beim Upgrade zu erhalten.

GitHub Enterprise Server auf Azure installieren

Um GitHub Enterprise Server auf Azure zu installieren, müssen Sie es auf einer Instanz der DS-Reihe bereitstellen und Premium-LRS-Storage verwenden.

Sie können GitHub Enterprise Server auf Global Azure oder Azure Government bereitstellen.

Vorrausetzungen

  • Sie müssen über eine GitHub Enterprise-Lizenzdatei verfügen. Besuche enterprise.github.com, um eine vorhandene Lizenzdatei herunterzuladen oder eine Testlizenz anzufordern. Weitere Informationen findest Du unter „Deine GitHub Enterprise-Lizenz verwalten."
  • Sie müssen über ein Azure-Konto verfügen, das neue Computer bereitstellen kann. Weitere Informationen finden Sie auf der „Microsoft Azure-Website“.
  • Die meisten Aktionen, die zum Starten Ihrer virtuellen Maschine (VM) erforderlich sind, können auch mithilfe des Azure-Portals ausgeführt werden. Zur Ersteinrichtung sollten Sie jedoch die Azure-Befehlszeilenschnittstelle (CLI) installieren. Im Folgenden finden Sie Beispiele zur Verwendung der Azure CLI 2.0. For more information, see Azure's guide "Install Azure CLI 2.0."

Grundlegendes zur Hardware

Minimum requirements

We recommend different hardware configurations depending on the number of user licenses for your GitHub Enterprise Server instance. If you provision more resources than the minimum requirements, your instance will perform and scale better.

Note: If you joined the beta for GitHub Actions or GitHub Packages and enabled the features, your instance requires additional hardware resources. Minimum requirements for an instance with beta features enabled are bold in the following table. For more information, see "Beta features in GitHub Enterprise Server 2.22."

BenutzerlizenzenvCPUsArbeitsspeicherAttached-StorageRoot-Storage
Test, Demo oder 10 Benutzer mit eingeschränkten Funktionen2
or 4
16 GB
or 32 GB
100 GB
or 150 GB
200 GB
10–30004
or 8
32 GB
or 48 GB
250 GB
or 300 GB
200 GB
3000–50008
or 12
64 GB500 GB200 GB
5000–800012
or 16
96 GB750 GB200 GB
8000–10000+16
or 20
128 GB
or 160 GB
1000 GB200 GB

For more information about adjusting resources for an existing instance, see "Increasing storage capacity" and "Increasing CPU or memory resources."

Beta features in GitHub Enterprise Server 2.22

GitHub Enterprise Server 2.22 offered features in beta, such as GitHub Actions, GitHub Packages, and code scanning. For more information, see the GitHub Enterprise Server 2.22 release notes.

If you enabled beta features for GitHub Enterprise Server 2.22, your instance requires additional hardware resources. For more information about minimum requirements, see "Minimum requirements."

For more information about the hardware requirements for GitHub Actions, see "Getting started with GitHub Actions for GitHub Enterprise Server."

Speicher

We recommend a high-performance SSD with high input/output operations per second (IOPS) and low latency for GitHub Enterprise Server. Workloads are I/O intensive. If you use a bare metal hypervisor, we recommend directly attaching the disk or using a disk from a storage area network (SAN).

Your instance requires a persistent data disk separate from the root disk. Weitere Informationen findest Du unter „Systemübersicht“.

To configure the beta of GitHub Actions, you must provide external blob storage. For more information, see "Getting started with GitHub Actions for GitHub Enterprise Server."

You can resize your instance's root disk by building a new instance or using an existing instance. Weitere Informationen findest Du unter „Speicherkapazität erhöhen“.

CPU and memory

The CPU and memory resources that GitHub Enterprise Server requires depend on the levels of activity for users, automations, and integrations.

If you enabled the beta of GitHub Actions for the users of your GitHub Enterprise Server instance, you may need to provision additional CPU and memory resources for your instance. For more information, see "Getting started with GitHub Actions for GitHub Enterprise Server."

When you increase CPU resources, we recommend adding at least 6.5 GB of memory for each vCPU (up to 16 vCPUs) that you provision for the instance. When you use more than 16 vCPUs, you don't need to add 6.5 GB of memory for each vCPU, but you should monitor your instance to ensure it has enough memory.

Warning: We recommend that users configure webhook events to notify external systems of activity on GitHub Enterprise Server. Automated checks for changes, or polling, will negatively impact the performance and scalability of your instance. For more information, see "About webhooks."

For more information about monitoring the capacity and performance of GitHub Enterprise Server, see "Monitoring your appliance."

You can increase your instance's CPU or memory resources. For more information, see "Increasing CPU or memory resources."

Typ der virtuellen Maschine ermitteln

Before launching your GitHub Enterprise Server instance on Azure, you'll need to determine the machine type that best fits the needs of your organization. To review the minimum requirements for GitHub Enterprise Server, see "Minimum requirements."

Hinweis: Du kannst Deine CPU oder Deinen Arbeitsspeicher jederzeit hochskalieren, indem Du die Größe Deiner Instanz anpasst. Da das Anpassen Deiner CPU- oder Arbeitsspeichergröße jedoch Ausfallzeiten für Deine Benutzer bedeutet, empfehlen wir ein Over-Provisioning der zu skalierenden Ressourcen.

Für die GitHub Enterprise Server-Appliance ist eine Premium-Storage-Daten-Disk erforderlich. Zudem wird sie auf jeder Azure-VM unterstützt, die Premium-Storage unterstützt. Azure VM types with the s suffix support premium storage. For more information, see "What disk types are available in Azure?" and "Azure premium storage: design for high performance" in the Azure documentation.

GitHub recommends a memory-optimized VM for GitHub Enterprise Server. For more information, see "Memory optimized virtual machine sizes" in the Azure documentation.

GitHub Enterprise Server unterstützt jede Region, die Ihren VM-Typ unterstützt. For more information about the supported regions for each VM, see Azure's "Products available by region."

GitHub Enterprise Server-VM erstellen

Zum Erstellen der Instanz musst Du das GitHub Enterprise Server-Abbild auf Deine virtuelle Maschine importieren und ein zusätzliches Storage-Volume für Deine Instanzdaten anhängen. Weitere Informationen finden Sie unter „Grundlegendes zur Hardware“.

  1. Suchen Sie nach dem neuesten GitHub Enterprise Server-Appliance-Image. Weitere Informationen zum Befehl vm image list finden Sie unter „az vm image list“ in der Microsoft-Dokumentation.

    $ az vm image list --all -f GitHub-Enterprise | grep '"urn":' | sort -V
  2. Erstellen Sie mithilfe des von Ihnen ermittelten Appliance-Images eine neue VM. Weitere Informationen finden Sie unter „az vm create“ in der Microsoft-Dokumentation.

    Übergeben Sie Optionen für den Namen Ihrer VM, den Ressourcentyp, die Größe Ihrer VM, den Namen Ihrer bevorzugten Azure-Region, den Namen der von Ihnen im vorherigen Schritt aufgelisteten Appliance-Image-VM und die Storage-SKU für den Premium-Storage. Weitere Informationen zu Ressourcengruppen finden Sie unter „Ressourcengruppen“ in der Microsoft-Dokumentation.

    $ az vm create -n VM_NAME -g RESOURCE_GROUP --size VM_SIZE -l REGION --image APPLIANCE_IMAGE_NAME --storage-sku Premium_LRS
  3. Konfigurieren Sie die Sicherheitseinstellungen auf Ihrer VM, um die erforderlichen Ports zu öffnen. Weitere Informationen finden Sie unter „az vm open-port“ in der Microsoft-Dokumentation. In der folgenden Tabelle finden Sie eine Beschreibung der einzelnen Ports, um festzustellen, welche Ports Sie öffnen müssen.

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

    Diese Tabelle zeigt, wofür jeder Port verwendet wird.

    PortDienstBeschreibung
    22SSHGit über SSH-Zugriff. Unterstützt das Klonen, Abrufen und Übertragen von Vorgängen an öffentliche/private Repositorys.
    25SMTPSMTP mit Verschlüsselung (STARTTLS) wird unterstützt.
    80HTTPWebanwendungszugriff. Alle Anforderungen werden an den HTTPS-Port weitergeleitet, wenn SSL aktiviert ist.
    122SSHShellzugriff auf die Instanz. Der standardmäßige SSH-Port (22) ist für den Git- und SSH-Netzwerk-Traffic der Anwendung vorgesehen.
    161/UDPSNMPFür Netzwerküberwachungs-Protokollvorgänge erforderlich.
    443HTTPSWebanwendung und Git über HTTPS-Zugriff.
    1194/UDPVPNSicherer Replikationsnetzwerktunnel in einer hochverfügbaren Konfiguration.
    8080HTTPWebbasierte Managementkonsole in Nur-Text. Nur erforderlich, wenn SSL manuell deaktiviert wird.
    8443HTTPSSichere webbasierte Managementkonsole. Für die grundlegende Installation und Konfiguration erforderlich.
    9418GitEinfacher Git-Protokollport. Nur Klon- und Abrufvorgänge zu öffentlichen Repositorys. Unencrypted network communication. If you have enabled private mode on your instance, then opening this port is only required if you also enabled anonymous Git read access. For more information, see "Enforcing repository management policies in your enterprise."
  4. Erstelle eine neue unverschlüsselte Daten-Festplatte, hänge sie an die VM und konfiguriere die Größe entsprechend Deiner Anzahl von Benutzerlizenzen. Weitere Informationen finden Sie unter „az vm disk attach“ in der Microsoft-Dokumentation.

    Übergeben Sie Optionen für den Namen Ihrer VM (z. B. ghe-acme-corp), die Ressourcengruppe, die Premium-Storage-SKU, die Größe der Disk (z. B. 100) und einen Namen für die resultierende 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

    Hinweis: Damit Nicht-Produktionsinstanzen einen ausreichenden E/A-Durchsatz aufweisen, wird eine minimale Disk-Größe von 40 GiB mit aktiviertem Lese-/Schreib-Caching (--caching ReadWrite) empfohlen.

GitHub Enterprise Server-VM konfigurieren

  1. Vor der VM-Konfiguration müssen Sie darauf warten, dass sie den Status „ReadyRole“ aufweist. Führen Sie den Befehl vm list aus, um den Status der VM zu überprüfen. Weitere Informationen finden Sie unter „az vm list“ in der Microsoft-Dokumentation.

    $ 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
    

    Hinweis: Azure erstellt nicht automatisch einen FQDN-Eintrag für die VM. For more information, see Azure's guide on how to "Create a fully qualified domain name in the Azure portal for a Linux VM."

  2. Kopiere den Namen des öffentlichen DNS der virtuellen Maschine, und füge ihn in einen Webbrowser ein.

  3. Lade an der Eingabeaufforderung Deine Lizenzdatei hoch, und lege das Passwort für die Managementkonsole fest. Weitere Informationen findest Du unter „Deine GitHub Enterprise-Lizenz verwalten."

  4. Konfigurieren Sie in der Managementkonsole Ihre gewünschten Einstellungen, und speichern Sie sie. Weitere Informationen finden Sie unter „GitHub Enterprise Server-Appliance konfigurieren“.

  5. Die Instanz wird automatisch neu gestartet.

  6. Klicke auf Visit your instance (Instanz aufrufen).

Weiterführende Informationen