Evolution of application deployment over the past 20 years.
Configure your local and remote lab environments.
Covers the resource types that are included with Kubernetes.
•Pod
•Job
Using helm to manage Kubernetes resources
Example microservice application.
Kubernetes manifests to deploy the demo application.
Explore how custom resources can add functionality
Install additional software to enhance the deployment.
Improving the DevX when working with Kubernetes.
How to safely upgrade your clusters and nodes.
Implement CI/CD for your applications (with GitOps!)
Kubernetes revolves around the ideas of Declarative State and Continuous Reconciliation. While core resources such as Pods
and Deployments
cover common use cases, you can define your own resource types to automate almost anything.
A CustomResourceDefinition
(CRD) registers a new kind with the API server. Once applied, objects created from that CRD are stored in etcd
alongside the built‑in resources.
# list CRDs installed in the cluster
kubectl get crd | head
Many projects ship multiple CRDs. After installing the Traefik ingress controller you will find resources such as IngressRoute
and Middleware
:
kubectl api-resources | grep traefik.containo.us/v
These extra objects allow Traefik to express advanced routing features that go beyond the standard ingress spec.
Custom resources become powerful when paired with controllers—often called operators—that act on them. Operators observe the Kubernetes API and reconcile desired state whenever resources change. Common examples include:
Certificate
and Challenge
resourcesFrameworks such as Kubebuilder, Operator SDK and MetaController help scaffold these controllers.
Below is a trimmed down example of Traefik's IngressRoute
to illustrate the structure of a CRD-managed resource:
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
name: example-route
spec:
entryPoints:
- web
routes:
- match: Host(`example.com`)
kind: Rule
services:
- name: my-service
port: 80
You can explore the full manifests and hands‑on exercises in the course repository.