3 min read
On a kubernetes cluster you might find the following error:
$ kubectl apply -f ingress.yaml
Error from server (InternalError): error when creating "ingress": Internal error occurred: failed calling webhook "validate.nginx.ingress.kubernetes.io": Post https://ingress-nginx-controller-admission.ingress-nginx.svc:443/networking/v1beta1/ingresses?timeout=10s: service "ingress-nginx-controller-admission" not found
26/02/2021
Read more...2 min read
In kubernetes it has become common practice to use objects that are not yet GA, for instance: The Kubernetes team graduated the Ingress API to general availability (GA) in the 1.19 release (September 25th, 2020): it was first introduced in 2015. But there's one drawback that we really need to be aware: Using a alpha or beta API means that the interface might change and, for Ingress, it did change.
Let's take this Ingress yaml using extensions/v1beta1 as an example:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: beta-ingress
annotations:
kubernetes.io/ingress.class: alb
alb.ingress.kubernetes.io/scheme: internal
alb.ingress.kubernetes.io/target-type: ip
spec:
rules:
- http:
paths:
- backend:
serviceName: example
servicePort: 8080
path: /*
If we try to apply it on a 1.19+ kubernetes cluster, we will get a warning message like this:
$ kubectl apply -f beta-ingress.yaml
Warning: extensions/v1beta1 Ingress is deprecated in v1.14+, unavailable in v1.22+; use networking.k8s.io/v1 Ingress
ingress.extensions/testingress created
25/02/2021
Read more...4 min read
When you upgrade your application using helm what it really does is to just apply the deployments and other objects upgrades. If your new deployment fails to start for some reason (such as missing image) you won't notice it until you actually check the kubernetes cluster.
Helm install and upgrade commands include a couple of options to assist in checking the deployments: --wait and --timeout
24/02/2021
Read more...2 min read
When we create a deployment we set how many replicas want for that pod but what happens if we delete on of the pods?
23/02/2021
Read more...2 min read
Some apps might rely on the host Header to deliver the right content. For example, is quite common for django apps to require an specific host header in order to sent a response. Lucky enough for these kind of applications, we can actually configure livenessProbe and readinessProbe to send a Host header
22/02/2021
Read more...