MetalLB throws error: context deadline exceeded

Hi!

I am trying to setup metallb on my Raspberry Pi microk8s cluster, but when I do “enable” I get this output:

kdc@kdc-node-1:~ $ microk8s enable metallb:10.10.0.240-10.10.0.250
Infer repository core for addon metallb
Enabling MetalLB
Applying Metallb manifest
customresourcedefinition.apiextensions.k8s.io/addresspools.metallb.io created
customresourcedefinition.apiextensions.k8s.io/bfdprofiles.metallb.io created
customresourcedefinition.apiextensions.k8s.io/bgpadvertisements.metallb.io created
customresourcedefinition.apiextensions.k8s.io/bgppeers.metallb.io created
customresourcedefinition.apiextensions.k8s.io/communities.metallb.io created
customresourcedefinition.apiextensions.k8s.io/ipaddresspools.metallb.io created
customresourcedefinition.apiextensions.k8s.io/l2advertisements.metallb.io created
namespace/metallb-system created
serviceaccount/controller created
serviceaccount/speaker created
clusterrole.rbac.authorization.k8s.io/metallb-system:controller configured
clusterrole.rbac.authorization.k8s.io/metallb-system:speaker configured
role.rbac.authorization.k8s.io/controller created
role.rbac.authorization.k8s.io/pod-lister created
clusterrolebinding.rbac.authorization.k8s.io/metallb-system:controller unchanged
clusterrolebinding.rbac.authorization.k8s.io/metallb-system:speaker unchanged
rolebinding.rbac.authorization.k8s.io/controller created
secret/webhook-server-cert created
service/webhook-service created
rolebinding.rbac.authorization.k8s.io/pod-lister created
daemonset.apps/speaker created
deployment.apps/controller created
validatingwebhookconfiguration.admissionregistration.k8s.io/validating-webhook-configuration created
Waiting for Metallb controller to be ready.
deployment.apps/controller condition met
Error from server (InternalError): error when creating "STDIN": Internal error occurred: failed calling webhook "ipaddresspoolvalidationwebhook.metallb.io": failed to call webhook: Post "https://webhook-service.metallb-system.svc:443/validate-metallb-io-v1beta1-ipaddresspool?timeout=10s": context deadline exceeded
Error from server (InternalError): error when creating "STDIN": Internal error occurred: failed calling webhook "l2advertisementvalidationwebhook.metallb.io": failed to call webhook: Post "https://webhook-service.metallb-system.svc:443/validate-metallb-io-v1beta1-l2advertisement?timeout=10s": context deadline exceeded
Failed to create default address pool, will retry

Does anyone know how to solve this? :slight_smile:

Thanks in advance!
Best regards Max

I changed the configfile to Ignore fails, seems to work. I have now got External IP on my load balancer. Te nodes have the ip range 10.10.0.150-10.10.0.150 and I set my loadbalancer to 10.10.0.240. But I cannot seem to be able to reach the loadbalancer from my local network, but I can access the pods on each node.

If I do http://10.10.0.150:30935 (which is the node port I belive) I get a propper response form my webserver. But if I do https://10.10.0.240:30935 I just get a timeout…

Here are my services:

NAME         TYPE           CLUSTER-IP       EXTERNAL-IP   PORT(S)                                                      AGE
kubernetes   ClusterIP      10.152.183.1     <none>        443/TCP                                                      39h
solar        LoadBalancer   10.152.183.217   10.10.0.240   11111:30141/TCP,30000:31362/TCP,80:32236/TCP,443:30935/TCP   130m

How did you changed the config file to Ignore fails. Can you please guide me the steps?