aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Polenchuk <mpolenchuk@mirantis.com>2016-10-26 15:40:16 +0300
committerMichael Polenchuk <mpolenchuk@mirantis.com>2016-10-27 16:49:11 +0300
commitd226eea31b29a0a7d2e54ea93a1e15a57a0247f6 (patch)
tree05742968a33aaea8d158be939ff6b08d8cdd78c2
parent0799bce0ce6fb46cbf1c5a2d3b505627d963428a (diff)
Shift public ping checker into deployment stage
Avoid public vip failover at the end of post-deployment by moving ping_checker resource into deployment stage. Also pingd constraint has been changed to be based on score. If all the nodes failed to ping the default gw, the resource ain't stopped and remains on the last node where it was. JIRA: FUEL-212 JIRA: FUEL-217 Change-Id: I09329474cf13958499ac99bfbdf9c9055c9bcb55 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
-rw-r--r--build/f_repos/patch/fuel-library/0004-Shift-public-ping-checker-into-deployment-stage.patch110
1 files changed, 110 insertions, 0 deletions
diff --git a/build/f_repos/patch/fuel-library/0004-Shift-public-ping-checker-into-deployment-stage.patch b/build/f_repos/patch/fuel-library/0004-Shift-public-ping-checker-into-deployment-stage.patch
new file mode 100644
index 000000000..19bae71f1
--- /dev/null
+++ b/build/f_repos/patch/fuel-library/0004-Shift-public-ping-checker-into-deployment-stage.patch
@@ -0,0 +1,110 @@
+From cfcc613a1eddb90fb5b5426a23e90c78a58be784 Mon Sep 17 00:00:00 2001
+From: Michael Polenchuk <mpolenchuk@mirantis.com>
+Date: Wed, 26 Oct 2016 15:26:11 +0300
+Subject: [PATCH] Shift public ping checker into deployment stage
+
+Avoid public vip failover at the end of post-deployment
+by moving ping_checker resource into deployment stage.
+Also pingd constraint has been changed to be based on score.
+If all the nodes failed to ping the default gw, the resource
+ain't stopped and remains on the last node where it was.
+
+Change-Id: I666fbbbe98d000c66f97cf4751f304a2da9aad67
+---
+ .../puppet/cluster/manifests/virtual_ip_ping.pp | 10 +++++-----
+ .../puppet/osnailyfacter/modular/astute/tasks.yaml | 15 ---------------
+ .../osnailyfacter/modular/virtual_ips/tasks.yaml | 14 ++++++++++++++
+ 3 files changed, 19 insertions(+), 20 deletions(-)
+
+diff --git a/deployment/puppet/cluster/manifests/virtual_ip_ping.pp b/deployment/puppet/cluster/manifests/virtual_ip_ping.pp
+index 3e49c09..7642422 100644
+--- a/deployment/puppet/cluster/manifests/virtual_ip_ping.pp
++++ b/deployment/puppet/cluster/manifests/virtual_ip_ping.pp
+@@ -11,7 +11,7 @@ define cluster::virtual_ip_ping (
+ $parameters = {
+ 'host_list' => $host_list,
+ 'multiplier' => '1000',
+- 'dampen' => '30s',
++ 'dampen' => '45s',
+ 'timeout' => '3s',
+ }
+ $operations = {
+@@ -41,16 +41,16 @@ define cluster::virtual_ip_ping (
+ primitive => $vip_name,
+ rules => [
+ {
+- 'score' => '-inf',
++ 'score' => '50',
+ 'expressions' => [
+ {
+ 'attribute' => "pingd",
+- 'operation' => 'not_defined',
++ 'operation' => 'defined',
+ },
+ {
+ 'attribute' => "pingd",
+- 'operation'=>'lte',
+- 'value' => '0',
++ 'operation'=>'gte',
++ 'value' => '1',
+ },
+ ],
+ },
+diff --git a/deployment/puppet/osnailyfacter/modular/astute/tasks.yaml b/deployment/puppet/osnailyfacter/modular/astute/tasks.yaml
+index 5e3e6ee..83242c4 100644
+--- a/deployment/puppet/osnailyfacter/modular/astute/tasks.yaml
++++ b/deployment/puppet/osnailyfacter/modular/astute/tasks.yaml
+@@ -10,7 +10,6 @@
+ cross-depends:
+ - name: dns-client
+ - name: ntp-server
+- - name: public_vip_ping
+ parameters:
+ cmd: ruby /etc/puppet/modules/osnailyfacter/modular/astute/enable_quorum.rb
+ timeout: 180
+@@ -110,20 +109,6 @@
+ timeout: 180
+ cwd: /
+
+-- id: public_vip_ping
+- type: puppet
+- version: 2.1.0
+- role: [primary-controller, controller]
+- requires: [post_deployment_start]
+- required_for: [post_deployment_end]
+- condition:
+- yaql_exp: "changed($.network_scheme) or changed($.get('run_ping_checker'))"
+- parameters:
+- puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/virtual_ips/public_vip_ping.pp
+- puppet_modules: /etc/puppet/modules
+- timeout: 3600
+- cwd: /
+-
+ - id: configure_default_route
+ type: puppet
+ version: 2.1.0
+diff --git a/deployment/puppet/osnailyfacter/modular/virtual_ips/tasks.yaml b/deployment/puppet/osnailyfacter/modular/virtual_ips/tasks.yaml
+index 00d4306..b028c6e 100644
+--- a/deployment/puppet/osnailyfacter/modular/virtual_ips/tasks.yaml
++++ b/deployment/puppet/osnailyfacter/modular/virtual_ips/tasks.yaml
+@@ -34,3 +34,17 @@
+ cmd: ruby /etc/puppet/modules/osnailyfacter/modular/virtual_ips/conntrackd_pre.rb
+ test_post:
+ cmd: ruby /etc/puppet/modules/osnailyfacter/modular/virtual_ips/conntrackd_post.rb
++
++- id: public_vip_ping
++ type: puppet
++ version: 2.1.0
++ groups: [primary-controller, controller]
++ requires: [virtual_ips]
++ required_for: [primary-cluster-haproxy, cluster-haproxy]
++ condition:
++ yaql_exp: "changed($.network_scheme) or changed($.get('run_ping_checker'))"
++ parameters:
++ puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/virtual_ips/public_vip_ping.pp
++ puppet_modules: /etc/puppet/modules
++ timeout: 3600
++ cwd: /
+--
+1.7.9.5
+