网站搜索

隔离并向集群添加故障转移 - 第 3 部分


在前两篇指南中,我们讨论了如何安装集群、创建集群以及向集群添加节点,还研究了完成必要配置后 cluster.conf 的外观。

今天,在集群系列的第三部分中,我们将讨论什么是防护、故障转移以及如何在我们的设置中配置它们。

首先我们来看看防护故障转移是什么意思。

什么是击剑?

如果我们考虑具有多个节点的设置,则一个或多个节点可能在某个时间点发生故障。因此,在这种情况下,防护会将出现故障的服务器与集群隔离,以保护同步资源。因此我们可以添加一个fence来保护集群内共享的资源。

什么是故障转移?

想象一个场景,其中服务器拥有组织的重要数据,利益相关者需要组织保持服务器正常运行,而不会出现任何停机时间。在这种情况下,我们可以将数据复制到另一台服务器(现在有两台具有相同数据和规格的服务器),我们可以将其用作故障转移。

万一其中一台服务器出现故障,我们配置为故障转移的另一台服务器将接管负载并提供第一台服务器所提供的服务。在这种方法中,用户不会经历主服务器造成的停机时间。

您可以在此处浏览此集群系列的第 01 部分第 02 部分

  1. 什么是集群以及优点/缺点 – 第 1 部分
  2. 在 Linux 中设置具有两个节点的集群 - 第 2 部分

正如我们在前两篇文章中已经讨论过的测试环境设置,我们使用三台服务器进行此设置,第一台服务器充当集群服务器,其他两台服务器充当节点。

Cluster Server: 172.16.1.250
Hostname: clserver.test.net

node01: 172.16.1.222
Hostname: nd01server.test.net

node02: 172.16.1.223
Hostname: nd02server.test.net   

第 1 步:如何向集群服务器添加防护

1. 首先,我们必须在集群服务器上启用防护,为此我将使用以下两个命令。

ccs -h 172.16.1.250 --setfencedaemon post_fail_delay=0
ccs -h 172.16.1.250 --setfencedaemon post_join_delay=10

正如您所看到的,我们使用 ccs 命令将配置添加到集群中。以下是我在命令中使用的选项的定义。

  1. -h:集群主机IP地址。
  2. –setfencedaemon:将更改应用到防护守护程序。
  3. post_fail_delay:当节点发生故障时,守护进程在隔离受害服务器之前等待的时间(以秒为单位)。
  4. post_join_delay:当节点加入集群时,守护进程在隔离受害服务器之前等待的时间(以秒为单位)。

2. 现在让我们为集群添加一个 fence 设备,执行以下命令来添加一个 fence 设备。

ccs -h 172.16.1.250 --addfencedev tecmintfence agent=fence_virt

这就是我执行命令的方式以及添加栅栏设备后 cluster.conf 文件的样子。

您可以执行以下命令来查看可以使用哪种fence选项来创建fence设备。我使用了fence_virt,因为我使用虚拟机进行设置。

ccs -h 172.16.1.250 --lsfenceopts

步骤2:向Fence设备添加两个节点

3.现在我要向创建的fence设备添加一个方法,并向其中添加主机。

ccs -h 172.16.1.250 --addmethod Method01 172.16.1.222
ccs -h 172.16.1.250 --addmethod Method01 172.16.1.223

您必须为设置中的两个节点添加之前创建的方法。以下是我添加方法和 cluster.conf 的方法。

4.下一步,您必须将为两个节点创建的栅栏方法添加到我们创建的栅栏设备中,即“howtoingfence”。

ccs -h 172.16.1.250 --addfenceinst tecmintfence 172.16.1.222 Method01
ccs -h 172.16.1.250 --addfenceinst tecmintfence 172.16.1.223 Method01

我已成功将我的方法与栅栏设备关联起来,这就是我的 cluster.conf 现在的样子。

现在您已经成功配置了 fence 设备、方法并向其中添加了节点。作为第 03 部分的最后一步,我现在将向您展示如何向设置添加故障转移。

步骤 3:向集群服务器添加故障转移

5. 我使用以下命令语法来创建到集群设置的故障转移。

ccs -h 172.16.1.250 --addfailoverdomain tecmintfod ordered

6. 由于您已经创建了故障转移域,现在您可以向其中添加两个节点。

ccs -h 172.16.1.250 --addfailoverdomainnode tecmintfod 172.16.1.222 1
ccs -h 172.16.1.250 --addfailoverdomainnode tecmintfod 172.16.1.223 2

如上所示,您可以看到 cluster.conf 包含我为故障转移域添加的所有配置。

希望您喜欢本系列的第 3 部分。集群指南系列的最后一部分即将发布,它将教您向集群添加资源、同步资源并启动集群。与 HowTos 保持联系以获取方便的 HowTos。