- IPaddr2/IPsrcaddr: support policy-based routing
- lvmlockd: add "use_lvmlockd = 1" if it's commented out or missing - ethmonitor: dont log "Interface does not exist" for monitor-action Resolves: rhbz#2142518 Resolves: rhbz#2149968 Resolves: rhbz#2174896
This commit is contained in:
parent
8521775809
commit
99121b9174
@ -0,0 +1,84 @@
|
||||
From 4d87bcfe5df8a1e40ee945e095ac9e7cca147ec4 Mon Sep 17 00:00:00 2001
|
||||
From: Oyvind Albrigtsen <oalbrigt@redhat.com>
|
||||
Date: Wed, 29 Jun 2022 10:26:25 +0200
|
||||
Subject: [PATCH] IPaddr2/IPsrcaddr: add/modify table parameter to be able to
|
||||
find interface while using policy based routing
|
||||
|
||||
---
|
||||
heartbeat/IPaddr2 | 12 ++++++++++++
|
||||
heartbeat/IPsrcaddr | 5 ++++-
|
||||
heartbeat/findif.sh | 2 +-
|
||||
3 files changed, 17 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/heartbeat/IPaddr2 b/heartbeat/IPaddr2
|
||||
index 97a7431a2..e8384c586 100755
|
||||
--- a/heartbeat/IPaddr2
|
||||
+++ b/heartbeat/IPaddr2
|
||||
@@ -73,6 +73,7 @@ OCF_RESKEY_ip_default=""
|
||||
OCF_RESKEY_cidr_netmask_default=""
|
||||
OCF_RESKEY_broadcast_default=""
|
||||
OCF_RESKEY_iflabel_default=""
|
||||
+OCF_RESKEY_table_default=""
|
||||
OCF_RESKEY_cidr_netmask_default=""
|
||||
OCF_RESKEY_lvs_support_default=false
|
||||
OCF_RESKEY_lvs_ipv6_addrlabel_default=false
|
||||
@@ -97,6 +98,7 @@ OCF_RESKEY_network_namespace_default=""
|
||||
: ${OCF_RESKEY_cidr_netmask=${OCF_RESKEY_cidr_netmask_default}}
|
||||
: ${OCF_RESKEY_broadcast=${OCF_RESKEY_broadcast_default}}
|
||||
: ${OCF_RESKEY_iflabel=${OCF_RESKEY_iflabel_default}}
|
||||
+: ${OCF_RESKEY_table=${OCF_RESKEY_table_default}}
|
||||
: ${OCF_RESKEY_lvs_support=${OCF_RESKEY_lvs_support_default}}
|
||||
: ${OCF_RESKEY_lvs_ipv6_addrlabel=${OCF_RESKEY_lvs_ipv6_addrlabel_default}}
|
||||
: ${OCF_RESKEY_lvs_ipv6_addrlabel_value=${OCF_RESKEY_lvs_ipv6_addrlabel_value_default}}
|
||||
@@ -239,6 +241,16 @@ If a label is specified in nic name, this parameter has no effect.
|
||||
<content type="string" default="${OCF_RESKEY_iflabel_default}"/>
|
||||
</parameter>
|
||||
|
||||
+<parameter name="table">
|
||||
+<longdesc lang="en">
|
||||
+Table to use to lookup which interface to use for the IP.
|
||||
+
|
||||
+This can be used for policy based routing. See man ip-rule(8).
|
||||
+</longdesc>
|
||||
+<shortdesc lang="en">Table</shortdesc>
|
||||
+<content type="string" default="${OCF_RESKEY_table_default}" />
|
||||
+</parameter>
|
||||
+
|
||||
<parameter name="lvs_support">
|
||||
<longdesc lang="en">
|
||||
Enable support for LVS Direct Routing configurations. In case a IP
|
||||
diff --git a/heartbeat/IPsrcaddr b/heartbeat/IPsrcaddr
|
||||
index 1bd41a930..cf106cc34 100755
|
||||
--- a/heartbeat/IPsrcaddr
|
||||
+++ b/heartbeat/IPsrcaddr
|
||||
@@ -155,13 +155,16 @@ Metric. Only needed if incorrect metric value is used.
|
||||
|
||||
<parameter name="table">
|
||||
<longdesc lang="en">
|
||||
-Table to modify. E.g. "local".
|
||||
+Table to modify and use for interface lookup. E.g. "local".
|
||||
|
||||
The table has to have a route matching the "destination" parameter.
|
||||
+
|
||||
+This can be used for policy based routing. See man ip-rule(8).
|
||||
</longdesc>
|
||||
<shortdesc lang="en">Table</shortdesc>
|
||||
<content type="string" default="${OCF_RESKEY_table_default}" />
|
||||
</parameter>
|
||||
+
|
||||
</parameters>
|
||||
|
||||
<actions>
|
||||
diff --git a/heartbeat/findif.sh b/heartbeat/findif.sh
|
||||
index 66bc6d56a..1a40cc9a4 100644
|
||||
--- a/heartbeat/findif.sh
|
||||
+++ b/heartbeat/findif.sh
|
||||
@@ -32,7 +32,7 @@ prefixcheck() {
|
||||
getnetworkinfo()
|
||||
{
|
||||
local line netinfo
|
||||
- ip -o -f inet route list match $OCF_RESKEY_ip table local scope host | (while read line;
|
||||
+ ip -o -f inet route list match $OCF_RESKEY_ip table "${OCF_RESKEY_table=local}" scope host | (while read line;
|
||||
do
|
||||
netinfo=`echo $line | awk '{print $2}'`
|
||||
case $netinfo in
|
42
bz2149968-lvmlockd-add-use_lvmlockd-if-missing.patch
Normal file
42
bz2149968-lvmlockd-add-use_lvmlockd-if-missing.patch
Normal file
@ -0,0 +1,42 @@
|
||||
From 2695888c983df331b0fee407a5c69c493a360313 Mon Sep 17 00:00:00 2001
|
||||
From: Oyvind Albrigtsen <oalbrigt@redhat.com>
|
||||
Date: Wed, 30 Nov 2022 12:07:05 +0100
|
||||
Subject: [PATCH] lvmlockd: add "use_lvmlockd = 1" if it's commented out or
|
||||
missing
|
||||
|
||||
---
|
||||
heartbeat/lvmlockd | 17 +++++++++++++----
|
||||
1 file changed, 13 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/heartbeat/lvmlockd b/heartbeat/lvmlockd
|
||||
index dc7bd2d7e..f4b299f28 100755
|
||||
--- a/heartbeat/lvmlockd
|
||||
+++ b/heartbeat/lvmlockd
|
||||
@@ -180,14 +180,23 @@ setup_lvm_config()
|
||||
lock_type=$(echo "$out" | cut -d'=' -f2)
|
||||
|
||||
if [ -z "$use_lvmlockd" ]; then
|
||||
- ocf_exit_reason "\"use_lvmlockd\" not set in /etc/lvm/lvm.conf ..."
|
||||
- exit $OCF_ERR_CONFIGURED
|
||||
- fi
|
||||
+ ocf_log info "adding \"use_lvmlockd=1\" to /etc/lvm/lvm.conf ..."
|
||||
+ cat >> /etc/lvm/lvm.conf << EOF
|
||||
+
|
||||
+global {
|
||||
+ use_lvmlockd = 1
|
||||
+}
|
||||
+EOF
|
||||
|
||||
- if [ -n "$use_lvmlockd" ] && [ "$use_lvmlockd" != 1 ] ; then
|
||||
+ if [ $? -ne 0 ]; then
|
||||
+ ocf_exit_reason "unable to add \"use_lvmlockd=1\" to /etc/lvm/lvm.conf ..."
|
||||
+ exit $OCF_ERR_CONFIGURED
|
||||
+ fi
|
||||
+ elif [ "$use_lvmlockd" != 1 ] ; then
|
||||
ocf_log info "setting \"use_lvmlockd=1\" in /etc/lvm/lvm.conf ..."
|
||||
sed -i 's,^[[:blank:]]*use_lvmlockd[[:blank:]]*=.*,\ \ \ \ use_lvmlockd = 1,g' /etc/lvm/lvm.conf
|
||||
fi
|
||||
+
|
||||
if [ -n "$lock_type" ] ; then
|
||||
# locking_type was removed from config in v2.03
|
||||
ocf_version_cmp "$(lvmconfig --version | awk '/LVM ver/ {sub(/\(.*/, "", $3); print $3}')" "2.03"
|
@ -0,0 +1,24 @@
|
||||
From e7a748d35fe56f2be727ecae1885a2f1366f41bf Mon Sep 17 00:00:00 2001
|
||||
From: Oyvind Albrigtsen <oalbrigt@redhat.com>
|
||||
Date: Wed, 15 Mar 2023 13:03:07 +0100
|
||||
Subject: [PATCH] ethmonitor: dont log "Interface does not exist" for
|
||||
monitor-action
|
||||
|
||||
---
|
||||
heartbeat/ethmonitor | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/heartbeat/ethmonitor b/heartbeat/ethmonitor
|
||||
index 451738a0b5..f9c9ef4bdd 100755
|
||||
--- a/heartbeat/ethmonitor
|
||||
+++ b/heartbeat/ethmonitor
|
||||
@@ -271,6 +271,9 @@ if_init() {
|
||||
validate-all)
|
||||
ocf_exit_reason "Interface $NIC does not exist"
|
||||
exit $OCF_ERR_CONFIGURED;;
|
||||
+ monitor)
|
||||
+ ocf_log debug "Interface $NIC does not exist"
|
||||
+ ;;
|
||||
*)
|
||||
## It might be a bond interface which is temporarily not available, therefore we want to continue here
|
||||
ocf_log warn "Interface $NIC does not exist"
|
@ -45,7 +45,7 @@
|
||||
Name: resource-agents
|
||||
Summary: Open Source HA Reusable Cluster Resource Scripts
|
||||
Version: 4.10.0
|
||||
Release: 34%{?rcver:%{rcver}}%{?numcomm:.%{numcomm}}%{?alphatag:.%{alphatag}}%{?dirty:.%{dirty}}%{?dist}
|
||||
Release: 35%{?rcver:%{rcver}}%{?numcomm:.%{numcomm}}%{?alphatag:.%{alphatag}}%{?dirty:.%{dirty}}%{?dist}
|
||||
License: GPLv2+ and LGPLv2+
|
||||
URL: https://github.com/ClusterLabs/resource-agents
|
||||
Source0: %{upstream_prefix}-%{upstream_version}.tar.gz
|
||||
@ -93,6 +93,9 @@ Patch40: bz2157872-2-Filesystem-CTDB-validate-all-improvements.patch
|
||||
Patch41: bz2157872-3-pgsqlms-validate-all-OCF_CHECK_LEVEL-10.patch
|
||||
Patch42: bz2157872-4-exportfs-pgsql-validate-all-fixes.patch
|
||||
Patch43: bz2157872-5-pgsqlms-alidate-all-OCF_CHECK_LEVEL-10.patch
|
||||
Patch44: bz2142518-IPaddr2-IPsrcaddr-support-policy-based-routing.patch
|
||||
Patch45: bz2149968-lvmlockd-add-use_lvmlockd-if-missing.patch
|
||||
Patch46: bz2174896-ethmonitor-dont-log-iface-doesnt-exist-monitor.patch
|
||||
|
||||
# bundled ha-cloud-support libs
|
||||
Patch500: ha-cloud-support-aws.patch
|
||||
@ -260,6 +263,9 @@ exit 1
|
||||
%patch41 -p1
|
||||
%patch42 -p1
|
||||
%patch43 -p1
|
||||
%patch44 -p1
|
||||
%patch45 -p1
|
||||
%patch46 -p1
|
||||
|
||||
# bundled ha-cloud-support libs
|
||||
%patch500 -p1
|
||||
@ -581,6 +587,15 @@ rm -rf %{buildroot}/usr/share/doc/resource-agents
|
||||
%{_usr}/lib/ocf/lib/heartbeat/OCF_*.pm
|
||||
|
||||
%changelog
|
||||
* Tue Mar 21 2023 Oyvind Albrigtsen <oalbrigt@redhat.com> - 4.10.0-35
|
||||
- IPaddr2/IPsrcaddr: support policy-based routing
|
||||
- lvmlockd: add "use_lvmlockd = 1" if it's commented out or missing
|
||||
- ethmonitor: dont log "Interface does not exist" for monitor-action
|
||||
|
||||
Resolves: rhbz#2142518
|
||||
Resolves: rhbz#2149968
|
||||
Resolves: rhbz#2174896
|
||||
|
||||
* Wed Jan 25 2023 Oyvind Albrigtsen <oalbrigt@redhat.com> - 4.10.0-34
|
||||
- all agents: dont check notify/promotable settings during
|
||||
validate-action
|
||||
|
Loading…
Reference in New Issue
Block a user