Enable the Kubernetes DHCP Service
Before you start
- You need cluster administration access and a configured LoadBalancer provider.
- You need the planned DHCP address.
- You need the complete values file for your existing Helm release.
Update the deployment
Keep client DHCP traffic away from kudurru until the final cutover. Do not enable the router relay yet.
Upgrade the
kudurru-crdschart to the same version as kudurru.Add this section to your existing values file:
dhcp: enabled: true serverAddress: 10.200.200.67 service: type: LoadBalancer externalTrafficPolicy: Local annotations: metallb.io/loadBalancerIPs: 10.200.200.67The annotation is for MetalLB. Use your provider's address allocation method if you use another provider. Keep
externalTrafficPolicy: Localto preserve relay source addresses. Do not enablehostNetworkfor this mode.Apply the complete values through your existing Helm or GitOps workflow.
For a Helm-managed release named
kudurru, the commands are:helm upgrade --install kudurru-crds oci://ghcr.io/robertherbaugh/charts/kudurru-crds --version 0.1.0 helm upgrade kudurru oci://ghcr.io/robertherbaugh/charts/kudurru --version 0.1.0 \ --namespace kudurru-system --values kudurru-values.yamlUse your release names and namespace.
kudurru-values.yamlmust include your current settings, including replica count and any Secret references. The installer needs permission to create the chart's admission policy and RBAC.Read the DHCP Service:
kubectl -n kudurru-system get service kudurru-dhcp
Check the result
The Service shows your planned EXTERNAL-IP and 67:…/UDP under PORT(S).
If the address stays <pending>, fix the LoadBalancer allocation before you continue.
The elected serving replica becomes a Service endpoint after a scope is ready.
Continue to Configure the router relay.