Mijn reis door onze 3-daagse OpenShift-training
Onlangs volgde ik samen met een aantal collega’s op ons kantoor Amersfoort een driedaagse training over OpenShift die gegeven werd door Jeroen van Hoof. Het was een leerzame reis door de wereld van Kubernetes en OpenShift, vol interessante theorie en hands-on praktijkoefeningen. Deze training was bedoeld voor zowel beginners als ervaren professionals. De training bood ons kennis over containerorkestratie en gaf ons ook een goed beeld van hoe OpenShift het werk van ontwikkelaars en beheerders vergemakkelijkt.
Dag 1: Fundamenten en Installatie
De eerste dag begon met een warm welkom en een introductie tot Kubernetes. Kubernetes, vaak afgekort als K8s, is een krachtig open-source platform dat speciaal is ontworpen om containerworkloads te beheren.
Onze trainer, Jeroen van Hoof, legde uit hoe Kubernetes applicaties beheert door middel van pods, de kleinste uitvoerbare eenheid in Kubernetes. Een pod kan bestaan uit één of meerdere containers die dezelfde netwerk- en opslagruimte delen. We leerden dat Kubernetes werkt met declaratieve YAML-configuraties waarmee de gewenste staat van resources wordt vastgelegd. Het bijzondere aan Kubernetes is de zelfherstellende capaciteit: als een pod faalt, zorgt Kubernetes ervoor dat deze automatisch opnieuw wordt gestart.
Na deze introductie maakten we kennis met de architectuur van Kubernetes. Het Control Plane vormt het hart van een Kubernetes-cluster en is verantwoordelijk voor het beheren van de clusterstatus. Componenten zoals de kube-apiserver en etcd slaan gegevens op en coördineren workloads, terwijl de Worker Nodes zorgen voor het uitvoeren van de containers.
Toen eenmaal de basis was uitgelegd, kwamen we tot het hoofdonderwerp: OpenShift. Jeroen beschreef OpenShift als “Enterprise Kubernetes” – een platform dat is gebouwd op Kubernetes, maar met extra functionaliteiten voor grootschalige, zakelijke toepassingen. OpenShift biedt bijvoorbeeld een geïntegreerde container registry, ingebouwde CI/CD-tools, en uitgebreide beveiligingsopties. De hands-on oefening voor deze dag draaide om het installeren van een OpenShift-cluster. Dit kon op twee manieren:
- Installer-Provisioned Infrastructure (IPI), waarbij de installatie volledig geautomatiseerd verloopt.
- User-Provisioned Infrastructure (UPI), voor meer maatwerk en controle.
Jeroen heeft zijn demo-cluster geïnstalleerd met de laatste manier
Dag 2: Netwerken en Opslag
Deze dag begon met het beantwoorden van vragen van de eerste dag – een mooie manier om te zorgen dat niemand achterbleef. Vervolgens doken we dieper in de wereld van netwerken en opslag. Onze trainer benadrukte dat OpenShift’s Software Defined Networking (SDN) één van de sterkste punten van het platform is. Met opties zoals ovs-subnet en ovs-multitenant kun je eenvoudig bepalen hoe pods onderling communiceren en hoe je netwerken kunt isoleren.
Eén van de oefeningen van de dag was het configureren van netwerkpolicies. Dit voelde een beetje als het opstellen van verkeersregels voor pods – welke pods mogen met elkaar praten, en welke niet? Het was een mooie oefening in logisch nadenken en probleemoplossing.
Opslag was een ander belangrijk onderwerp van de dag. We leerden over Persistent Volumes (PV) en Persistent Volume Claims (PVC), en hoe deze samenwerken om langdurige opslag voor applicaties mogelijk te maken. Een leuke analogie die onze trainer gebruikte, was dat PV’s fungeren als een opslagruimte die iedereen kan gebruiken, terwijl PVC’s als sleutels zijn die toegang geven tot specifieke opslagruimtes.
Daarnaast maakten we kennis met Source-to-Image (S2I). Dit is een unieke functionaliteit van OpenShift waarmee je automatisch container images kunt bouwen van broncode. Het was indrukwekkend om te zien hoe snel en naadloos dit proces verliep.
Dag 3: Beveiliging, Monitoring en Het Vernietigen van het Cluster
De derde dag stond in het teken van beveiliging en schaalbaarheid. Onze trainer legde uit dat OpenShift een zero-trust beveiligingsmodel hanteert. Dit betekent dat alle verbindingen moeten worden geauthenticeerd en geautoriseerd. We leerden over Role-Based Access Control (RBAC), waarmee je toegangsrechten kunt beheren op basis van rollen. Een van de belangrijkste lessen van de dag was het minimaliseren van privileges binnen containers en het gebruik van read-only root-bestandssystemen.
Monitoring en logging kwamen ook aan bod. Tools zoals Prometheus en Fluentd maken het eenvoudig om statistieken en logs van het cluster te verzamelen en te analyseren. Het was fascinerend om te zien hoe je met een paar configuraties een volledig inzicht kunt krijgen in de gezondheid van je cluster.
Het hoogtepunt van de dag, en misschien wel van de hele training, was het gezamenlijke vernietigen van het cluster. Dit proces duurde slechts zes minuten en liet ons zien hoe eenvoudig het is om resources op te ruimen in OpenShift. Er bleef niets over behalve een lege resource group – een bewijs van de efficiëntie van het platform.
Mijn reis door onze 3-daagse OpenShift-training
Onlangs volgde ik samen met een aantal collega’s op ons kantoor Amersfoort een driedaagse training over OpenShift die gegeven werd door Jeroen van Hoof. Het was een leerzame reis door de wereld van Kubernetes en OpenShift, vol interessante theorie en hands-on praktijkoefeningen. Deze training was bedoeld voor zowel beginners als ervaren professionals. De training bood ons kennis over containerorkestratie en gaf ons ook een goed beeld van hoe OpenShift het werk van ontwikkelaars en beheerders vergemakkelijkt.
Dag 1: Fundamenten en Installatie
De eerste dag begon met een warm welkom en een introductie tot Kubernetes. Kubernetes, vaak afgekort als K8s, is een krachtig open-source platform dat speciaal is ontworpen om containerworkloads te beheren.
Onze trainer, Jeroen van Hoof, legde uit hoe Kubernetes applicaties beheert door middel van pods, de kleinste uitvoerbare eenheid in Kubernetes. Een pod kan bestaan uit één of meerdere containers die dezelfde netwerk- en opslagruimte delen. We leerden dat Kubernetes werkt met declaratieve YAML-configuraties waarmee de gewenste staat van resources wordt vastgelegd. Het bijzondere aan Kubernetes is de zelfherstellende capaciteit: als een pod faalt, zorgt Kubernetes ervoor dat deze automatisch opnieuw wordt gestart.
Na deze introductie maakten we kennis met de architectuur van Kubernetes. Het Control Plane vormt het hart van een Kubernetes-cluster en is verantwoordelijk voor het beheren van de clusterstatus. Componenten zoals de kube-apiserver en etcd slaan gegevens op en coördineren workloads, terwijl de Worker Nodes zorgen voor het uitvoeren van de containers.
Toen eenmaal de basis was uitgelegd, kwamen we tot het hoofdonderwerp: OpenShift. Jeroen beschreef OpenShift als “Enterprise Kubernetes” – een platform dat is gebouwd op Kubernetes, maar met extra functionaliteiten voor grootschalige, zakelijke toepassingen. OpenShift biedt bijvoorbeeld een geïntegreerde container registry, ingebouwde CI/CD-tools, en uitgebreide beveiligingsopties. De hands-on oefening voor deze dag draaide om het installeren van een OpenShift-cluster. Dit kon op twee manieren:
- Installer-Provisioned Infrastructure (IPI), waarbij de installatie volledig geautomatiseerd verloopt.
- User-Provisioned Infrastructure (UPI), voor meer maatwerk en controle.
Jeroen heeft zijn demo-cluster geïnstalleerd met de laatste manier
Dag 2: Netwerken en Opslag
Deze dag begon met het beantwoorden van vragen van de eerste dag – een mooie manier om te zorgen dat niemand achterbleef. Vervolgens doken we dieper in de wereld van netwerken en opslag. Onze trainer benadrukte dat OpenShift’s Software Defined Networking (SDN) één van de sterkste punten van het platform is. Met opties zoals ovs-subnet en ovs-multitenant kun je eenvoudig bepalen hoe pods onderling communiceren en hoe je netwerken kunt isoleren.
Eén van de oefeningen van de dag was het configureren van netwerkpolicies. Dit voelde een beetje als het opstellen van verkeersregels voor pods – welke pods mogen met elkaar praten, en welke niet? Het was een mooie oefening in logisch nadenken en probleemoplossing.
Opslag was een ander belangrijk onderwerp van de dag. We leerden over Persistent Volumes (PV) en Persistent Volume Claims (PVC), en hoe deze samenwerken om langdurige opslag voor applicaties mogelijk te maken. Een leuke analogie die onze trainer gebruikte, was dat PV’s fungeren als een opslagruimte die iedereen kan gebruiken, terwijl PVC’s als sleutels zijn die toegang geven tot specifieke opslagruimtes.
Daarnaast maakten we kennis met Source-to-Image (S2I). Dit is een unieke functionaliteit van OpenShift waarmee je automatisch container images kunt bouwen van broncode. Het was indrukwekkend om te zien hoe snel en naadloos dit proces verliep.
Dag 3: Beveiliging, Monitoring en Het Vernietigen van het Cluster
De derde dag stond in het teken van beveiliging en schaalbaarheid. Onze trainer legde uit dat OpenShift een zero-trust beveiligingsmodel hanteert. Dit betekent dat alle verbindingen moeten worden geauthenticeerd en geautoriseerd. We leerden over Role-Based Access Control (RBAC), waarmee je toegangsrechten kunt beheren op basis van rollen. Een van de belangrijkste lessen van de dag was het minimaliseren van privileges binnen containers en het gebruik van read-only root-bestandssystemen.
Monitoring en logging kwamen ook aan bod. Tools zoals Prometheus en Fluentd maken het eenvoudig om statistieken en logs van het cluster te verzamelen en te analyseren. Het was fascinerend om te zien hoe je met een paar configuraties een volledig inzicht kunt krijgen in de gezondheid van je cluster.
Het hoogtepunt van de dag, en misschien wel van de hele training, was het gezamenlijke vernietigen van het cluster. Dit proces duurde slechts zes minuten en liet ons zien hoe eenvoudig het is om resources op te ruimen in OpenShift. Er bleef niets over behalve een lege resource group – een bewijs van de efficiëntie van het platform.