저는 wmware 워크스테이션 OpenVZ 2.6.32-042stab108.2
을 사용하여 CentOS 6.6
. /dev/sda4
나는 또한 그것에 파일 시스템을 만들었습니다. 두 번째 머신은 실제로 호스트 이름과 eth0 IP 주소가 변경된 첫 번째 머신의 가상 디스크를 사용하여 생성됩니다. drbd의 구성 파일은 다음과 같습니다.
global { usage-count no; }
common { syncer { rate 100M; } }
resource r0 {
protocol C;
startup {
wfc-timeout 15;
degr-wfc-timeout 60;
}
net {
cram-hmac-alg sha1;
shared-secret "password";
}
on primary {
device /dev/drbd0;
disk /dev/sda4;
address 192.168.18.10:7788;
meta-disk internal;
}
on secondary {
device /dev/drbd0;
disk /dev/sda4;
address 192.168.18.20:7788;
meta-disk internal;
}
}
리소스를 생성한 후drbdadm 생성 -md r0, 내가 들어갈 때drbd 서비스가 시작됩니다,나는 얻다:
Failure: (127) Device minor not allocated.
산출drbdadm 모든 덤프도움이 될 수 있습니다:
[root@primary ~]# drbdadm dump all
# /etc/drbd.conf
# resource r0 on primary: not ignored, not stacked
resource r0 {
protocol C;
on primary {
device /dev/drbd0 minor 0;
disk /dev/sda4;
address ipv4 192.168.18.10:7788;
meta-disk internal;
}
on secondary {
device /dev/drbd0 minor 0;
disk /dev/sda4;
address ipv4 192.168.18.20:7788;
meta-disk internal;
}
net {
cram-hmac-alg sha1;
shared-secret danuts;
}
startup {
wfc-timeout 15;
degr-wfc-timeout 60;
}
}
이 오류의 원인은 무엇이며 이를 완화하는 방법은 무엇입니까? 감사해요!
답변1
방금 동일한 오류가 발생하여 두 번째 노드의 IP 주소에 액세스할 수 없는 것 같습니다. 먼저 서비스 상태를 확인했습니다.
systemctl status drbd.service
â drbd.service - DRBD -- please disable. Unless you are NOT using a cluster manager.
Loaded: loaded (/usr/lib/systemd/system/drbd.service; disabled; vendor preset: disabled)
Active: failed (Result: exit-code) since mar. 2018-04-10 16:21:49 CEST; 5s ago
Process: 3347 ExecStart=/lib/drbd/drbd start (code=exited, status=20)
Main PID: 3347 (code=exited, status=20)
avril 10 16:21:49 GROESSLTCL0B systemd[1]: Starting DRBD -- please disable. Unless you are NOT using a cluster manager....
avril 10 16:21:49 GROESSLTCL0B drbd[3347]: Starting DRBD resources: drbd.d/r0.res:20: in resource r0, on GROESSLTCL0B:
avril 10 16:21:49 GROESSLTCL0B drbd[3347]: IP 192.168.254.2 not found on this host.
avril 10 16:21:49 GROESSLTCL0B systemd[1]: drbd.service: main process exited, code=exited, status=20/n/a
avril 10 16:21:49 GROESSLTCL0B systemd[1]: Failed to start DRBD -- please disable. Unless you are NOT using a cluster manager..
avril 10 16:21:49 GROESSLTCL0B systemd[1]: Unit drbd.service entered failed state.
avril 10 16:21:49 GROESSLTCL0B systemd[1]: drbd.service failed.
그래서 r0.res에서 두 번째 노드의 IP를 수정했고 새 내용은 다음과 같습니다.
resource r0 {
protocol "C";
net {
allow-two-primaries;
after-sb-0pri discard-zero-changes;
after-sb-1pri discard-secondary;
after-sb-2pri disconnect;
}
on GROESSLTCL0A {
device /dev/drbd0;
disk /dev/sdb;
address 163.104.8.108:7789;
meta-disk internal;
}
on GROESSLTCL0B {
device /dev/drbd0;
disk /dev/sdb;
address 163.104.8.107:7789;
meta-disk internal;
}
}
그런 다음 리소스를 다시 만들었습니다.
drbdadm create-md r0
그 후 drbd 서비스를 다시 시작했고 모든 것이 예상대로 작동했습니다.