# Bring a demoted primary node back online

> 原文：[https://docs.gitlab.com/ee/administration/geo/disaster_recovery/bring_primary_back.html](https://docs.gitlab.com/ee/administration/geo/disaster_recovery/bring_primary_back.html)

*   [Configure the former **primary** node to be a **secondary** node](#configure-the-former-primary-node-to-be-a-secondary-node)
*   [Promote the **secondary** node to **primary** node](#promote-the-secondary-node-to-primary-node)
*   [Restore the **secondary** node](#restore-the-secondary-node)

# Bring a demoted primary node back online[](#bring-a-demoted-primary-node-back-online-premium-only "Permalink")

故障转移后，可以故障回复到降级的**主**节点以还原原始配置. 此过程包括两个步骤：

1.  使旧的**主**节点成为**辅助**节点.
2.  将**辅助**节点提升为**主要**节点.

**警告：**如果您对该节点上的数据一致性有任何疑问，我们建议从头开始进行设置.

## Configure the former **primary** node to be a **secondary** node[](#configure-the-former-primary-node-to-be-a-secondary-node "Permalink")

由于先前的**主要**节点将与当前的**主要**节点不同步，因此第一步是使先前的**主要**节点保持最新. 请注意，将先前的**主**节点重新同步后，不会重播存储在磁盘上的数据（如存储库和上载），这可能会导致磁盘使用率增加. 或者，您可以[设置一个新的**辅助** GitLab 实例](../replication/index.html#setup-instructions)来避免这种情况.

要使以前的**主**节点保持最新状态：

1.  SSH 进入落后的前**主**节点.
2.  确保所有服务都已启动：

    ```
    sudo gitlab-ctl start 
    ```

    **注意：**如果[永久禁用了**主**节点](index.html#step-2-permanently-disable-the-primary-node) ，则需要立即撤消这些步骤. 对于 Debian / Ubuntu，您只需要运行`sudo systemctl enable gitlab-runsvdir` . 对于 CentOS 6，您需要从头开始安装 GitLab 实例，并按照[安装说明](../replication/index.html#setup-instructions)将其设置为**辅助**节点. 在这种情况下，您无需执行下一步.**注意：**如果在灾难恢复过程中[更改了](index.html#step-4-optional-updating-the-primary-domain-dns-record)该节点[的 DNS 记录](index.html#step-4-optional-updating-the-primary-domain-dns-record) ，则可能需要在此过程中[阻止对该节点的所有写操作](planned_failover.html#prevent-updates-to-the-primary-node) .
3.  [设置数据库复制](../replication/database.html) . 请注意，在这种情况下， **主**节点是指当前的**主**节点， **辅助**节点是指先前的**主**节点.

如果丢失了原始**主**节点，请按照[设置说明](../replication/index.html#setup-instructions)设置新的**辅助**节点.

## Promote the **secondary** node to **primary** node[](#promote-the-secondary-node-to-primary-node "Permalink")

初始复制完成并且**主**节点和**辅助**节点紧密同步后，您可以执行[计划的故障转移](planned_failover.html) .

## Restore the **secondary** node[](#restore-the-secondary-node "Permalink")

如果你的目标是再有两个节点，你需要把你的**辅助**节点重新联机，以及通过重复第一步（ [配置前**主**节点是**辅助**节点](#configure-the-former-primary-node-to-be-a-secondary-node) ）为**辅助**节点.