When node is evicted with cluster of 3 nodes, after restoring node can't add TieBreaker
New resource is marked as Diskless on restored node. I can convert it to Replica, but there is no way to toggle TieBreaker state on diskless node.
Is this possibly bug or am I missing something?
Possibly related to #361
Hello,
This might be a bit unintuitive, but if you want to convert a diskless resource as a tiebreaker, make sure the resource-definition allows for a tiebreaker (check its properties, if nothing prohibits it, it should be fine), and "delete" the diskless resource. LINSTOR will takeover the diskless resource as a tiebreaker.
@ghernadi Thanks! Yeah, that was kinda unintuitive 😅 But worked fine! :)
Basically just did: r d <node> <resource>
Controller responded with "The given resource will not be deleted but will be taken over as a linstor managed tiebreaker resource."
But I definitely think there should be command to modify diskless resource.
Here is commands I used In case someone bumps into this:
LINSTOR ==> v l
╭──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
┊ Node ┊ Resource ┊ StoragePool ┊ VolNr ┊ MinorNr ┊ DeviceName ┊ Allocated ┊ InUse ┊ State ┊
╞══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╡
┊ akiha ┊ data ┊ pool ┊ 0 ┊ 1000 ┊ /dev/drbd1000 ┊ 1.00 GiB ┊ Unused ┊ UpToDate ┊
┊ ciel ┊ data ┊ pool ┊ 0 ┊ 1000 ┊ /dev/drbd1000 ┊ 1.00 GiB ┊ InUse ┊ UpToDate ┊
┊ mash ┊ data ┊ DfltDisklessStorPool ┊ 0 ┊ 1000 ┊ /dev/drbd1000 ┊ ┊ Unused ┊ Diskless ┊
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
LINSTOR ==> r l
╭────────────────────────────────────────────────────────────────────────────────────────╮
┊ ResourceName ┊ Node ┊ Port ┊ Usage ┊ Conns ┊ State ┊ CreatedOn ┊
╞════════════════════════════════════════════════════════════════════════════════════════╡
┊ data ┊ akiha ┊ 7000 ┊ Unused ┊ Ok ┊ UpToDate ┊ 2024-01-12 04:10:00 ┊
┊ data ┊ ciel ┊ 7000 ┊ InUse ┊ Ok ┊ UpToDate ┊ 2024-01-12 04:10:00 ┊
┊ data ┊ mash ┊ 7000 ┊ Unused ┊ Ok ┊ Diskless ┊ 2024-01-12 04:10:00 ┊
╰────────────────────────────────────────────────────────────────────────────────────────╯
LINSTOR ==> rd list-properties data
╭──────────────────────────────────────────────────────╮
┊ Key ┊ Value ┊
╞══════════════════════════════════════════════════════╡
┊ Aux/is-linstor-docker-volume ┊ true ┊
┊ DrbdOptions/Resource/on-no-quorum ┊ io-error ┊
┊ DrbdOptions/Resource/quorum ┊ majority ┊
┊ DrbdOptions/auto-verify-alg ┊ crct10dif-pclmul ┊
┊ DrbdPrimarySetOn ┊ AKIHA ┊
┊ FileSystem/MkfsParams ┊ ┊
┊ FileSystem/Type ┊ xfs ┊
╰──────────────────────────────────────────────────────╯
LINSTOR ==> r d mash data
INFO:
The given resource will not be deleted but will be taken over as a linstor managed tiebreaker resource.
SUCCESS:
Resource 'data' updated on node 'mash'
SUCCESS:
Resource 'data' updated on node 'ciel'
SUCCESS:
Resource 'data' updated on node 'akiha'
LINSTOR ==> r l
╭──────────────────────────────────────────────────────────────────────────────────────────╮
┊ ResourceName ┊ Node ┊ Port ┊ Usage ┊ Conns ┊ State ┊ CreatedOn ┊
╞══════════════════════════════════════════════════════════════════════════════════════════╡
┊ data ┊ akiha ┊ 7000 ┊ Unused ┊ Ok ┊ UpToDate ┊ 2024-01-12 04:10:00 ┊
┊ data ┊ ciel ┊ 7000 ┊ InUse ┊ Ok ┊ UpToDate ┊ 2024-01-12 04:10:00 ┊
┊ data ┊ mash ┊ 7000 ┊ Unused ┊ Ok ┊ TieBreaker ┊ 2024-01-12 04:10:00 ┊
╰──────────────────────────────────────────────────────────────────────────────────────────╯
LINSTOR ==> v l
╭────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
┊ Node ┊ Resource ┊ StoragePool ┊ VolNr ┊ MinorNr ┊ DeviceName ┊ Allocated ┊ InUse ┊ State ┊
╞════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╡
┊ akiha ┊ data ┊ pool ┊ 0 ┊ 1000 ┊ /dev/drbd1000 ┊ 1.00 GiB ┊ Unused ┊ UpToDate ┊
┊ ciel ┊ data ┊ pool ┊ 0 ┊ 1000 ┊ /dev/drbd1000 ┊ 1.00 GiB ┊ InUse ┊ UpToDate ┊
┊ mash ┊ data ┊ DfltDisklessStorPool ┊ 0 ┊ 1000 ┊ /dev/drbd1000 ┊ ┊ Unused ┊ TieBreaker ┊
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯