9311089520
This package is 3rdparty. Get latest release which is 0.5.2. Not much difference between 0.3.1 release used on CentOS and 0.5.2. Did build puppet-drbd-0.5.2 + starlingx patches (adapted from CentOS7). Adapted all patches. Adapt patch 0001. Keep 0002->0010. Did build an iso. Story: 2009101 Task: 43379 Signed-off-by: Dan Voiculeasa <dan.voiculeasa@windriver.com> Change-Id: Ifa748c2ba7ca0cddb7d829c88e852247929f549e
54 lines
2.1 KiB
Diff
54 lines
2.1 KiB
Diff
From 132fc324c633ee95ca9ac8d00fb27fe5c4df6a3a Mon Sep 17 00:00:00 2001
|
|
From: Daniel Badea <daniel.badea@windriver.com>
|
|
Date: Tue, 30 May 2017 21:52:52 +0000
|
|
Subject: [PATCH] US-96914 reuse existing drbd-cinder resource
|
|
|
|
Trying to initialize and enable DRBD resource fails in "drbdadm
|
|
create-md" when the disk already contains meta data. In this case
|
|
"drbdadm adjust" should be called.
|
|
---
|
|
manifests/resource/up.pp | 13 ++++++++++++-
|
|
1 file changed, 12 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/manifests/resource/up.pp b/manifests/resource/up.pp
|
|
index f9de8ab..160c8c2 100644
|
|
--- a/manifests/resource/up.pp
|
|
+++ b/manifests/resource/up.pp
|
|
@@ -14,7 +14,7 @@ define drbd::resource::up (
|
|
exec { "initialize DRBD metadata for ${name}":
|
|
command => "yes yes | drbdadm create-md ${name}",
|
|
onlyif => "test -e ${disk}",
|
|
- unless => "drbdadm dump-md ${name} || (drbdadm cstate ${name} | egrep -q '^(Sync|Connected|WFConnection|StandAlone|Verify)')",
|
|
+ unless => "drbdadm dump-md ${name} || (drbdadm cstate ${name} | egrep -q '^(Sync|Connected|WFConnection|StandAlone|Verify)') || (drbdadm show-gi ${name} | grep 'meta-data: need apply-al')",
|
|
before => Service['drbd'],
|
|
require => [
|
|
Exec['modprobe drbd'],
|
|
@@ -26,6 +26,7 @@ define drbd::resource::up (
|
|
exec { "enable DRBD resource ${name}":
|
|
command => "drbdadm up ${name}",
|
|
onlyif => "drbdadm dstate ${name} | egrep -q '^(Diskless/|Unconfigured|Consistent)'",
|
|
+ unless => "drbdadm show-gi ${name} | grep 'meta-data: need apply-al'",
|
|
before => Service['drbd'],
|
|
require => [
|
|
Exec["initialize DRBD metadata for ${name}"],
|
|
@@ -34,6 +35,16 @@ define drbd::resource::up (
|
|
notify => Service['drbd'],
|
|
}
|
|
|
|
+ exec { "reuse existing DRBD resoure ${name}":
|
|
+ command => "drbdadm adjust ${name}",
|
|
+ onlyif => "test -e ${disk} && (drbdadm show-gi ${name} | grep 'meta-data: need apply-al')",
|
|
+ before => Service['drbd'],
|
|
+ require => [
|
|
+ Exec['modprobe drbd'],
|
|
+ Concat["/etc/drbd.d/${name}.res"],
|
|
+ ],
|
|
+ notify => Service['drbd'],
|
|
+ }
|
|
|
|
# these resources should only be applied if we are configuring the
|
|
# primary node in our HA setup
|
|
--
|
|
1.8.3.1
|
|
|