Do not add the node to the cluster DRBD (PVE-4.3)

kolombo

New Member
Feb 18, 2013
8
0
1
.ru
Good time of day.
There is a cluster consisting of three nodes (pve1, pve3, pve4). PVE-4.2 was installed. And it was made common space DRBD. There is a need to add new node (pve2). On adding a node, I set PVE-4.3, then turn updated the existing three-node (pve1, pve3, pve4) and then added a new node (pve2) to the cluster. When you try to add a section DRBD get the error.

on the first node, I do
Code:
root@pve1:~# drbdmanage add-node -q pve2 172.20.1.2
WARNING:root:Could not read configuration file '/etc/drbdmanaged.cfg'
Operation completed successfully
Operation completed successfully

Executing join command using ssh.
IMPORTANT: The output you see comes from pve2
IMPORTANT: Your input is executed on pve2
WARNING:root:Could not read configuration file '/etc/drbdmanaged.cfg'
Error: Operation not allowed on satellite node

Code:
root@pve1:~# drbdmanage list-nodes
WARNING:root:Could not read configuration file '/etc/drbdmanaged.cfg'
+------------------------------------------------------------------------------------------------------------+
| Name | Pool Size | Pool Free |                                   |                               State |
|------------------------------------------------------------------------------------------------------------|
| pve1 |     65536 |     65234 |                                   |                                  ok |
| pve2 |   unknown |   unknown |                                   | pending actions: adjust connections |
| pve3 |     65536 |     65234 |                                   |                                  ok |
| pve4 |     65536 |     65234 |                                   |                                  ok |
+------------------------------------------------------------------------------------------------------------+

Since I have all written
Code:
post-up drbdadm adjust all
on all nodes in /etc/network/interfaces, I picked up one by one and restart all nodes. The output after the restart
Code:
root@pve1:~# drbdmanage list-nodes
WARNING:root:Could not read configuration file '/etc/drbdmanaged.cfg'
+------------------------------------------------------------------------------------------------------------+
| Name | Pool Size | Pool Free |                          |                                        State |
|------------------------------------------------------------------------------------------------------------|
| pve1 |     65536 |     65234 |                          |                                           ok |
| pve2 |   unknown |   unknown |                          | OFFLINE, pending actions: adjust connections |
| pve3 |     65536 |     65234 |                          |                                           ok |
| pve4 |     65536 |     65234 |                          |                                           ok |
+------------------------------------------------------------------------------------------------------------+

Tell me where and what went wrong and how to fix it?
 
Code:
root@pve1:~# pvecm status
Quorum information
------------------
Date:             Thu Sep 29 09:28:52 2016
Quorum provider:  corosync_votequorum
Nodes:            4
Node ID:          0x00000001
Ring ID:          1/248
Quorate:          Yes

Votequorum information
----------------------
Expected votes:   4
Highest expected: 4
Total votes:      4
Quorum:           3 
Flags:            Quorate

Membership information
----------------------
    Nodeid      Votes Name
0x00000001          1 172.20.1.1 (local)
0x00000004          1 172.20.1.2
0x00000002          1 172.20.1.3
0x00000003          1 172.20.1.4

If I understand correctly, the section "Votequorum information" should be displayed "Quorum: 4" ?
 
no - that just says that for 4 nodes with 1 vote each, a minimum of 3 votes means you have a quorum. also, the PVE/corosync cluster is not related to the drbd cluster/synchronization. my guess is, something went wrong when adding node pve2, and you should probably remove that one from the drbd cluster, drbdmanage uninit it, and then try to add it again.
 
I did:
deleted node of DRBD
Code:
root@pve1:~# drbdmanage delete-node -q pve2

I removed the node from the cluster
Code:
root@pve1:~# pvecm delnode pve2
Killing node 4

He added the node to the cluster
Code:
root@pve2:~# pvecm add 172.20.1.1 -ring0_addr pve2cl -force
copy corosync auth key
stopping pve-cluster service
backup old database
waiting for quorum...OK
generating node certificates
merge known_hosts file
restart services
successfully added node 'pve2' to cluster.

Update certs
Code:
root@pve2:~# pvecm updatecerts

I add a node in the DRBD
Code:
root@pve1:~# drbdmanage add-node -q pve2 172.20.1.2
WARNING:root:Could not read configuration file '/etc/drbdmanaged.cfg'
Operation completed successfully
Operation completed successfully

Executing join command using ssh.
IMPORTANT: The output you see comes from pve2
IMPORTANT: Your input is executed on pve2
WARNING:root:Could not read configuration file '/etc/drbdmanaged.cfg'
Error: Operation not allowed on satellite node

and nothing has changed:
Code:
root@pve1:~# drbdmanage list-nodes
WARNING:root:Could not read configuration file '/etc/drbdmanaged.cfg'
+------------------------------------------------------------------------------------------------------------+
| Name | Pool Size | Pool Free |                                   |                               State |
|------------------------------------------------------------------------------------------------------------|
| pve1 |     65536 |     65234 |                                   |                                  ok |
| pve2 |   unknown |   unknown |                                   | pending actions: adjust connections |
| pve3 |     65536 |     65234 |                                   |                                  ok |
| pve4 |     65536 |     65234 |                                   |                                  ok |
+------------------------------------------------------------------------------------------------------------+
:(
 
you did not uninit the node after removing (in order to completely reset the DRBD config on that node).
 
"drbdmanage uninit" on pve2 should do the trick (note: if you already have production data on that drbd cluster, back it up before playing around with it like this!)
 
"drbdmanage uninit" on pve2

To no avail.

On pve1:
Code:
root@pve1:~# drbdmanage list-nodes
WARNING:root:Could not read configuration file '/etc/drbdmanaged.cfg'
+------------------------------------------------------------------------------------------------------------+
| Name | Pool Size | Pool Free |                                   |                               State |
|------------------------------------------------------------------------------------------------------------|
| pve1 |     65536 |     65234 |                                   |                                  ok |
| pve2 |   unknown |   unknown |                                   | pending actions: adjust connections |
| pve3 |     65536 |     65234 |                                   |                                  ok |
| pve4 |     65536 |     65234 |                                   |                                  ok |
+------------------------------------------------------------------------------------------------------------+

On pve2:
Code:
root@pve2:~# drbdmanage uninit
WARNING:root:Could not read configuration file '/etc/drbdmanaged.cfg'

You are going to remove the drbdmanage server from this node.
CAUTION! Note that:
  * All temporary configuration files for resources managed by drbdmanage
    will be removed
  * Any remaining resources managed by this drbdmanage installation
    that still exist on this system will no longer be managed by drbdmanage

Confirm:

  yes/no: yes
root@pve2:~#
root@pve2:~# drbdadm status
# No currently configured DRBD found.
root@pve2:~#
root@pve2:~# drbdmanage list-nodes
WARNING:root:Could not read configuration file '/etc/drbdmanaged.cfg'

On pve1:
Code:
root@pve1:~# drbdmanage list-nodes
WARNING:root:Could not read configuration file '/etc/drbdmanaged.cfg'
+------------------------------------------------------------------------------------------------------------+
| Name | Pool Size | Pool Free |                          |                                        State |
|------------------------------------------------------------------------------------------------------------|
| pve1 |     65536 |     65234 |                          |                                           ok |
| pve2 |   unknown |   unknown |                          | OFFLINE, pending actions: adjust connections |
| pve3 |     65536 |     65234 |                          |                                           ok |
| pve4 |     65536 |     65234 |                          |                                           ok |
+------------------------------------------------------------------------------------------------------------+

On pve1
Code:
root@pve1:~# drbdmanage delete-node -q pve2
WARNING:root:Could not read configuration file '/etc/drbdmanaged.cfg'
Operation completed successfully
Code:
root@pve1:~# drbdmanage add-node -q pve2 172.20.1.2
WARNING:root:Could not read configuration file '/etc/drbdmanaged.cfg'
Operation completed successfully
Operation completed successfully

Executing join command using ssh.
IMPORTANT: The output you see comes from pve2
IMPORTANT: Your input is executed on pve2
WARNING:root:Could not read configuration file '/etc/drbdmanaged.cfg'
Error: Operation not allowed on satellite node


But that was not the case!
For some reason it was not on pve2 /etc/drbd.d/drbdctrl.res file!


I copied it from the node pve1
Code:
root@pve1:~# scp /etc/drbd.d/drbdctrl.res 172.20.1.2:/etc/drbd.d

removed node
Code:
root@pve1:~# drbdmanage delete-node -q pve2
WARNING:root:Could not read configuration file '/etc/drbdmanaged.cfg'
Operation completed successfully

added node
Code:
root@pve1:~# drbdmanage add-node -q pve2 172.20.1.2
WARNING:root:Could not read configuration file '/etc/drbdmanaged.cfg'
Operation completed successfully
Operation completed successfully

Executing join command using ssh.
IMPORTANT: The output you see comes from pve2
IMPORTANT: Your input is executed on pve2
WARNING:root:Could not read configuration file '/etc/drbdmanaged.cfg'
Operation completed successfully

and
Code:
root@pve1:~# drbdmanage list-nodes
WARNING:root:Could not read configuration file '/etc/drbdmanaged.cfg'
+------------------------------------------------------------------------------------------------------------+
| Name | Pool Size | Pool Free |                                                                 | State |
|------------------------------------------------------------------------------------------------------------|
| pve1 |     65536 |     65234 |                                                                 |    ok |
| pve2 |     65536 |     65536 |                                                                 |    ok |
| pve3 |     65536 |     65234 |                                                                 |    ok |
| pve4 |     65536 |     65234 |                                                                 |    ok |
+------------------------------------------------------------------------------------------------------------+

But I am embarrassed that all node "Pool Free" = 65234, while pve2 - 65536.

In all four nodes were created sections:
Code:
lvcreate -L 64G -n drbdthinpool -T drbdpool

Can we assume that the problem is resolved, I do not know yet. I checked again.
 
But that was not the case!
For some reason it was not on pve2 /etc/drbd.d/drbdctrl.res file!


I copied it from the node pve1

Unfortunately I'm experiencing the same issue. I've tryed to reconfigure DRBD9 for uncountably many times and also copied this file, but as soon as I do that, and after that I add the second node, the res file gets cleared on the second server! Of course after that I always get this infamous "
Error: Operation not allowed on satellite node". I am offering 30 euros to whoever comes up with a solution to always avoid this problem, because sometimes I can add the second node and sometimes I get this error. It feels totally random.
 
Hi, I tried a fresh Proxmox Setup with DRBD9 on two servers and running in the same problem:
As I try to add the second node with drbdmange:

Code:
root@tehhrxpmx4:~# drbdmanage init -q 172.16.5.4
WARNING:root:Could not read configuration file '/etc/drbdmanaged.cfg'
Empty drbdmanage control volume initialized on '/dev/drbd0'.
Empty drbdmanage control volume initialized on '/dev/drbd1'.
Operation completed successfully

root@tehhrxpmx4:~# drbdmanage add-node -q tehhrxpmx5 172.16.5.5
WARNING:root:Could not read configuration file '/etc/drbdmanaged.cfg'
Operation completed successfully
Operation completed successfully

Executing join command using ssh.
IMPORTANT: The output you see comes from tehhrxpmx5
IMPORTANT: Your input is executed on tehhrxpmx5
WARNING:root:Could not read configuration file '/etc/drbdmanaged.cfg'
Error: Operation not allowed on satellite node

Code:
root@tehhrxpmx4:~# drbdmanage list-nodes
WARNING:root:Could not read configuration file '/etc/drbdmanaged.cfg'
+------------------------------------------------------------------------------------------------------------+
| Name       | Pool Size | Pool Free |                                 |                               State |
|------------------------------------------------------------------------------------------------------------|
| tehhrxpmx4 |   1047552 |   1047552 |                                 |                                  ok |
| tehhrxpmx5 |   unknown |   unknown |                                 | pending actions: adjust connections |
+------------------------------------------------------------------------------------------------------------+

On the second node I see, that /etc/drbd.d/drbdctrl.res is missing.

I tried to remove the node and did the add-node several times. Allways the same problem :)

Please can anybody help?
 
Please can anybody help?

A solution that I found should be working is to execute:

1) drbdmanage init -q 172.16.5.4 (on master server)
2) drbdmanage init (on the other server) --> this is key
3) drbdmanage add-node -q tehhrxpmx5 172.16.5.5 (on master server)

Please let us know if it works.
 
Last edited:

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!