In the previous post, Learn Kubernetes part 2 – NGINX Ingress Controller, we have deployed a web application and exposed it via the kubernetes/ingress-nginx ingress controller. In this exercise we will use Traefik, another popular proxy server. Traefik is widely used for multiple reasons: it is easier to configure, can automatically generate and renew SSL […]
Large organizations need to control the incoming traffic to the Kubernetes cluster. The most secure way is to use an ingress controller and create an ingress to channel all incoming traffic to the cluster. In Learn Kubernetes part 1 – Web application in a Kubernetes cluster we have created a simple web application pod and […]
This is the official Kubernetes dashboard, and for security reasons currently it is not recommended to use, but we can still use it in our local cluster to inspect the resources. The latest installation information is at https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/ Launch the Kubernetes Dashboard To launch the Kubernetes Dashboard in your cluster execute the command Create a […]
Use the ingress-nginx Kubernetes plugin to troubleshoot the Kubernetes Ingress-Nginx. Install krew, the Kubernetes plugin manager. See https://github.com/kubernetes-sigs/krew See Kubernetes Ingress-Nginx Troubleshooting made Easy with kubectl plugins Verify the cluster you are connected to To switch to another cluster Get the address of the cluster Get the list of pods Forward a port to the […]
This is a tutorial to script a simple web application deployment in an enterprise grade Kubernetes cluster that you can follow on your Macintosh. You only need to install Docker and enable Kubernetes. The frontend of the web application is represented by an NGINX container that listens on port 80 and returns the NGINX default […]
Helm takes values that we pass into the Helm deployments and transforms a template (also known as a chart) to Kubernetes resources. It is a wrapper around Kubernetes resources. It calls kubectl in the background to create the resources on the fly.
For security reasons it is not a good practice to create individual load balancers for each service. The safer way is to create one application load balancer outside of the cluster and launch ingress controller NGINX containers to proxy the traffic to the individual services. Ingress “Ingress exposes HTTP and HTTPS routes from outside the […]
Kubernetes provides ways to check the health of pods. Liveness and Readiness Probes can monitor the health of the pods. We can specify an address in the pod what Kubernetes can curl and if 200 http response code is returned, the pod is considered healthy.
A pod can contain one or multiple containers, usually one. Kubernetes only recommends to launch multiple containers in a pod, when those containers need to share a volume. For example a syslog-ng container saves log files in a volume, a Splunk Heavy Forwarder container monitors them and sends the log entries to the Splunk Indexer. […]
You only need a deployment to launch a container in Kubernetes. Deployments tell Kubernetes what container to run by specifying the Docker image name and tag spec: template: spec: containers: – image: when to pull the image from the registry spec: template: spec: containers: imagePullPolicy: If the image is always rebuilt with the same version, […]