table of contents
other versions
- jessie 1:3.9.3+git20121009-3.1
- jessie-backports 1:4.0.0~rc1-4~bpo8+1
- stretch 1:4.0.0~rc1-4
- testing 1:4.2.0-1
- unstable 1:4.2.0-2
OCF_HEARTBEAT_IPADDR(7) | OCF resource agents | OCF_HEARTBEAT_IPADDR(7) |
NAME¶
ocf_heartbeat_IPaddr2 - Manages virtual IPv4 and IPv6 addresses (Linux specific version)SYNOPSIS¶
IPaddr2 [start | stop | status | monitor | meta-data |
validate-all]
DESCRIPTION¶
This Linux-specific resource manages IP alias IP addresses. It can add an IP alias, or remove one. In addition, it can implement Cluster Alias IP functionality if invoked as a clone resource. If used as a clone, you should explicitly set clone-node-max >= 2, and/or clone-max < number of nodes. In case of node failure, clone instances need to be re-allocated on surviving nodes. This would not be possible if there is already an instance on those nodes, and clone-node-max=1 (which is the default).SUPPORTED PARAMETERS¶
ipThe IPv4 (dotted quad notation) or IPv6 address (colon
hexadecimal notation) example IPv4 "192.168.1.1". example IPv6
"2001:db8:DC28:0:0:FC57:D4C8:1FFF".
(unique, required, string, no default)
nic
The base network interface on which the IP address will
be brought online. If left empty, the script will try and determine this from
the routing table.
Do NOT specify an alias interface in the form eth0:1 or anything here; rather,
specify the base interface only. If you want a label, see the iflabel
parameter.
Prerequisite:
There must be at least one static IP address, which is not managed by the
cluster, assigned to the network interface. If you can not assign any static
IP address on the interface, modify this kernel parameter:
sysctl -w net.ipv4.conf.all.promote_secondaries=1 # (or per device)
(optional, string, no default)
cidr_netmask
The netmask for the interface in CIDR format (e.g., 24
and not 255.255.255.0)
If unspecified, the script will also try to determine this from the routing
table.
(optional, string, no default)
broadcast
Broadcast address associated with the IP. It is possible
to use the special symbols '+' and '-' instead of the broadcast address. In
this case, the broadcast address is derived by setting/resetting the host bits
of the interface prefix.
(optional, string, no default)
iflabel
You can specify an additional label for your IP address
here. This label is appended to your interface name.
The kernel allows alphanumeric labels up to a maximum length of 15 characters
including the interface name and colon (e.g. eth0:foobar1234)
A label can be specified in nic parameter but it is deprecated. If a label is
specified in nic name, this parameter has no effect.
(optional, string, no default)
lvs_support
Enable support for LVS Direct Routing configurations. In
case a IP address is stopped, only move it to the loopback device to allow the
local node to continue to service requests, but no longer advertise it on the
network.
Notes for IPv6: It is not necessary to enable this option on IPv6. Instead,
enable 'lvs_ipv6_addrlabel' option for LVS-DR usage on IPv6.
(optional, boolean, default false)
lvs_ipv6_addrlabel
Enable adding IPv6 address label so IPv6 traffic
originating from the address's interface does not use this address as the
source. This is necessary for LVS-DR health checks to realservers to work.
Without it, the most recently added IPv6 address (probably the address added
by IPaddr2) will be used as the source address for IPv6 traffic from that
interface and since that address exists on loopback on the realservers, the
realserver response to pings/connections will never leave its loopback. See
RFC3484 for the detail of the source address selection.
See also 'lvs_ipv6_addrlabel_value' parameter.
(optional, boolean, default false)
lvs_ipv6_addrlabel_value
Specify IPv6 address label value used when
'lvs_ipv6_addrlabel' is enabled. The value should be an unused label in the
policy table which is shown by 'ip addrlabel list' command. You would rarely
need to change this parameter.
(optional, integer, default 99)
mac
Set the interface MAC address explicitly. Currently only
used in case of the Cluster IP Alias. Leave empty to chose automatically.
(optional, string, no default)
clusterip_hash
Specify the hashing algorithm used for the Cluster IP
functionality.
(optional, string, default "sourceip-sourceport")
unique_clone_address
If true, add the clone ID to the supplied value of IP to
create a unique address to manage
(optional, boolean, default false)
arp_interval
Specify the interval between unsolicited ARP packets in
milliseconds.
(optional, integer, default 200)
arp_count
Number of unsolicited ARP packets to send at resource
initialization.
(optional, integer, default 5)
arp_count_refresh
Number of unsolicited ARP packets to send during resource
monitoring. Doing so helps mitigate issues of stuck ARP caches resulting from
split-brain situations.
(optional, integer, default 0)
arp_bg
Whether or not to send the ARP packets in the background.
(optional, string, default "true")
arp_mac
MAC address to send the ARP packets to.
You really shouldn't be touching this.
(optional, string, default "ffffffffffff")
arp_sender
The program to send ARP packets with on start. For
infiniband interfaces, default is ipoibarping. If ipoibarping is not
available, set this to send_arp.
(optional, string, no default)
flush_routes
Flush the routing table on stop. This is for applications
which use the cluster IP address and which run on the same physical host that
the IP address lives on. The Linux kernel may force that application to take a
shortcut to the local loopback interface, instead of the interface the address
is really bound to. Under those circumstances, an application may, somewhat
unexpectedly, continue to use connections for some time even after the IP
address is deconfigured. Set this parameter in order to immediately disable
said shortcut when the IP address goes away.
(optional, boolean, default false)
SUPPORTED ACTIONS¶
This resource agent supports the following actions (operations): startStarts the resource. Suggested minimum timeout:
20s.
stop
Stops the resource. Suggested minimum timeout: 20s.
status
Performs a status check. Suggested minimum timeout: 20s.
Suggested interval: 10s.
monitor
Performs a detailed status check. Suggested minimum
timeout: 20s. Suggested interval: 10s.
meta-data
Retrieves resource agent metadata (internal use only).
Suggested minimum timeout: 5s.
validate-all
Performs a validation of the resource configuration.
Suggested minimum timeout: 20s.
EXAMPLE CRM SHELL¶
The following is an example configuration for a IPaddr2 resource using the crm(8) shell:primitive p_IPaddr2 ocf:heartbeat:IPaddr2 \ params \ ip= string \ op monitor depth="0" timeout="20s" interval="10s"
EXAMPLE PCS¶
The following is an example configuration for a IPaddr2 resource using pcs(8)pcs resource create p_IPaddr2 ocf:heartbeat:IPaddr2 \ ip= string \ op monitor depth="0" timeout="20s" interval="10s"
SEE ALSO¶
http://clusterlabs.org/AUTHOR¶
ClusterLabs contributors (see the resource agent source for information about individual authors)06/07/2017 | resource-agents 4.0.0~rc1-4~bp |