'\" t .\" Title: ocf_heartbeat_ethmonitor .\" Author: ClusterLabs contributors (see the resource agent source for information about individual authors) .\" Generator: DocBook XSL Stylesheets vsnapshot .\" Date: 04/13/2023 .\" Manual: OCF resource agents .\" Source: resource-agents 4.12.0-2 .\" Language: English .\" .TH "OCF_HEARTBEAT_ETHMON" "7" "04/13/2023" "resource-agents 4.12.0-2" "OCF resource agents" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" ocf_heartbeat_ethmonitor \- Monitors network interfaces .SH "SYNOPSIS" .HP \w'\fBethmonitor\fR\ 'u \fBethmonitor\fR [start | stop | status | monitor | meta\-data | validate\-all] .SH "DESCRIPTION" .PP Monitor the vitality of a local network interface\&. .PP You may set up this RA as a clone resource to monitor the network interfaces on different nodes, with the same interface name\&. This is not related to the IP address or the network on which a interface is configured\&. You may use this RA to move resources away from a node, which has a faulty interface or prevent moving resources to such a node\&. This gives you independent control of the resources, without involving cluster intercommunication\&. But it requires your nodes to have more than one network interface\&. .PP The resource configuration requires a monitor operation, because the monitor does the main part of the work\&. In addition to the resource configuration, you need to configure some location constraints, based on a CIB attribute value\&. The name of the attribute value is configured in the \*(Aqname\*(Aq option of this RA\&. .PP Example constraint configuration using crmsh location loc_connected_node my_resource_grp rule ="rule_loc_connected_node" \-INF: ethmonitor eq 0 .PP Example constraint configuration using pcs\&. Only allow \*(Aqmy_resource\*(Aq to run on nodes where eth0 ethernet device is available\&. pcs constraint location my_resource rule score=\-INFINITY ethmonitor\-eth0 ne 1 .PP The ethmonitor works in 3 different modes to test the interface vitality\&. 1\&. call ip to see if the link status is up (if link is down \-> error) 2\&. call ip and watch the RX counter (if packages come around in a certain time \-> success) 3\&. call arping to check whether any of the IPs found in the local ARP cache answers an ARP REQUEST (one answer \-> success) 4\&. return error .SH "SUPPORTED PARAMETERS" .PP \fBinterface\fR .RS 4 The name of the network interface which should be monitored (e\&.g\&. eth0)\&. .sp (unique, required, string, no default) .RE .PP \fBname\fR .RS 4 The name of the CIB attribute to set\&. This is the name to be used in the constraints\&. Defaults to "ethmonitor\-\*(Aqinterface_name\*(Aq"\&. .sp (unique, optional, string, no default) .RE .PP \fBmultiplier\fR .RS 4 Multiplier for the value of the CIB attriobute specified in parameter name\&. .sp (optional, integer, default 1) .RE .PP \fBrepeat_count\fR .RS 4 Specify how often the interface will be monitored, before the status is set to failed\&. You need to set the timeout of the monitoring operation to at least repeat_count * repeat_interval .sp (optional, integer, default 5) .RE .PP \fBrepeat_interval\fR .RS 4 Specify how long to wait in seconds between the repeat_counts\&. .sp (optional, integer, default 10) .RE .PP \fBpktcnt_timeout\fR .RS 4 Timeout for the RX packet counter\&. Stop listening for packet counter changes after the given number of seconds\&. .sp (optional, integer, default 5) .RE .PP \fBarping_count\fR .RS 4 Number of ARP REQUEST packets to send for every IP\&. Usually one ARP REQUEST (arping) is send .sp (optional, integer, default 1) .RE .PP \fBarping_timeout\fR .RS 4 Time in seconds to wait for ARP REQUESTs (all packets of arping_count)\&. This is to limit the time for arp requests, to be able to send requests to more than one node, without running in the monitor operation timeout\&. .sp (optional, integer, default 1) .RE .PP \fBarping_cache_entries\fR .RS 4 Maximum number of IPs from ARP cache list to check for ARP REQUEST (arping) answers\&. Newest entries are tried first\&. .sp (optional, integer, default 5) .RE .PP \fBinfiniband_device\fR .RS 4 For interfaces that are infiniband devices\&. .sp (optional, string, no default) .RE .PP \fBinfiniband_port\fR .RS 4 For infiniband devices, this is the port to monitor\&. .sp (optional, integer, no default) .RE .PP \fBlink_status_only\fR .RS 4 Only report success based on link status\&. Do not perform RX counter or arping related connectivity tests\&. .sp (optional, boolean, default false) .RE .SH "SUPPORTED ACTIONS" .PP This resource agent supports the following actions (operations): .PP \fBstart\fR .RS 4 Starts the resource\&. Suggested minimum timeout: 60s\&. .RE .PP \fBstop\fR .RS 4 Stops the resource\&. Suggested minimum timeout: 20s\&. .RE .PP \fBstatus\fR .RS 4 Performs a status check\&. Suggested minimum timeout: 60s\&. Suggested interval: 10s\&. .RE .PP \fBmonitor\fR .RS 4 Performs a detailed status check\&. Suggested minimum timeout: 60s\&. Suggested interval: 10s\&. .RE .PP \fBmeta\-data\fR .RS 4 Retrieves resource agent metadata (internal use only)\&. Suggested minimum timeout: 5s\&. .RE .PP \fBvalidate\-all\fR .RS 4 Performs a validation of the resource configuration\&. Suggested minimum timeout: 20s\&. .RE .SH "EXAMPLE CRM SHELL" .PP The following is an example configuration for a ethmonitor resource using the \fBcrm\fR(8) shell: .sp .if n \{\ .RS 4 .\} .nf primitive p_ethmonitor ocf:heartbeat:ethmonitor \e params \e interface=\fIstring\fR \e op monitor depth="0" timeout="60s" interval="10s" .fi .if n \{\ .RE .\} .SH "EXAMPLE PCS" .PP The following is an example configuration for a ethmonitor resource using \fBpcs\fR(8) .sp .if n \{\ .RS 4 .\} .nf pcs resource create p_ethmonitor ocf:heartbeat:ethmonitor \e interface=\fIstring\fR \e op monitor OCF_CHECK_LEVEL="0" timeout="60s" interval="10s" .fi .if n \{\ .RE .\} .SH "SEE ALSO" .PP \m[blue]\fB\%http://clusterlabs.org/\fR\m[] .SH "AUTHOR" .PP \fBClusterLabs contributors (see the resource agent source for information about individual authors)\fR