DRBD - 'node1' 未在您的配置中定义(对于该主机) - 设置 Primary 时出错

DRBD - 'node1' 未在您的配置中定义(对于该主机) - 设置 Primary 时出错

尝试设置 DRBD 的主节点时出现以下错误。

'node1' not defined in your config (for this host).

我知道这与 DNS/主机名/主机和配置 clusterdb.res 有关。我知道这一点是因为如果 node1 未正确解析,我最初在尝试启动 clusterdb.res 时收到错误。所以让我困惑的是,如果使用以下任一方法,我可以启动 clusterdb.res:

我在主机上使用过这个命令

hostnamectl set-hostname $(uname -n | sed s/\\..*//)

使主机名解析为node1而不是node1.localdomain

或者将 node1.localdomain 添加到配置中,都可以。但我已经尝试了所有组合,但似乎无法执行此命令:

drbdadm primary --force node1 && cat /proc/drbd

我的配置

/etc/drbd.d/clusterdb.res

resource clusterdb{
    protocol C;
    meta-disk internal;
    device /dev/drbd0;

startup {
    wfc-timeout 30;
    outdated-wfc-timeout 20;
    degr-wfc-timeout 30;
}

net {
    cram-hmac-alg sha1;
    shared-secret sync_disk;
}


syncer {
    rate 10M;
    al-extents 257;
    on-no-data-accessible io-error;
    verify-alg sha1;
}
on node1 {
    disk /dev/sda3;
    address 192.168.1.216:7788;
}
on node2 {
    disk /dev/sda3;
    address 192.168.1.217:7788;
}
}

/etc/主机:

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.1.216 node1
192.168.1.217 node2

/etc/主机名

node#

我完整的 ATM 记录(正在制作)

编辑:

 [root@node1 ~]# hostname
 node1
 [root@node1 ~]# cat /etc/hosts
 127.0.0.1   localhost localhost.localdomain localhost4      localhost4.localdomain4
 ::1         localhost localhost.localdomain localhost6      localhost6.localdomain6
 127.0.1.1     node1
 192.168.1.216 node1
 192.168.1.217 node2
 [root@node1 ~]#

更新:我已经让它与 LVM 一起使用,如下本指南确切地说,所以我认为我的问题实际上在于以下代码行。但现在我想我会坚持使用 LVM,因为它有效,除非其他人真的想从事这个工作。(我的工作 LVM 文章)

device /dev/drbd0;

或者

 device /dev/drbd0; 

我这么说的原因是,我使用了相同的主机/主机名/短名称/ip_addr,但 LVM 并且它有效,但也许我第一次错过了一些东西,我在新的 VM 模板中修复了(我从头开始构建 LVM)

答案1

您没有drbdadm正确使用该命令。它需要资源名称,您可以在其中为其指定节点名称。

试试这个(来自node1):

drbdadm up clusterdb
drbdadm primary --force clusterdb

附带说明一下,DRBD 希望其配置中的主机名与uname -n.

相关内容