puppet-drbd: update for stx 5.0 73/8173/1
authorJackie Huang <jackie.huang@windriver.com>
Wed, 2 Jun 2021 08:06:29 +0000 (16:06 +0800)
committerJackie Huang <jackie.huang@windriver.com>
Fri, 6 May 2022 08:46:21 +0000 (16:46 +0800)
* inherit stx-metadata to help apply patches
  from stx 'integ' repo

* remove the local copy of stx patches

Issue-ID: INF-215

Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
Change-Id: I056261983a7241f3f32a258ff38b9bb9742cbb0d

meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0001-TIS-Patches.patch [deleted file]
meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0002-Disable-timeout-for-mkfs-command.patch [deleted file]
meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0003-drbd-parallel-to-serial-synchronization.patch [deleted file]
meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0004-US-96914-reuse-existing-drbd-cinder-resource.patch [deleted file]
meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0005-Add-PausedSync-states-to-acceptable-cstate.patch [deleted file]
meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0006-CGTS-7164-Add-resource-options-cpu-mask-to-affine-drbd-kernel-threads.patch [deleted file]
meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0007-Add-disk-by-path-test.patch [deleted file]
meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0008-CGTS-7953-support-for-new-drbd-resources.patch [deleted file]
meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0009-drbd-slow-before-swact.patch [deleted file]
meta-starlingx/meta-stx-cloud/recipes-support/puppet/puppet-drbd_git.bbappend

diff --git a/meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0001-TIS-Patches.patch b/meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0001-TIS-Patches.patch
deleted file mode 100644 (file)
index a27d0f3..0000000
+++ /dev/null
@@ -1,377 +0,0 @@
-From 95c0ec5cb26efbe2c5dbf45df21518d8d1776be0 Mon Sep 17 00:00:00 2001
-From: Don Penney <don.penney@windriver.com>
-Date: Wed, 4 Jan 2017 12:15:53 -0500
-Subject: [PATCH] TIS Patches
-
-This patch rolls up the previous TIS patches, which includes:
-1. CGTS-4787 Set DRBD service ensure parameter
-
-2. Updates to fix DRBD resync-rate and engineered parameters:
-
-There are several DRBD performance related parameters that must be set to
-get reasonable resync performance, otherwise default resync throughput
-is limited to 40MB/s.  Note that user community has noted this limit
-when they use default settings, or up-rev DRBD from 8.3, etc.  Eg. they
-realize they hit this limit despite having 10G link or better and faster
-disks.
-
-The following parameters were added to puppet-drbd module for resource
-file generation, in addition to: c-plan-ahead, c-fill-target, c-min-rate,
-c-max-rate, currently engineered for dynamic resync-rates.
-
-disk section:
-- 'resync-rate' (aka 'rate') was missed in the CentOS port from Kilo
-- 'al-extents' set to 3389, set to a prime number. Increasing this improves
-  random write throughput. Could set a bit higher, but would need a study.
-
-net section:
-- 'max-buffers' engineered to scale with supported MBps, setting too low
-  (eg., default setting) is a bottleneck on 10G link.  Set this to
-  maximum settable value of 20000.  Note this parm may be settable to
-  larger values in more current DRBD rev. If we need to support faster
-  disks, likely need to increase this proportionately.
-- 'max-epoch-size' also set to 20000. DRBD tuning recommendation page
-  sets this the same as max-buffers.
-- 'unplug-watermark' set to 16 based on DRBD tuning recommendations page
-- 'sndbuf-size' set to 0 to auto-tune; historically default was too small
-- 'rcvbuf-size' set to 0 to auto-tune
----
- manifests/init.pp                            | 11 ++--
- manifests/resource.pp                        | 93 +++++++++++++++++++++++++---
- manifests/resource/up.pp                     |  2 +-
- manifests/service.pp                         |  2 +-
- templates/header.res.erb                     | 53 ++++++++++++++--
- templates/primary-resource.res.erb           |  2 +-
- templates/primary-stacked-resource.res.erb   |  2 +-
- templates/resource.res.erb                   |  2 +-
- templates/secondary-resource.res.erb         |  2 +-
- templates/secondary-stacked-resource.res.erb |  2 +-
- 10 files changed, 148 insertions(+), 23 deletions(-)
-
-diff --git a/manifests/init.pp b/manifests/init.pp
-index 09f7d48..76ce9c9 100644
---- a/manifests/init.pp
-+++ b/manifests/init.pp
-@@ -6,7 +6,8 @@
- #
- class drbd(
-   $service_enable = true,
--  $package_name = 'drbd8-utils',
-+  $service_ensure = 'running',
-+  $package_name = 'drbd-utils',
- ) {
-   include ::drbd::service
-@@ -22,7 +23,7 @@ class drbd(
-   }
-   File {
--    mode    => '0644',
-+    mode    => '0640',
-     owner   => 'root',
-     group   => 'root',
-     require => Package['drbd'],
-@@ -45,8 +46,10 @@ class drbd(
-   # only allow files managed by puppet in this directory.
-   file { '/etc/drbd.d':
-     ensure  => directory,
--    mode    => '0644',
--    purge   => true,
-+    mode    => '0640',
-+    # Set purge to false so that it does not clear the dir
-+    # when the 2nd drbd resource is added.
-+    purge   => false,
-     recurse => true,
-     force   => true,
-     require => Package['drbd'],
-diff --git a/manifests/resource.pp b/manifests/resource.pp
-index af2ff77..10edc1a 100644
---- a/manifests/resource.pp
-+++ b/manifests/resource.pp
-@@ -22,6 +22,10 @@
- #  [ha_primary] If the resource is being applied on the primary host.
- #  [initial_setup] If this run is associated with the initial setup. Allows a user
- #    to only perform dangerous setup on the initial run.
-+#  [link_util] replication link network utilization percent
-+#  [link_speed] replication link network speed mbps
-+#  [num_parallel] number of parallel drbd filesystems to sync
-+#  [rtt_ms] round-trip-time milliseconds (i.e., ping between replication nodes)
- define drbd::resource (
-   $host1          = undef,
-   $host2          = undef,
-@@ -39,7 +43,10 @@ define drbd::resource (
-   $group          = 'root',
-   $protocol       = 'C',
-   $verify_alg     = 'crc32c',
--  $rate           = false,
-+  $link_util      = false,
-+  $link_speed     = false,
-+  $num_parallel   = false,
-+  $rtt_ms         = false,
-   $net_parameters = false,
-   $manage         = true,
-   $ha_primary     = false,
-@@ -47,6 +54,7 @@ define drbd::resource (
-   $fs_type        = 'ext4',
-   $mkfs_opts      = '',
-   $disk           = undef,
-+  $handlers       = false,
- ) {
-   include ::drbd
-@@ -67,6 +75,75 @@ define drbd::resource (
-     group  => $group,
-   }
-+  if $link_util and $link_speed and $num_parallel and $rtt_ms {
-+    # Engineer drbd variable sync rate parameters based on the following:
-+    #  https://blogs.linbit.com/p/128/drbd-sync-rate-controller/
-+    #  https://blogs.linbit.com/p/443/drbd-sync-rate-controller-2/
-+    # Methodology adapted to account for replication link speed and parallelism.
-+
-+    # Since there is no aggregate bandwidth control, prorate the drbd
-+    # replication bandwidth based on parallelism.
-+    # Based on experimentation, it seems generally better to set num_parallel
-+    # to 1 and let DRBD auto-regulate its throughput.  The end result is that
-+    # multiple competing filesystems (i.e., on same disk device) already have
-+    # their sync throughput reduced.
-+    $mbps = $link_speed / $num_parallel
-+
-+    # bandwidth delay product
-+    $bdp_k = $mbps * $rtt_ms
-+
-+    # engineer initial sync rate as percent of link bandwidth
-+    $rate_M = floor($link_util * $mbps / 8 / 100)
-+    $rate = "${rate_M}M"
-+
-+    # engineer c_plan_ahead to default value (tenths)
-+    # Documentation indicates this value OK even for 200 ms RTT.
-+    $c_plan_ahead = 20
-+
-+    # engineer c_fill_target as 1*BDP (tune within 1x to 3x BDP;
-+    # choose minimum value that saturates bandwidth)
-+    $fill_target_k = floor(1 * $bdp_k)
-+    $c_fill_target = "${fill_target_k}k"
-+
-+    # engineer c_min_rate -- experimentally determined so DRBD is not
-+    # throttled to a crawl even when there is minimal application IO.
-+    # DRBD default is way too small.
-+    $min_rate_M = 15 + floor($link_util * $mbps / 8 / 100 / 25)
-+    $c_min_rate = "${min_rate_M}M"
-+
-+    # engineer c_max_rate as percent of link bandwidth
-+    $max_rate_M = floor($link_util * $mbps / 8 / 100)
-+    $c_max_rate = "${max_rate_M}M"
-+
-+    # various tuning settings to enable larger link bandwidth (eg, 10G)
-+    # max_buffers should scale with MBps; set to maximum settable
-+    $max_buffers = 20000
-+    $max_epoch_size = 20000
-+    $unplug_watermark = 16
-+    # sndbuf_size and rcvbuf_size should scale with mbps; set 0 to auto-tune
-+    $sndbuf_size = 0
-+    $rcvbuf_size = 0
-+    # increase al_extents to improve random write throughput; set to prime number
-+    $al_extents = 3389
-+  } else {
-+    # disable variable sync rate
-+    $c_plan_ahead  = 0
-+    $c_fill_target = false
-+    $c_min_rate    = false
-+    $c_max_rate    = false
-+
-+    # engineer fixed sync rate at 40 percent of 1G
-+    $rate_M = floor(40 * 1000 / 8 / 100)
-+    $rate = "${rate_M}M"
-+
-+    $max_buffers = false
-+    $max_epoch_size = false
-+    $unplug_watermark = false
-+    $sndbuf_size = false
-+    $rcvbuf_size = false
-+    $al_extents = false
-+  }
-+
-   concat { "/etc/drbd.d/${name}.res":
-     mode    => '0600',
-     require => [
-@@ -94,13 +171,13 @@ define drbd::resource (
-   }
-   # Export our fragment for the clustered node
-   if $ha_primary and $cluster {
--    @@concat::fragment { "${name} ${cluster} primary resource":
-+    concat::fragment { "${name} ${cluster} primary resource":
-       target  => "/etc/drbd.d/${name}.res",
-       content => template('drbd/resource.res.erb'),
-       order   => '10',
-     }
-   } elsif $cluster {
--    @@concat::fragment { "${name} ${cluster} secondary resource":
-+    concat::fragment { "${name} ${cluster} secondary resource":
-       target  => "/etc/drbd.d/${name}.res",
-       content => template('drbd/resource.res.erb'),
-       order   => '20',
-@@ -137,11 +214,11 @@ define drbd::resource (
-     order   => '99',
-   }
--  if $cluster {
--    # Import cluster nodes
--    Concat::Fragment <<| title == "${name} ${cluster} primary resource" |>>
--    Concat::Fragment <<| title == "${name} ${cluster} secondary resource" |>>
--  }
-+#  if $cluster {
-+#    # Import cluster nodes
-+#    Concat::Fragment <<| title == "${name} ${cluster} primary resource" |>>
-+#    Concat::Fragment <<| title == "${name} ${cluster} secondary resource" |>>
-+#  }
-   # Due to a bug in puppet, defined() conditionals must be in a defined
-   # resource to be evaluated *after* the collector instead of before.
-diff --git a/manifests/resource/up.pp b/manifests/resource/up.pp
-index 7668792..b626f55 100644
---- a/manifests/resource/up.pp
-+++ b/manifests/resource/up.pp
-@@ -70,7 +70,7 @@ define drbd::resource::up (
-       # ensure that the device is mounted
-       mount { $mountpoint:
-         ensure  => mounted,
--        atboot  => false,
-+        atboot  => yes,
-         device  => $device,
-         fstype  => 'auto',
-         options => 'defaults,noauto',
-diff --git a/manifests/service.pp b/manifests/service.pp
-index de56b34..f9b217a 100644
---- a/manifests/service.pp
-+++ b/manifests/service.pp
-@@ -1,6 +1,6 @@
- class drbd::service {
-   @service { 'drbd':
--    ensure  => running,
-+    ensure  => $drbd::service_ensure,
-     enable  => $drbd::service_enable,
-     require => Package['drbd'],
-     restart => 'service drbd reload',
-diff --git a/templates/header.res.erb b/templates/header.res.erb
-index 2d785c4..a3256a3 100644
---- a/templates/header.res.erb
-+++ b/templates/header.res.erb
-@@ -5,7 +5,32 @@ resource <%= @name %> {
-   disk      <%= @disk %>;
-   meta-disk internal;
-+  disk {
-+<% if @rate -%>
-+    resync-rate <%= @rate %>;
-+<% end -%>
-+<% if @c_plan_ahead -%>
-+    c-plan-ahead <%= @c_plan_ahead %>;
-+<% end -%>
-+<% if @c_fill_target -%>
-+    c-fill-target <%= @c_fill_target %>;
-+<% end -%>
-+<% if @c_min_rate -%>
-+    c-min-rate <%= @c_min_rate %>;
-+<% end -%>
-+<% if @c_max_rate -%>
-+    c-max-rate <%= @c_max_rate %>;
-+<% end -%>
-+<% if @al_extents -%>
-+    al-extents <%= @al_extents %>;
-+<% end -%>
-+  }
-+
-   net {
-+    after-sb-0pri discard-zero-changes;
-+    after-sb-1pri discard-secondary;
-+    after-sb-2pri disconnect;
-+
-     cram-hmac-alg sha1;
- <% if @secret -%>
-     shared-secret "<%= @secret %>";
-@@ -16,12 +41,32 @@ resource <%= @name %> {
-     <%= k %> <%= v %>;
- <% end -%>
- <% end -%>
--  }
--  syncer {
-+<% if @max_buffers -%>
-+    max-buffers <%= @max_buffers %>;
-+<% end -%>
-+<% if @max_epoch_size -%>
-+    max-epoch-size <%= @max_epoch_size %>;
-+<% end -%>
-+<% if @unplug_watermark -%>
-+    unplug-watermark <%= @unplug_watermark %>;
-+<% end -%>
-+<% if @sndbuf_size -%>
-+    sndbuf-size <%= @sndbuf_size %>;
-+<% end -%>
-+<% if @rcvbuf_size -%>
-+    rcvbuf-size <%= @rcvbuf_size %>;
-+<% end -%>
-+<% if @verify_alg -%>
-     verify-alg <%= @verify_alg %>;
--<% if @rate -%>
--    rate <%= @rate %>;
- <% end -%>
-   }
-+<% if @handlers -%>
-+  handlers {
-+<% @handlers.sort_by {|k, v| k}.each do |k, v| -%>
-+    <%= k %> "<%= v %>";
-+<% end -%>
-+  }
-+<% end -%>
-+
-diff --git a/templates/primary-resource.res.erb b/templates/primary-resource.res.erb
-index f8af77e..6032fd2 100644
---- a/templates/primary-resource.res.erb
-+++ b/templates/primary-resource.res.erb
-@@ -1,3 +1,3 @@
-   on <%= @host1 %> {
--    address <%= @ip1 %>:<%= @port %>;
-+    address <%= IPAddr.new(@ip1).ipv6?() ? "ipv6 ["+@ip1+"]:"+@port : "ipv4 "+@ip1+":"+@port %>;
-   }
-diff --git a/templates/primary-stacked-resource.res.erb b/templates/primary-stacked-resource.res.erb
-index 7eb4dad..a22d8b3 100644
---- a/templates/primary-stacked-resource.res.erb
-+++ b/templates/primary-stacked-resource.res.erb
-@@ -1,3 +1,3 @@
-   stacked-on-top-of <%= @res1 %> {
--    address <%= @ip1 %>:<%= @port %>;
-+    address <%= IPAddr.new(ip1).ipv6?() ? "ipv6 ["+ip1+"]:"+port : "ipv4 "+ip1+":"+port %>;
-   }
-diff --git a/templates/resource.res.erb b/templates/resource.res.erb
-index 047877e..9dd4c4d 100644
---- a/templates/resource.res.erb
-+++ b/templates/resource.res.erb
-@@ -1,3 +1,3 @@
-   on <%= @hostname %> {
--    address <%= @ipaddress %>:<%= @port %>;
-+    address <%= IPAddr.new(ipaddress).ipv6?() ? "ipv6 ["+ipaddress+"]:"+@port : "ipv4 "+ipaddress+":"+port %>;
-   }
-diff --git a/templates/secondary-resource.res.erb b/templates/secondary-resource.res.erb
-index 678640a..cf2fd96 100644
---- a/templates/secondary-resource.res.erb
-+++ b/templates/secondary-resource.res.erb
-@@ -1,3 +1,3 @@
-   on <%= @host2 %> {
--    address <%= @ip2 %>:<%= @port %>;
-+    address <%= IPAddr.new(@ip2).ipv6?() ? "ipv6 ["+@ip2+"]:"+@port : "ipv4 "+@ip2+":"+@port %>;
-   }
-diff --git a/templates/secondary-stacked-resource.res.erb b/templates/secondary-stacked-resource.res.erb
-index 409a705..87d28f5 100644
---- a/templates/secondary-stacked-resource.res.erb
-+++ b/templates/secondary-stacked-resource.res.erb
-@@ -1,3 +1,3 @@
-   stacked-on-top-of <%= @res2 %> {
--    address <%= @ip2 %>:<%= @port %>;
-+    address <%= IPAddr.new(ip2).ipv6?() ? "ipv6 ["+ip2+"]:"+port : "ipv4 "+ip2+":"+port %>;
-   }
--- 
-1.8.3.1
-
diff --git a/meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0002-Disable-timeout-for-mkfs-command.patch b/meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0002-Disable-timeout-for-mkfs-command.patch
deleted file mode 100644 (file)
index e578dbe..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-From 0c36ecaef39328e85f41ebe8164dc7da5949542a Mon Sep 17 00:00:00 2001
-From: Don Penney <don.penney@windriver.com>
-Date: Tue, 11 Apr 2017 11:14:25 -0400
-Subject: [PATCH] Disable timeout for mkfs command
-
----
- manifests/resource/up.pp | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/manifests/resource/up.pp b/manifests/resource/up.pp
-index b626f55..f9de8ab 100644
---- a/manifests/resource/up.pp
-+++ b/manifests/resource/up.pp
-@@ -54,6 +54,7 @@ define drbd::resource::up (
-       }
-       exec { "drbd_format_volume_${name}":
-         command     => "mkfs.${fs_type} ${mkfs_opts} ${device}",
-+        timeout     => 0,
-         refreshonly => true,
-         require     => Exec["drbd_make_primary_${name}"],
-         before      => $before,
--- 
-1.8.3.1
-
diff --git a/meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0003-drbd-parallel-to-serial-synchronization.patch b/meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0003-drbd-parallel-to-serial-synchronization.patch
deleted file mode 100644 (file)
index 49ad45a..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-From a1186e3f68a338c575acdcf5cf41728a1b9ba2c1 Mon Sep 17 00:00:00 2001
-From: Angie Wang <angie.Wang@windriver.com>
-Date: Mon, 29 May 2017 10:20:13 -0400
-Subject: [PATCH 1/1] drbd-parallel-to-serial-synchronization
-
----
- manifests/resource.pp    | 1 +
- templates/header.res.erb | 3 +++
- 2 files changed, 4 insertions(+)
-
-diff --git a/manifests/resource.pp b/manifests/resource.pp
-index 10edc1a..d19ad8b 100644
---- a/manifests/resource.pp
-+++ b/manifests/resource.pp
-@@ -47,6 +47,7 @@ define drbd::resource (
-   $link_speed     = false,
-   $num_parallel   = false,
-   $rtt_ms         = false,
-+  $resync_after   = undef,
-   $net_parameters = false,
-   $manage         = true,
-   $ha_primary     = false,
-diff --git a/templates/header.res.erb b/templates/header.res.erb
-index a3256a3..be53761 100644
---- a/templates/header.res.erb
-+++ b/templates/header.res.erb
-@@ -9,6 +9,9 @@ resource <%= @name %> {
- <% if @rate -%>
-     resync-rate <%= @rate %>;
- <% end -%>
-+<% if @resync_after -%>
-+    resync-after <%= @resync_after %>;
-+<% end -%>
- <% if @c_plan_ahead -%>
-     c-plan-ahead <%= @c_plan_ahead %>;
- <% end -%>
--- 
-1.8.3.1
-
diff --git a/meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0004-US-96914-reuse-existing-drbd-cinder-resource.patch b/meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0004-US-96914-reuse-existing-drbd-cinder-resource.patch
deleted file mode 100644 (file)
index 017387d..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-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
-
diff --git a/meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0005-Add-PausedSync-states-to-acceptable-cstate.patch b/meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0005-Add-PausedSync-states-to-acceptable-cstate.patch
deleted file mode 100644 (file)
index 453d46a..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-From b575f4c50e8726c5f9b3227b37a4517c0bbde85c Mon Sep 17 00:00:00 2001
-From: Robert Church <robert.church@windriver.com>
-Date: Fri, 2 Jun 2017 02:15:19 +0000
-Subject: [PATCH] Add PausedSync states to acceptable cstate to avoid metdata
- creation
-
----
- manifests/resource/up.pp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/manifests/resource/up.pp b/manifests/resource/up.pp
-index 160c8c2..3e2fdac 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)') || (drbdadm show-gi ${name} | grep 'meta-data: need apply-al')",
-+    unless  => "drbdadm dump-md ${name} || (drbdadm cstate ${name} | egrep -q '^(PausedSync|Sync|Connected|WFConnection|StandAlone|Verify)') || (drbdadm show-gi ${name} | grep 'meta-data: need apply-al')",
-     before  => Service['drbd'],
-     require => [
-       Exec['modprobe drbd'],
--- 
-1.8.3.1
-
diff --git a/meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0006-CGTS-7164-Add-resource-options-cpu-mask-to-affine-drbd-kernel-threads.patch b/meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0006-CGTS-7164-Add-resource-options-cpu-mask-to-affine-drbd-kernel-threads.patch
deleted file mode 100644 (file)
index 5c6aec1..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-From 0e264e7ac2b311aa9b42b183660a07b7e4e36b11 Mon Sep 17 00:00:00 2001
-From: Jim Gauld <james.gauld@windriver.com>
-Date: Fri, 9 Jun 2017 14:58:23 -0400
-Subject: [PATCH 1/1] CGTS-7164: Add resource options cpu-mask to affine drbd
- kernel threads
-
-This adds "options { cpu-mask <cpumask>; }" section to DRBD resource
-configuration if 'cpumask' hexstring is defined. This governs kernel
-threads: drbd_w_<x>, drbd_r_<x>, drbd_a_<x>.
-
-Related notes:
-- if cpumask is not specified, the kernel threads drbd_w_<x>, drbd_r_<x>,
-  drbd_a_<x>, and drbd_as_<x> are affined to individual cores, each <x>
-  on a different core.
-
-- the remainder of the kernel threads are governed by kernel boot
-  argument kthread_cpus=<cpulist>.  i.e., drbd-reissue, drbd<x>_submit,
-  jbd2/drbd<x>-8, drbd_as_<x>.
-
-- the drbd_a_<x> and drbd_as_<x> show up when DRBD is duplex.
-
-- the drbd_a_<x> threads have SCHED_RR scheduling policy.
----
- manifests/resource.pp    | 3 +++
- templates/header.res.erb | 6 ++++++
- 2 files changed, 9 insertions(+)
-
-diff --git a/manifests/resource.pp b/manifests/resource.pp
-index d19ad8b..17e6142 100644
---- a/manifests/resource.pp
-+++ b/manifests/resource.pp
-@@ -26,6 +26,8 @@
- #  [link_speed] replication link network speed mbps
- #  [num_parallel] number of parallel drbd filesystems to sync
- #  [rtt_ms] round-trip-time milliseconds (i.e., ping between replication nodes)
-+#  [cpumask] cpu-affinity-mask for DRBD kernel threads (hexidecimal notation).
-+#    0 means spread over all CPUs of the machine.
- define drbd::resource (
-   $host1          = undef,
-   $host2          = undef,
-@@ -48,6 +50,7 @@ define drbd::resource (
-   $num_parallel   = false,
-   $rtt_ms         = false,
-   $resync_after   = undef,
-+  $cpumask        = false,
-   $net_parameters = false,
-   $manage         = true,
-   $ha_primary     = false,
-diff --git a/templates/header.res.erb b/templates/header.res.erb
-index be53761..df52544 100644
---- a/templates/header.res.erb
-+++ b/templates/header.res.erb
-@@ -29,6 +29,12 @@ resource <%= @name %> {
- <% end -%>
-   }
-+<% if @cpumask -%>
-+  options {
-+    cpu-mask <%= @cpumask %>;
-+  }
-+<% end -%>
-+
-   net {
-     after-sb-0pri discard-zero-changes;
-     after-sb-1pri discard-secondary;
--- 
-1.8.3.1
-
diff --git a/meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0007-Add-disk-by-path-test.patch b/meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0007-Add-disk-by-path-test.patch
deleted file mode 100644 (file)
index 1eb12f5..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-From 30ae8c86d9471980a0058823d6593e7548e19506 Mon Sep 17 00:00:00 2001
-From: Don Penney <don.penney@windriver.com>
-Date: Thu, 15 Jun 2017 17:34:30 -0400
-Subject: [PATCH] Add disk by-path test
-
----
- manifests/resource/up.pp | 14 +++++++++++++-
- 1 file changed, 13 insertions(+), 1 deletion(-)
-
-diff --git a/manifests/resource/up.pp b/manifests/resource/up.pp
-index 3e2fdac..ea379a8 100644
---- a/manifests/resource/up.pp
-+++ b/manifests/resource/up.pp
-@@ -8,6 +8,17 @@ define drbd::resource::up (
-   $mountpoint,
-   $automount,
- ) {
-+
-+  # Ensure disk by-path link exists
-+  exec { "test disk by-path for ${name}":
-+    command => "udevadm settle",
-+    unless => "test -e ${disk}",
-+    before => Service['drbd'],
-+    require => [
-+        Exec['modprobe drbd']
-+      ],
-+  }
-+
-   # create metadata on device, except if resource seems already initalized.
-   # drbd is very tenacious about asking for aproval if there is data on the
-   # volume already.
-@@ -18,6 +29,7 @@ define drbd::resource::up (
-     before  => Service['drbd'],
-     require => [
-       Exec['modprobe drbd'],
-+      Exec["test disk by-path for ${name}"],
-       Concat["/etc/drbd.d/${name}.res"],
-       ],
-     notify  => Service['drbd'],
-@@ -35,7 +47,7 @@ define drbd::resource::up (
-     notify  => Service['drbd'],
-   }
--  exec { "reuse existing DRBD resoure ${name}":
-+  exec { "reuse existing DRBD resource ${name}":
-     command => "drbdadm adjust ${name}",
-     onlyif  => "test -e ${disk} && (drbdadm show-gi ${name} | grep 'meta-data: need apply-al')",
-     before  => Service['drbd'],
--- 
-1.8.3.1
-
diff --git a/meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0008-CGTS-7953-support-for-new-drbd-resources.patch b/meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0008-CGTS-7953-support-for-new-drbd-resources.patch
deleted file mode 100644 (file)
index 8306729..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-From a29598365183c10e4650088675a6e3181b340187 Mon Sep 17 00:00:00 2001
-From: Kristine Bujold <kristine.bujold@windriver.com>
-Date: Wed, 17 Jan 2018 18:18:15 -0500
-Subject: [PATCH 1/1] foo bar
-
----
- manifests/init.pp                | 2 ++
- templates/global_common.conf.erb | 5 +++++
- 2 files changed, 7 insertions(+)
-
-diff --git a/manifests/init.pp b/manifests/init.pp
-index 76ce9c9..5e6bdc0 100644
---- a/manifests/init.pp
-+++ b/manifests/init.pp
-@@ -8,6 +8,8 @@ class drbd(
-   $service_enable = true,
-   $service_ensure = 'running',
-   $package_name = 'drbd-utils',
-+  $wfc_timeout = 0,
-+  $degr_wfc_timeout = 0,
- ) {
-   include ::drbd::service
-diff --git a/templates/global_common.conf.erb b/templates/global_common.conf.erb
-index 921a637..0253ef3 100644
---- a/templates/global_common.conf.erb
-+++ b/templates/global_common.conf.erb
-@@ -3,4 +3,9 @@ global {
- }
- common {
-   protocol C;
-+
-+  startup {
-+    wfc-timeout <%= @wfc_timeout %>;
-+    degr-wfc-timeout <%= @degr_wfc_timeout %>;
-+  }
- }
--- 
-1.8.3.1
-
diff --git a/meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0009-drbd-slow-before-swact.patch b/meta-starlingx/meta-stx-cloud/recipes-support/puppet/files/puppet-drbd/0009-drbd-slow-before-swact.patch
deleted file mode 100644 (file)
index f037d29..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-From 2628193e8aef471caab27ada848fa8d7de6d93ec Mon Sep 17 00:00:00 2001
-From: Daniel Badea <daniel.badea@windriver.com>
-Date: Wed, 13 Jun 2018 14:16:53 +0000
-Subject: [PATCH] drbd slow before swact
-
----
- manifests/resource/up.pp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/manifests/resource/up.pp b/manifests/resource/up.pp
-index c3557e1..11cf7ee 100644
---- a/manifests/resource/up.pp
-+++ b/manifests/resource/up.pp
-@@ -23,7 +23,7 @@ define drbd::resource::up (
-   # drbd is very tenacious about asking for aproval if there is data on the
-   # volume already.
-   exec { "initialize DRBD metadata for ${name}":
--    command => "yes yes | drbdadm create-md ${name}",
-+    command => "yes yes | drbdadm create-md ${name} -W--peer-max-bio-size=128k",
-     onlyif  => "test -e ${disk}",
-     unless  => "drbdadm dump-md ${name} || (drbdadm cstate ${name} | egrep -q '^(PausedSync|Sync|Connected|WFConnection|StandAlone|Verify)') || (drbdadm show-gi ${name} | grep 'meta-data: need apply-al')",
-     before  => Service['drbd'],
--- 
-1.8.3.1
-
index c89b516..4efa5eb 100644 (file)
@@ -1,15 +1,19 @@
+inherit stx-metadata
 
-FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
-SRC_URI += " \
-       file://${PN}/0001-TIS-Patches.patch \
-       file://${PN}/0002-Disable-timeout-for-mkfs-command.patch \
-       file://${PN}/0003-drbd-parallel-to-serial-synchronization.patch \
-       file://${PN}/0004-US-96914-reuse-existing-drbd-cinder-resource.patch \
-       file://${PN}/0005-Add-PausedSync-states-to-acceptable-cstate.patch \
-       file://${PN}/0006-CGTS-7164-Add-resource-options-cpu-mask-to-affine-drbd-kernel-threads.patch \
-       file://${PN}/0007-Add-disk-by-path-test.patch \
-       file://${PN}/0008-CGTS-7953-support-for-new-drbd-resources.patch \
-       file://${PN}/0009-drbd-slow-before-swact.patch \
+STX_REPO = "integ"
+STX_SUBPATH = "config/puppet-modules/${BP}/centos/files"
+
+SRC_URI_STX += " \
+       file://0001-TIS-Patches.patch \
+       file://0002-Disable-timeout-for-mkfs-command.patch \
+       file://0003-drbd-parallel-to-serial-synchronization.patch \
+       file://0004-US-96914-reuse-existing-drbd-cinder-resource.patch \
+       file://0005-Add-PausedSync-states-to-acceptable-cstate.patch \
+       file://0006-CGTS-7164-Add-resource-options-cpu-mask-to-affine-drbd-kernel-threads.patch \
+       file://0007-Add-disk-by-path-test.patch \
+       file://0008-CGTS-7953-support-for-new-drbd-resources.patch \
+       file://0009-drbd-slow-before-swact.patch \
+       file://0010-Format-DRBD-resource-cpu-mask-to-support-64-or-larger-cpus.patch \
        "
 
 inherit openssl10