Skip to content

Commit 866a55e

Browse files
authored
Merge pull request #37721 from github/repo-sync
Repo sync
2 parents e83febf + eb4f299 commit 866a55e

File tree

4 files changed

+53
-1
lines changed

4 files changed

+53
-1
lines changed
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
---
2+
title: Changing your platform
3+
shortTitle: Changing platform
4+
intro: 'How to change the platform that runs {% data variables.location.product_location %}'
5+
type: how_to
6+
topics:
7+
- Infrastructure
8+
- Migration
9+
- Enterprise
10+
versions:
11+
ghes: '*'
12+
---
13+
14+
In some cases, you may need to change the platform on which {% data variables.location.product_location %} runs, such as moving from VMware to Azure.
15+
16+
## Recommendations
17+
18+
You should carefully plan any out migration procedures and consider first testing on a staging environment. For more information, see [AUTOTITLE](/admin/installing-your-enterprise-server/setting-up-a-github-enterprise-server-instance/setting-up-a-staging-instance).
19+
20+
Moving platforms using a replica will require the least amount of time for the migration process but will require you to make changes to your live environment in order to setup the replication.
21+
22+
Moving via backup and restore will not require any changes to your live environment, however the migration will take a significant amount of time. The specific amount of time to complete the migration will vary based the performance of your backup host, and the network speeds between your backup host and the new instance. Maintenance mode should also be enabled throughout the process otherwise users may be able to make changes which will not be reflected on your new instance.
23+
24+
> [!WARNING]
25+
> You should not use utilities which convert {% data variables.location.product_location %} from one platform to another. Doing so could cause unintended side effects such as system instability.
26+
27+
## Move platforms using a HA replica
28+
29+
1. Set up a new {% data variables.product.prodname_ghe_server %} instance on your chosen platform. See [AUTOTITLE](/admin/installation/setting-up-a-github-enterprise-server-instance).
30+
1. Configure your new {% data variables.product.prodname_ghe_server %} instance as a replica. See [AUTOTITLE](/admin/monitoring-and-managing-your-instance/configuring-high-availability/creating-a-high-availability-replica).
31+
1. Failover to your replica. See [AUTOTITLE](/admin/monitoring-and-managing-your-instance/configuring-high-availability/initiating-a-failover-to-your-replica-appliance).
32+
33+
## Moving platforms using backup and restore
34+
35+
1. Setup backups for your existing {% data variables.product.prodname_ghe_server %} instance. See [AUTOTITLE](/admin/backing-up-and-restoring-your-instance/configuring-backups-on-your-instance).
36+
1. Set up a new {% data variables.product.prodname_ghe_server %} instance on your chosen platform. See [AUTOTITLE](/admin/installation/setting-up-a-github-enterprise-server-instance).
37+
1. Communicate the upcoming downtime to your users and enable maintenance mode. For more information, see the following articles.
38+
39+
* [AUTOTITLE](/admin/managing-accounts-and-repositories/communicating-information-to-users-in-your-enterprise/customizing-user-messages-for-your-enterprise#creating-a-mandatory-message)
40+
* [AUTOTITLE](/admin/administering-your-instance/configuring-maintenance-mode/enabling-and-scheduling-maintenance-mode)
41+
1. Create a new backup of your existing {% data variables.product.prodname_ghe_server %} instance.
42+
1. Restore the backup to your new {% data variables.product.prodname_ghe_server %} instance. If you are using {% data variables.product.prodname_actions %}, see [AUTOTITLE](/admin/managing-github-actions-for-your-enterprise/advanced-configuration-and-troubleshooting/backing-up-and-restoring-github-enterprise-server-with-github-actions-enabled)
43+
1. Update the DNS to point to the address of your new {% data variables.product.prodname_ghe_server %} instance.
44+
1. Disable maintenance mode and let users know they can continue normal operations.
45+
46+
## Further reading
47+
48+
* [AUTOTITLE](/admin/overview/about-github-enterprise-server)
49+
* [AUTOTITLE](/admin/monitoring-and-managing-your-instance/configuring-high-availability/about-high-availability-configuration)
50+
* [AUTOTITLE](/admin/backing-up-and-restoring-your-instance/configuring-backups-on-your-instance#about-github-enterprise-server-backup-utilities)

content/admin/monitoring-and-managing-your-instance/updating-the-virtual-machine-and-physical-resources/index.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,6 @@ children:
1616
- /increasing-storage-capacity
1717
- /increasing-cpu-or-memory-resources
1818
- /using-generation-2-virtual-machines
19+
- /changing-your-platform
1920
shortTitle: Update VM & resources
2021
---

data/features/security-overview-export-data.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,3 @@
44
versions:
55
fpt: '*'
66
ghec: '*'
7-
ghes: '>=3.16'

data/reusables/repositories/rulesets-commit-regex.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ Rulesets support RE2 syntax. For more information, see Google's [syntax guide](h
66

77
By default, regular expressions in metadata restrictions do not consider multiple lines of text. For example, if you have a multiline commit message, the pattern `^ABC` will be a match if the first line of the message starts with `ABC`. To match multiple lines of the message, start your expression with `(?m)`.
88

9+
When using regular expression metacharacter classes that contain a backslash `\` it must be escaped with an additional backslash. For example `task#\\d{1,4}`
10+
911
The negative lookahead assertion, denoted `?!`, is not supported. However, for cases where you need to look for a given string that is not followed by another given string, you can use the positive lookahead assertion, denoted `?`, combined with the "Must not match a given regex pattern" requirement.
1012

1113
> [!NOTE]

0 commit comments

Comments
 (0)