[DRBD-user] Create a third diskless node on an active 2-node cluster

Ferran Alchimia ferran.alchimia at gmail.com
Wed Mar 3 12:28:57 CET 2021


Hi,

I currently have a 2 node (combined) cluster and I want to add an HA
linstor-controller. I was following this guide
https://www.linbit.com/drbd-user-guide/linstor-guide-1_0-en/#s-linstor_ha

The first step asks for an AutoQuorum capable resource. So I think I have
to add a third node to my cluster. This is my starting position:

╭─────────────────────────────────────────────────────╮
┊ Node  ┊ NodeType ┊ Addresses               ┊ State  ┊
╞═════════════════════════════════════════════════════╡
┊ H     ┊ COMBINED ┊ 10.0.7.106:3366 (PLAIN) ┊ Online ┊
┊ T     ┊ COMBINED ┊ 10.0.7.105:3366 (PLAIN) ┊ Online ┊
╰─────────────────────────────────────────────────────╯
╭──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
┊ StoragePool          ┊ Node       ┊ Driver   ┊ PoolName        ┊
FreeCapacity ┊ TotalCapacity ┊ CanSnapshots ┊ State ┊
╞══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╡
┊ DfltDisklessStorPool ┊ H          ┊ DISKLESS ┊                 ┊
    ┊               ┊ False        ┊ Ok    ┊
┊ DfltDisklessStorPool ┊ T          ┊ DISKLESS ┊                 ┊
    ┊               ┊ False        ┊ Ok    ┊
┊ drbdpool             ┊ H          ┊ LVM_THIN ┊ vgthc1/drbdpool ┊     3.13
TiB ┊      3.49 TiB ┊ True         ┊ Ok    ┊
┊ drbdpool             ┊ T          ┊ LVM_THIN ┊ vgthc1/drbdpool ┊     3.13
TiB ┊      3.49 TiB ┊ True         ┊ Ok    ┊
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

Since my third node won't have any storage devices dedicated to drbd I
presumed that I could add a DISKLESS node (I don't know if this is true),
just for quorum and not for replica.

linstor n create --node-type satellite C 10.100.1.3

linstor n l
╭───────────────────────────────────────────────────────────╮
┊ Node       ┊ NodeType  ┊ Addresses               ┊ State  ┊
╞═══════════════════════════════════════════════════════════╡
┊ C          ┊ SATELLITE ┊ 10.100.1.3:3366 (PLAIN) ┊ Online ┊
┊ H          ┊ COMBINED  ┊ 10.0.7.106:3366 (PLAIN) ┊ Online ┊
┊ T          ┊ COMBINED  ┊ 10.0.7.105:3366 (PLAIN) ┊ Online ┊
╰───────────────────────────────────────────────────────────╯
linstor sp create diskless C drbdpool

╭──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
┊ StoragePool          ┊ Node       ┊ Driver   ┊ PoolName        ┊
FreeCapacity ┊ TotalCapacity ┊ CanSnapshots ┊ State ┊
╞══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╡
┊ DfltDisklessStorPool ┊ C          ┊ DISKLESS ┊                 ┊
    ┊               ┊ False        ┊ Ok    ┊
┊ DfltDisklessStorPool ┊ H          ┊ DISKLESS ┊                 ┊
    ┊               ┊ False        ┊ Ok    ┊
┊ DfltDisklessStorPool ┊ T          ┊ DISKLESS ┊                 ┊
    ┊               ┊ False        ┊ Ok    ┊
┊ drbdpool             ┊ C          ┊ DISKLESS ┊                 ┊
    ┊               ┊ False        ┊ Ok    ┊
┊ drbdpool             ┊ H          ┊ LVM_THIN ┊ vgthc1/drbdpool ┊     3.13
TiB ┊      3.49 TiB ┊ True         ┊ Ok    ┊
┊ drbdpool             ┊ T          ┊ LVM_THIN ┊ vgthc1/drbdpool ┊     3.13
TiB ┊      3.49 TiB ┊ True         ┊ Ok    ┊
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

I add the --diskless-on-remaining flag for the rg definition (I don't know
if this is needed)
linstor rg m drbdpoolvm --place-count 2 --diskless-on-remaining

linstor rg l
╭──────────────────────────────────────────────────────────────────╮
┊ ResourceGroup ┊ SelectFilter              ┊ VlmNrs ┊ Description ┊
╞══════════════════════════════════════════════════════════════════╡
┊ DfltRscGrp    ┊ PlaceCount: 2             ┊        ┊             ┊
╞┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄╡
┊ drbdpoolvm    ┊ PlaceCount: 2             ┊ 0      ┊             ┊
┊               ┊ StoragePool(s): drbdpool  ┊        ┊             ┊
┊               ┊ DisklessOnRemaining: True ┊        ┊             ┊
╰──────────────────────────────────────────────────────────────────╯

And then I try to create a test resource
linstor resource create T test
SUCCESS:(...)

linstor resource create H test
WARNING:    Could not find suitable node to automatically create a tie
breaking resource for 'test'.
SUCCESS:(...)

linstor resource create C test
ERROR:Description:    Satellite 'C' does not support the following layers:
[DRBD]Details:    Node(s): 'C', Resource: 'test'Show reports:    linstor
error-reports show 603F507D-00000-000005

As you can see the resource creation fails on C node. I have installed drbd
on that node just in case, here goes the output:
drbdadm --version
DRBDADM_BUILDTAG=GIT-hash:\ a7820b3c14497a34f955ba5ce56cf1bc9d2d353e\
build\ by\ @buildsystem\,\ 2021-02-09\ 09:27:27
DRBDADM_API_VERSION=1
DRBD_KERNEL_VERSION_CODE=0x08040b
DRBDADM_VERSION_CODE=0x091000
DRBDADM_VERSION=9.16.0

Overall my C node does not have any "storage" for the drbd cluster, I just
want it to be a diskless node in order to achieve HA for the resources. It
seems I have misunderstood something but I just don't know where to look
for more info. Any hints/help would be appreciated.

Regards,
Ferran
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.linbit.com/pipermail/drbd-user/attachments/20210303/b63fb316/attachment-0001.htm>


More information about the drbd-user mailing list