Full Kubernetes tutorial on Docker, KinD, kubectl, Helm, Prometheus, Grafana
This end-to-end tutorial covers the following:
* Setting up your first Kubernetes cluster with KinD
* Installing Docker Desktop, KinD, kubectl, Helm
* Installing the Kube Prometheus Stack Helm Chart that provides Grafana and Prometheus
* Understanding and customizing Helm Charts
* Showing you how the different components interact in your KinD cluster
* Port-forwarding an application
* Installing an application through Kubernetes YAML Manifests
* How Service and Deployments in Kubernetes interact
* How to use a ServiceMonitor for Prometheus
* Verify access to metrics in Prometheus
* Setting up a Grafana Dashboard
ALL OF THE ABOVE in this tutorial
Here is the blog post with the written version of everything covered in this video: https://anaisurl.com/full-kubernetes-tutorial/
Repository with the additional resources: https://github.com/Cloud-Native-Security/github-exporter/tree/main
-----------------------------------------------------------------------------------------------------------------------
Installation links for the different tools covered in this video:
* KinD Installation https://kind.sigs.k8s.io/docs/user/quick-start/#installation
* Docker Desktop installation for Mac: https://docs.docker.com/desktop/install/mac-install/
* Docker Desktop installation for Windows: https://docs.docker.com/desktop/install/windows-install/
* kubectl installation: https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/
* Helm installation: https://helm.sh/docs/intro/install/
-----------------------------------------------------------------------------------------------------------------------
Related Kubernetes tutorials that can be helpful to better understand the content covered in this video:
* Practical Introduction to Helm: https://youtu.be/hOaA_VYhKV8
* Create a Helm Chart For YOUR Application: https://youtu.be/dvQErXPnjtI
* Manage Your Helm Chart with Helm Commands: https://youtu.be/puuieUIRyjw
* Kubernetes Deployment: https://youtu.be/S39JmiFsheM
* Kubernetes Services: https://youtu.be/4_felE4hMog
* Kubernetes Pods: https://youtu.be/fCpv7xSEyEI
-----------------------------------------------------------------------------------------------------------------------
Additional Resources used in this video:
* Repository with the deployment resources: https://github.com/Cloud-Native-Security/github-exporter/tree/main
* 100 Days of Kubernetes repository mentioned: https://github.com/100daysofkubernetes/100DaysOfKubernetes
* The container image on my Docker Hub: https://hub.docker.com/r/anaisurlichs/gh-exporter/tags
* The kube-prometheus-stack Helm Chart: https://github.com/prometheus-community/helm-charts/tree/main/charts/kube-prometheus-stack
-----------------------------------------------------------------------------------------------------------------------
Weekly DevOps Newsletter:
* Subscribe to my Weekly DevOps Newsletter: https://anaisurl.com/newsletter/
-----------------------------------------------------------------------------------------------------------------------
🕒Timestamps🕒
00:00 - Introduction to the tutorial
02:00 - What's in the blog post
03:43 - Install Docker Desktop
05:41 - Docker Hub Overview
07:06 - KinD Kubernetes Installation
08:00 - Install Kubectl
08:52 - Create a Kubernetes Cluster
09:46 - Verify Kubernetes Installation
12:20 - Kubernetes Namespaces
15:53 - Installing Helm
18:08 - Understanding Helm Charts
21:02 - Installing the kube-prometheus-stack Helm Chart
22:55 - Customising the Helm Chart through values.yaml
26:15 - What are ServiceMonitors
32:20 - Installing the Helm Chart
33:42 - Deployments, Pods and Services
35:54 - Port-forwarding a Service
39:15 - Customising our Application Deployment
47:06 - How Services and Deployments are connected
50:18 - Creating a ServiceMonitor
54:04 - Querying Metrics in Prometheus
54:47 - Setting up our Grafana Dashboard
57:35 - Everything we did in this tutorial
59:39 - Outro