[Kea-users] keas-dhcp failover and HA

Kraishak Mahtha kraishak.edu at gmail.com
Mon Mar 6 05:35:09 UTC 2023


Hi All,
I have recently started exploring kea-dhcp4, while I am checking for the
kea-dhcp failover on chatGPT, It says that failover and HA are two
different mechanisms for the kea and here is the sample example for
kea-failover config as it provides
# Sample config for failover
================
{
    "Dhcp4": {
        "control-socket": {
            "socket-type": "unix",
            "socket-name": "/tmp/kea-dhcp4-ctrl.sock"
        },
        "lease-database": {
            "type": "memfile",
            "lfc-interval": 3600
        },
        "expired-leases-processing": {
            "reclaim-timer-wait-time": 10,
            "flush-reclaimed-timer-wait-time": 25,
            "hold-reclaimed-time": 3600,
            "max-reclaim-leases": 100,
            "max-reclaim-time": 250,
            "unwarned-reclaim-cycles": 10,
            "warned-reclaim-cycles": 20
        },
        "subnet4": [
            {
                "id": 1,
                "subnet": "192.0.2.0/24",
                "pools": [
                    {
                        "pool": "192.0.2.100 - 192.0.2.200"
                    }
                ],
                "option-data": [
                    {
                        "name": "routers",
                        "data": "192.0.2.1"
                    }
                ]
            }
        ],
        "hosts-database": {
            "type": "memfile",
            "persist": true,
            "name": "hosts.json"
        },
        "dhcp-ddns": {
            "enable-updates": true,
            "qualifying-suffix": "example.com",
            "reverse-ddns": true,
            "hostname-char-set": "[a-zA-Z0-9.-]"
        },
        "valid-lifetime": 300,
        "renew-timer": 150,
        "rebind-timer": 225,
        "interfaces-config": {
            "interfaces": ["eth0"]
        },
        "dhcp-disable": false,
        "option-def": [
            {
                "name": "domain-name-servers",
                "code": 6,
                "type": "ipv4-address",
                "array": true
            }
        ],
        "option-data": [
            {
                "name": "domain-name-servers",
                "data": "192.0.2.2, 192.0.2.3"
            }
        ],
        "failover": {
            "name": "dhcp-failover",
            "mode": "hot-standby",
            "peer-address": "192.0.2.101",
            "peer-port": 519,
            "max-response-delay": 60,
            "max-unacked-clients": 10000,
            "load-balance-max-percent": 50,
            "load-balance-max-secs": 3600,
            "auto-partner-down": true,
            "decline-time": 60,
            "down-time": 300,
            "startup-delay": 10,
            "trust-local-time": true,
            "heartbeat-interval": 10,
            "connect-timeout": 2
        }
    }
}
#sample example of HA
===================
{
    "Dhcp4": {
        "valid-lifetime": 3600,
        "renew-timer": 600,
        "rebind-timer": 1200,
        "subnet4": [
            {
                "subnet": "192.168.0.0/24",
                "pools": [
                    {
                        "pool": "192.168.0.100 - 192.168.0.200"
                    }
                ],
                "option-data": [
                    {
                        "name": "domain-name-servers",
                        "data": "8.8.8.8, 8.8.4.4"
                    },
                    {
                        "name": "domain-name",
                        "data": "example.com"
                    }
                ],
                "reservations": [
                    {
                        "hw-address": "00:11:22:33:44:55",
                        "ip-address": "192.168.0.10",
                        "hostname": "host1.example.com"
                    }
                ]
            }
        ],
        "interfaces-config": {
            "interfaces": ["eth0", "eth1"]
        },
        "ha": {
            "mode": "hot-standby",
            "ip-address": "192.168.0.2",
            "shared-secret": "my-secret",
            "peer-address": "192.168.0.3"
        }
    }
}

But when I search for the same in the official kea-doc. I don't see any
such reference to failover directive or a key-word. Not sure if it is not
supported from 2.2.0 version and later or I missed any other docs. Just
curious to know if we really have such a difference, and if any one is
familiar with this can you please share the reference for it.

Thanks in Advance
Kraishak
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.isc.org/pipermail/kea-users/attachments/20230306/776bf1dd/attachment.htm>


More information about the Kea-users mailing list