Bug 1408656

Summary: [RHEL7][RFE] add the possibility to monitor a IB interface without IP address configured
Product: Red Hat Enterprise Linux 7 Reporter: Renaud Marigny <rmarigny>
Component: resource-agentsAssignee: Oyvind Albrigtsen <oalbrigt>
Status: CLOSED ERRATA QA Contact: cluster-qe <cluster-qe>
Severity: medium Docs Contact:
Priority: medium    
Version: 7.2CC: agk, cluster-maint, fdinitto, mnovacek, ofamera
Target Milestone: rcKeywords: FutureFeature
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: resource-agents-3.9.5-90.el7 Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-08-01 14:57:40 UTC 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: 1446211    

Comment 3 Oyvind Albrigtsen 2017-03-24 12:25:14 UTC
https://github.com/ClusterLabs/resource-agents/pull/955

Comment 6 michal novacek 2017-05-03 12:38:46 UTC
I have verified that ocf:heartbeat:ethmonitor can check status of a ethernet
device not having ip address assigned with resource-agents-3.9.5-96

----

1/ configured cluster (1)
2/ configured ethmonitor resource monitoring interface not having ip address (2)

[root@virt-138 ~]# pcs resource show ethmon-eth1
 Resource: ethmon-eth1 (class=ocf provider=heartbeat type=ethmonitor)
  Attributes: interface=eth1
  Operations: monitor interval=30s (ethmon-eth1-monitor-interval-30s)
              start interval=0s timeout=60s (ethmon-eth1-start-interval-0s)
              stop interval=0s timeout=20s (ethmon-eth1-stop-interval-0s)


[root@virt-138 ~]# pcs resource debug-start ethmon-eth1
Operation start for ethmon-eth1 (ocf:heartbeat:ethmonitor) returned 0
>> >  stderr: DEBUG: link_status: 1 (1=up, 0=down)
 >  stderr: DEBUG: watch for packet counter changes
 >  stderr: DEBUG: ip -o -s link show dev eth1
 >  stderr: DEBUG: ip -o -s link show dev eth1
 >  stderr: DEBUG: RX_PACKETS_OLD: 159102       RX_PACKETS_NEW: 159102
 >  stderr: DEBUG: ip -o -s link show dev eth1
 >  stderr: DEBUG: RX_PACKETS_OLD: 159102       RX_PACKETS_NEW: 159103
 >  stderr: DEBUG: we received some packets.
 >  stderr: DEBUG: Monitoring return code: 0
 >  stderr: DEBUG: attrd_updater: Updated ethmonitor-eth1 = 1


(1): pcs config
[root@virt-138 ~]# pcs config
Cluster Name: STSRHTS9244
Corosync Nodes:
 virt-138 virt-139 virt-140
Pacemaker Nodes:
 virt-138 virt-139 virt-140

Resources:
 Clone: dlm-clone
  Meta Attrs: interleave=true ordered=true 
  Resource: dlm (class=ocf provider=pacemaker type=controld)
   Operations: monitor interval=30s on-fail=fence (dlm-monitor-interval-30s)
               start interval=0s timeout=90 (dlm-start-interval-0s)
               stop interval=0s timeout=100 (dlm-stop-interval-0s)
 Clone: clvmd-clone
  Meta Attrs: interleave=true ordered=true 
  Resource: clvmd (class=ocf provider=heartbeat type=clvm)
   Attributes: with_cmirrord=1
   Operations: monitor interval=30s on-fail=fence (clvmd-monitor-interval-30s)
               start interval=0s timeout=90 (clvmd-start-interval-0s)
               stop interval=0s timeout=90 (clvmd-stop-interval-0s)
 Resource: ethmon-eth1 (class=ocf provider=heartbeat type=ethmonitor)
  Attributes: interface=eth1
  Operations: monitor interval=30s (ethmon-eth1-monitor-interval-30s)
              start interval=0s timeout=60s (ethmon-eth1-start-interval-0s)
              stop interval=0s timeout=20s (ethmon-eth1-stop-interval-0s)

Stonith Devices:
 Resource: fence-virt-138 (class=stonith type=fence_xvm)
  Attributes: pcmk_host_check=static-list pcmk_host_list=virt-138 pcmk_host_map=virt-138:virt-138.cluster-qe.lab.eng.brq.redhat.com
  Operations: monitor interval=60s (fence-virt-138-monitor-interval-60s)
 Resource: fence-virt-139 (class=stonith type=fence_xvm)
  Attributes: pcmk_host_check=static-list pcmk_host_list=virt-139 pcmk_host_map=virt-139:virt-139.cluster-qe.lab.eng.brq.redhat.com
  Operations: monitor interval=60s (fence-virt-139-monitor-interval-60s)
 Resource: fence-virt-140 (class=stonith type=fence_xvm)
  Attributes: pcmk_host_check=static-list pcmk_host_list=virt-140 pcmk_host_map=virt-140:virt-140.cluster-qe.lab.eng.brq.redhat.com
  Operations: monitor interval=60s (fence-virt-140-monitor-interval-60s)
Fencing Levels:

Location Constraints:
Ordering Constraints:
  start dlm-clone then start clvmd-clone (kind:Mandatory)
Colocation Constraints:
  clvmd-clone with dlm-clone (score:INFINITY)
Ticket Constraints:

Alerts:
 No alerts defined

Resources Defaults:
 No defaults set
Operations Defaults:
 No defaults set

Cluster Properties:
 cluster-infrastructure: corosync
 cluster-name: STSRHTS9244
 dc-version: 1.1.16-8.el7-94ff4df
 have-watchdog: false
 no-quorum-policy: freeze

Quorum:
  Options:

(2):
[root@virt-138 ~]# ip a show dev eth1
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 52:54:00:01:00:8a brd ff:ff:ff:ff:ff:ff

Comment 7 Oyvind Albrigtsen 2017-07-17 14:35:38 UTC
*** Bug 1471805 has been marked as a duplicate of this bug. ***

Comment 8 errata-xmlrpc 2017-08-01 14:57:40 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2017:1844