Warning: The process for allocating new system resources varies by virtualization platform and resource type. You should always configure the monitoring and alerting of key system resources. For more information, see "Monitoring your GitHub Enterprise Server appliance."
As more users join your GitHub Enterprise Server instance, you may need to resize your storage volume. Refer to the documentation for your virtualization platform for information on resizing storage.
Requirements and recommendations
Note: Before resizing any storage volume, put your instance in maintenance mode. For more information, see "Enabling and scheduling maintenance mode."
Minimum requirements
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."
User licenses | vCPUs | Memory | Attached storage | Root storage |
---|---|---|---|---|
Trial, demo, or 10 light users | 2 or 4 | 16 GB or 32 GB | 100 GB or 150 GB | 200 GB |
10 to 3,000 | 4 or 8 | 32 GB or 48 GB | 250 GB or 300 GB | 200 GB |
3,000 to 5000 | 8 or 12 | 64 GB | 500 GB | 200 GB |
5,000 to 8000 | 12 or 16 | 96 GB | 750 GB | 200 GB |
8,000 to 10,000+ | 16 or 20 | 128 GB or 160 GB | 1000 GB | 200 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."
Increasing the data partition size
- Resize the existing user volume disk using your virtualization platform's tools.
- SSH into your GitHub Enterprise Server instance. For more information, see "Accessing the administrative shell (SSH)."
$ ssh -p 122 admin@HOSTNAME
- Put the appliance in maintenance mode. For more information, see "Enabling and scheduling maintenance mode."
- Reboot the appliance to detect the new storage allocation:
$ sudo reboot
- Run the
ghe-storage-extend
command to expand the/data/user
filesystem:$ ghe-storage-extend
Increasing the root partition size using a new appliance
- Set up a new GitHub Enterprise Server instance with a larger root disk using the same version as your current appliance. For more information, see "Setting up a GitHub Enterprise Server instance."
- Shut down the current appliance:
$ sudo poweroff
- Detach the data disk from the current appliance using your virtualization platform's tools.
- Attach the data disk to the new appliance with the larger root disk.
Increasing the root partition size using an existing appliance
Warning: Before increasing the root partition size, you must put your instance in maintenance mode. For more information, see "Enabling and scheduling maintenance mode."
-
Attach a new disk to your GitHub Enterprise Server appliance.
-
Run the
parted
command to format the disk:$ sudo parted /dev/xvdg mklabel msdos $ sudo parted /dev/xvdg mkpart primary ext4 0% 50% $ sudo parted /dev/xvdg mkpart primary ext4 50% 100%
-
Run the
ghe-upgrade
command to install a full, platform specific package to the newly partitioned disk. A universal hotpatch upgrade package, such asgithub-enterprise-2.11.9.hpkg
, will not work as expected. After theghe-upgrade
command completes, application services will automatically terminate.$ ghe-upgrade PACKAGE-NAME.pkg -s -t /dev/xvdg1
-
Shut down the appliance:
$ sudo poweroff
-
In the hypervisor, remove the old root disk and attach the new root disk at the same location as the old root disk.
-
Start the appliance.
-
Ensure system services are functioning correctly, then release maintenance mode. For more information, see "Enabling and scheduling maintenance mode."