How to get health checks to work on Kubernetes load balancer

May 2, 2019 356 views
Kubernetes Load Balancing

Hi,
Please tell me how to get health checks to work on a load balancer which is used by Kubernetes. I am running DOs managed Kubernetes service and spawned a Load Balancer service which has created an external load balancer, however when I hit the IP via HTTP I get a 503 gateway.
When I check the health statuses of the nodes, they appear down.

Any help would be much appreciated. This is my yml for the service:

apiVersion: v1
kind: Service
metadata:
  name: wordpress
  labels:
    app: wordpress
  annotations:
    service.beta.kubernetes.io/do-loadbalancer-protocol: "http"
    service.beta.kubernetes.io/do-loadbalancer-healthcheck-path: "/health"
spec:
  type: LoadBalancer
  externalTrafficPolicy: Local
  ports:
  # the port the service serves on
    - port: 80
  selector:
    app: wordpress
    tier: frontend
1 Answer

Problem solved: After executing kubectl exec -it pod-name-1234 sh, I used top to see Apache wasn't running in my applications container. After checking the image, I noticed Apache was never going to run as it wasn't included in the container build.
Included Apache, problem solved after applying the new deployment yaml file.

Have another answer? Share your knowledge.