Bug 2154727

Summary: ethmonitor generates "WARNING Interface XXX does not exist" at every monitor operation
Product: Red Hat Enterprise Linux 8 Reporter: Keigo Noha <knoha>
Component: resource-agentsAssignee: Oyvind Albrigtsen <oalbrigt>
Status: VERIFIED --- QA Contact: cluster-qe <cluster-qe>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 8.2CC: agk, cfeist, cluster-maint, fdinitto, mjuricek, oalbrigt, phagara, sbradley
Target Milestone: rcKeywords: Triaged
Target Release: 8.9   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: resource-agents-4.9.0-41.el8 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
: 2174896 (view as bug list) Environment:
Last Closed: Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 2174896    

Description Keigo Noha 2022-12-19 02:01:25 UTC
Description of problem:
ethmonitor generates "WARNING Interface XXX does not exist" at every monitor operation.

The issue occurs when the interface doesn't have an IP address.

is_interface() in ethmonitor script uses 'ip -a -o inet addr show' command.
The command shows interfaces which have IP addresses.
On the other hand, if the interface belongs to (OVS/Linux) bridge.
The physical/bonding interfaces don't have IP addresses.

To detect the correct interface in that situation, we should backport the following commits into RHEL8.2 and RHEL8.4.

~~~
commit 40d05029ce0b2ad437377cf9a8bcb4c91508fa89
Author: Heitor R. Alves de Siqueira <halves>
Date:   Thu Mar 21 16:29:33 2019 -0300

    ethmonitor: check if interface exists by link
---
commit c0ac191c73f1a3cf62d54b7ec59992997cca3810
Author: Heitor Alves de Siqueira <halves>
Date:   Wed Apr 17 17:16:39 2019 -0300

    ethmonitor: fix is_interface() regression
    
    Commit 40d05029ce0b changed is_interface() to list by link instead of
    address. We need to adjust the grep filter for the new output format,
    else we'll miss interfaces.
---
commit 7f7ca75100a846242ff1510fd9bcf299cd3d00eb
Author: Aleksei Burlakov <aleksei.burlakov>
Date:   Mon Oct 26 13:25:45 2020 +0100

    ethmonitor: is_interface: RE matches vlan names
    
    Vlan names end not with : but are suffixed with the @devices-name
~~~

Version-Release number of selected component (if applicable):
resource-agents in RHEL8.2 and RHEL8.4.


How reproducible:
Everytime when ethmonitor's monitor operation runs.

Steps to Reproduce:
1. Configure an interface which belongs to ovs-bridge.
2. Setup ethmonitor for the bonding device which doesn't have an IP address.
3. Observe the error message is shown.

Actual results:
The warning message is shown

Expected results:
The warning message is not shown.

Additional info:
The message makes user confused. We should prevent it.

Comment 3 Keigo Noha 2023-03-15 00:39:47 UTC
Hi Oyvind,

I'm sorry for interrupting you. Do you have any updates on this?
It'll be great if we can backport it into RHEL8.2 and RHEL8.4 which are used with OSP16.x.

Best Regards,
Keigo Noha

Comment 4 Oyvind Albrigtsen 2023-03-15 12:22:07 UTC
https://github.com/ClusterLabs/resource-agents/pull/1851