Skip to content

Commit

Permalink
Revive articles about configuring high availability for a cluster (#4…
Browse files Browse the repository at this point in the history
…1265)

Co-authored-by: Matt Pollard <mattpollard@users.noreply.github.com>
  • Loading branch information
isaacmbrown and mattpollard authored Sep 1, 2023
1 parent e4cf532 commit 82843ab
Show file tree
Hide file tree
Showing 13 changed files with 408 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,6 @@ redirect_from:
- /enterprise/admin/clustering/clustering-overview
- /enterprise/admin/enterprise-management/about-clustering
- /admin/enterprise-management/about-clustering
- /enterprise/admin/enterprise-management/configuring-high-availability-replication-for-a-cluster
- /admin/enterprise-management/configuring-high-availability-replication-for-a-cluster
- /admin/enterprise-management/configuring-clustering/configuring-high-availability-replication-for-a-cluster
- /enterprise/admin/enterprise-management/initiating-a-failover-to-your-replica-cluster
- /admin/enterprise-management/initiating-a-failover-to-your-replica-cluster
- /admin/enterprise-management/configuring-clustering/initiating-a-failover-to-your-replica-cluster
- /admin/enterprise-management/configuring-clustering/about-clustering
versions:
ghes: '*'
Expand Down

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -24,4 +24,6 @@ children:
- /rebalancing-cluster-workloads
- /evacuating-a-cluster-node-running-data-services
- /replacing-a-cluster-node
- /configuring-high-availability-replication-for-a-cluster
- /initiating-a-failover-to-your-replica-cluster
---
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
---
title: Initiating a failover to your replica cluster
intro: 'If your {% data variables.product.prodname_ghe_server %} cluster fails, you can fail over to the replica.'
redirect_from:
- /enterprise/admin/enterprise-management/initiating-a-failover-to-your-replica-cluster
- /admin/enterprise-management/initiating-a-failover-to-your-replica-cluster
versions:
ghes: '>= 3.9'
type: how_to
topics:
- Clustering
- Enterprise
- High availability
- Infrastructure
shortTitle: Initiate a failover to replica
---

## About failover to your replica cluster

If the datacenter for your active cluster experiences a failure and you've configured high availability, you can fail over to your replica cluster.

Failing over to your replica cluster promotes it to be your new active cluster, and decouples the new active cluster from the old active cluster. After failover, you will have two standalone clusters without high availability configured. You can reconfigure replication from the new active cluster. For more information, see "[AUTOTITLE](/enterprise/admin/enterprise-management/configuring-high-availability-replication-for-a-cluster#reconfiguring-high-availability-replication-after-a-failover)."

## Prerequisites

To fail over to replica nodes, you must have configured high availability replication for your cluster. For more information, see "[AUTOTITLE](/enterprise/admin/enterprise-management/configuring-high-availability-replication-for-a-cluster)."

{% data reusables.enterprise_clustering.high-availability-requires-391 %}

## Initiating a failover to your replica cluster

1. SSH into the primary MySQL node in the replica cluster. For more information, see "[AUTOTITLE](/enterprise/admin/configuration/accessing-the-administrative-shell-ssh#enabling-access-to-the-administrative-shell-via-ssh)."
1. To begin the failover to the secondary cluster and configure the nodes to respond to requests, run the following command.

```shell
ghe-cluster-failover
```

{% data reusables.enterprise_clustering.configuration-finished %}
1. Update the DNS record to point to the IP address of the load balancer for your replica cluster. After the TTL period expires, requests will be directed to the replica cluster.

After {% data variables.product.prodname_ghe_server %} returns you to the prompt and your DNS updates propagate, you've finished failing over. Users can access {% data variables.product.prodname_ghe_server %} using the usual hostname for your cluster.
2 changes: 2 additions & 0 deletions data/release-notes/enterprise-server/3-9/1.yml
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,8 @@ sections:
The Management Console displays a warning about unexpected consequences that may result from modification of the instance's hostname after initial configuration.
- |
On an instance with multiple nodes, internal tooling to repair repositories now attempts to resolve problems within the entire repository network.
- |
To supplement a disaster recovery plan for a GitHub Enterprise Server instance in a cluster configuration, an administrator can configure a replica of an entire cluster in a separate datacenter, allowing the cluster to fail over to redundant nodes. For more information, see "[AUTOTITLE](/admin/monitoring-managing-and-updating-your-instance/configuring-clustering/configuring-high-availability-replication-for-a-cluster)."
known_issues:
- |
{% data reusables.release-notes.upgrade-to-3-9-or-to-3-10-io-utilization-increase %}
Expand Down
1 change: 1 addition & 0 deletions data/reusables/enterprise/use-a-multiplexer.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
This command can take some time to finish, so we recommend running the command in a terminal multiplexer like `screen` or `tmux`.
3 changes: 3 additions & 0 deletions data/reusables/enterprise_clustering/apply-configuration.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
1. Apply the new configuration. {% data reusables.enterprise.use-a-multiplexer %}

ghe-cluster-config-apply
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
The cluster configuration file lists each node under a <code>[cluster "<em>HOSTNAME</em>"]</code> heading.
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
1. After the configuration run finishes, {% data variables.product.prodname_ghe_server %} displays the following message.

```shell
Finished cluster configuration
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{% ifversion ghes = 3.9 %}

{% note %}

**Note:** High availability replication is available on {% data variables.product.prodname_ghe_server %} version 3.9.1 and later.

{% endnote %}

{% endif %}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
The order of the key-value pairs doesn't matter.
2 changes: 1 addition & 1 deletion data/reusables/enterprise_clustering/network-latency.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
For high availability, the latency between the network with the active nodes and the network with the passive nodes must be less than 70 milliseconds. We don't recommend configuring a firewall between the two networks.
For high availability, the latency between the network with the active nodes and the network with the replica nodes must be less than 70 milliseconds. We don't recommend configuring a firewall between the two networks.
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
1. Open the cluster configuration file at `/data/user/common/cluster.conf` in a text editor. For example, you can use Vim. Create a backup of the `cluster.conf` file before you edit the file.

```shell copy
sudo vim /data/user/common/cluster.conf
```

0 comments on commit 82843ab

Please sign in to comment.