Is the use of DHCP for the network interface supporting corosync traffic supported in RHEL High Availability Clustering?
Environment
- Red Hat Enterprise Linux Server 6, 7, 8 (with the High Availability Add On)
Issue
- Can DHCP be used to obtain ip addresses for network interfaces used for the corosync interconnect between nodes?
Resolution
Red Hat Enterprise Linux Server (with the High Availability Add On) requires that the network interface used by corosync (on all corosync rings) uses static IP address assignment except in supported cloud environments that require dynamic (DHCP) IP addresses (azure, etc.) assignment. In other words, using DHCP to assign the static IP address for the network interface used by corosync is only supported in supported cloud environments.
Root Cause
In most environments (except supported cloud) we do not support using DHCP to assign IP addresses on the network interface that is used by corosync. Below is a couple of reasons why not (and not an exhaustive list):
- DHCP client (cluster node) can periodically remove and re-add an IP address to it's assigned interface during address renewal. This will result in
corosyncdetecting a connection failure, which will result in fencing activity from any other nodes in the cluster using corosync for heartbeat connectivity. - The use of DHCP would result in a single point of failure for the architecture as a whole if there is not redundant DHCP servers that the cluster nodes could use.
- If the DHCP servers are on a different LAN than the cluster nodes, a router could become a single point of failure.
This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.