This image contains a few handy Kubernetes utilities.
jq. With those tools, you can write shell scripts that do a lot with the Kubernetes API.
Like Service resources, Ingress resources can have
loadBalancer section in their status that is supposed to be set to the external hostname to reach the ingress controller. However, Ingress controllers are not aware when they are running behind an external load balancer and may not set this correctly for the Ingresses they manage. This tool will watch for Ingresses and update their
loadBalancer status to match that of a given
fix-ingress-lb INGRESS-CONTROLLER-SERVICE-NAMESPACE INGRESS-CONTROLLER-SERVICE-NAME [INGRESS-CLASS]
This will adjust any Ingresses in the given
INGRESS_CLASS (or all Ingresses if none specified) to have the same
loadBalancer status as the given
Example Deployment to run fix-ingress-lb inside your cluster:
apiVersion: extensions/v1beta1 kind: Deployment metadata: generation: 1 labels: app: fix-ingress-lb name: fix-ingress-lb spec: replicas: 1 selector: matchLabels: app: fix-ingress-lb strategy: type: Recreate template: metadata: labels: app: fix-ingress-lb spec: restartPolicy: Always containers: - name: fix-ingress-lb image: fpco/kube-utils:1.5.3 imagePullPolicy: IfNotPresent args: - fix-ingress-lb - default - traefik-ingress-controller