[Kea-users] kea 2.0.3 dhcp4 HA not working
vom513
vom513 at gmail.com
Thu Apr 20 02:54:03 UTC 2023
Hello all,
With the deprecation of the ISC dhcpd - I figured I’d try to get ahead of things a bit and at least lab up some boxes to work on Kea.
I have 2 x Debian 11 (bullseye) VMs using the cloudsmith packages (2.0.3 for Kea), 2 NICs each. I serve DHCP on NIC 2 only. All my ctrl-agent etc. traffic is on NIC 1.
I mainly used:
https://kea.readthedocs.io/en/kea-2.2.0/arm/config-templates.html?highlight=ha#template-home-network-of-a-power-user
As a guide...
I’m using hot-standby. I also have Stork + agents installed and all looks great in Stork. When both boxes are up, kea-1 serves DHCP, kea-2 sits in standby mode as expected.
I stopped kea-dhcp4 service on kea-1. I saw messages in Stork that this happened (again as expected). However if I went to app status, the standby server never seemed to take over. It did (eventually) pop up a Notes section that said it was “in progress” for failover - and it stuck at 8%. Clients could not get a lease at this time.
I found this issue from a few years ago which sounded like what I’m seeing:
https://gitlab.isc.org/isc-projects/kea/-/issues/1364
So after reading that - I also shut down the ctrl-agent on kea-1 (which I wouldn’t think should be necessary - if the dhcp4 service is dead the peer should know this yes ?)
Still not really any change. Still not serving leases.
I run Stork on kea-1 (so Stork and kea-* is running on the same box). After having shutdown kea-dhcp4 and the ctrl-agent - Stork start dying and restarting:
Apr 19 22:15:01 kea-1 stork-server[16020]: time="2023-04-19 22:15:01" level="warning" msg="Problem getting state from Kea daemons: problem with version-get response: Failed to forward commands to Kea: problem sending POST to http://192.168.64.177:8000/: Post \"http://192.168.64.177:8000/\": dial tcp 192.168.64.177:8000: connect: connection refused" file=" appkea.go:300 "
Apr 19 22:15:01 kea-1 stork-server[16020]: panic: runtime error: invalid memory address or nil pointer dereference
Apr 19 22:15:01 kea-1 stork-server[16020]: [signal SIGSEGV: segmentation violation code=0x1 addr=0x28 pc=0xec7ac4]
Not nearly as concerned with that as leases not being served…
I completely shut kea-1 down - still no change - no leases being served.
I’ve tried to minimize my config. In other words, if something is default that looks reasonable (most things do to me) I omit it from the config. My configs are identical other than "this-server-name”.
Thanks in advance for any help. kea-1 config below:
{
"Dhcp4": {
"interfaces-config": {
"interfaces": [ "ens224" ]
},
"control-socket": {
"socket-type": "unix",
"socket-name": "/tmp/kea4-ctrl-socket"
},
"lease-database": {
"type": "memfile”,
"persist": true,
"name": "/var/lib/kea/kea-leases4.csv"
},
"renew-timer": 43200,
"rebind-timer": 75600,
"valid-lifetime": 86400,
"reservation-mode": "out-of-pool",
"option-data": [
],
"hooks-libraries": [
{
"library": "/usr/lib/x86_64-linux-gnu/kea/hooks/libdhcp_lease_cmds.so"
},
{
"library": "/usr/lib/x86_64-linux-gnu/kea/hooks/libdhcp_stat_cmds.so"
},
{
"library": "/usr/lib/x86_64-linux-gnu/kea/hooks/libdhcp_ha.so",
"parameters": {
"high-availability": [ {
"this-server-name": "kea-1",
"mode": "hot-standby",
"peers": [
{
"name": "kea-1",
"url": "http://192.168.64.177:8000/",
"role": "primary"
},
{
"name": "kea-2",
"url": "http://192.168.64.186:8000/",
"role": "standby"
}
]
} ]
}
}
],
"subnet4": [
{
"subnet": "10.0.123.0/24",
"pools": [ { "pool": "10.0.123.128 - 10.0.123.254" } ],
"option-data": [
{
"name": "routers",
"data": "10.0.123.1"
},
{
"name": "domain-name-servers",
"data": "192.168.64.1, 192.168.64.53"
},
{
"name": "ntp-servers",
"data": "192.168.64.1"
}
],
"reservations": [
{
"hw-address": "01:02:03:04:05:06",
"ip-address": "10.0.123.123"
}
]
}
],
"loggers": [
{
"name": "kea-dhcp4",
"output_options": [
{
"output": "syslog",
"pattern": "%-5p %m\n"
}
],
"severity": "WARN",
"debuglevel": 0
},
{
"name": "kea-dhcp4.leases",
"output_options": [
{
"output": "syslog",
"pattern": "%-5p %m\n"
}
],
"severity": "INFO",
"debuglevel": 0
}
]
}
}
More information about the Kea-users
mailing list