CKAD Certificering: de tweede stap naar Kubestronaut

Op 8 juli heb ik de CKAD certificering behaald. Mijn tweede certificering van de vijf voor de Kubestronaut titel. Na het afronden van de CKA certificering (lees mijn vorige blog) ben ik direct doorgegaan met CKAD. Ik had de smaak al te pakken en wilde direct mijn volgende certificaat behalen.

Wat is CKAD?

De CKAD certificering staat voor Certified Kubernetes Application Developer. Het doel van hiervan is om te laten zien dat je de vaardigheden hebt om applicaties te draaien in een Kubernetes omgeving. Denk hierbij aan het uitrollen van een applicatie, het koppelen van andere services in Kubernetes zoals een database maar ook de applicatie beschikbaar maken over het internet. Het gaat vooral om het toepassen van noodzakelijkheden en best-practices om het beste uit Kubernetes te halen voor je applicatie.

Zijn er overeenkomsten met CKA?

Ja er zijn zeker overeenkomsten tussen CKAD en CKA (Certified Kubernetes Administrator). Het verschil ligt hem in de focus tussen beide certificeringen. Bij CKA ben je heel erg bezig met de onderkant en achterkant van Kubernetes:

  • Clusters installeren en onderhouden
  • Clusters opschalen (nodes/VM’s/baremetal toevoegen)
  • Netwerk beheer
  • Opslag beheer
  • Clusters Operations
  • En nog veel meer

Bij de CKAD certificering ben je meer een gebruiker van de Kubernetes cluster. Je rolt een applicatie uit en die maakt gebruik van de opslag en het netwerk om zo over het internet beschikbaar te zijn. Je komt ook heel vaak dezelfde dingen tegen als een ontwikkelaar (CKAD) of beheerder (CKA) zoals: Pods, Deployments, ConfigMaps en Secrets. Alleen bij CKA duik je er veel dieper op in in de werking van al deze componenten.

Maar als je CKA al kent waarom doe je CKAD aangezien CKA er dieper op in gaat?

Dit is een vraag die ik mezelf ook heb gesteld. Omdat CKA veel dieper op de inhoud van Kubernetes gaat waarom heb je dan nog CKAD nodig. Je kent dan alle elementen toch al?

Hoewel het er op lijkt is dat toch niet zo. Beheer en gebruik van Kubernetes is wel anders. Met CKAD laat je zien dat je ook weet hoe je een applicatie zo goed mogelijk kan laten draaien binnen een Kubernetes omgeving en ook wat de best-practices zijn vanuit een developer perspectief.

Hoewel grotendeels dezelfde onderwerpen te pas komen zoals het gebruik maken van Secrets en ConfigMaps of het maken van een Deployment van je applicatie, denk je toch vanuit een ander perspectief. Als developer wil je dat je applicatie zo betrouwbaar mogelijk is en goed schaalbaar is met de mogelijkheden die Kubernetes biedt. Je wilt bijvoorbeeld niet dat er downtime is wanneer je applicatie crasht of teveel geheugen gebruikt en altijd beschikbaar is.

Een CKA zorgt er voor dat deze mogelijkheden beschikbaar zijn via de infrastructuur. En een CKAD gebruikt deze mogelijkheden om de applicaties altijd beschikbaar te maken en dat de applicaties zichzelf kunnen herstellen als het een keer uitvalt.

Een vergelijking die ik zelf prettig vind: stel je hebt een eigen restaurant. De CKA zorgt ervoor dat de keuken goed werkt, dat alle apparatuur aanwezig is en dat de omgeving klaarstaat. De CKAD is degene die met deze middelen de gerechten maakt en ervoor zorgt dat ze goed worden bereid en geserveerd.

Hoe heb ik me voorbereid

Als ik heel eerlijk moet zijn, ik heb niet veel gedaan aan de voorbereiding. Dit heeft meer te maken met mijn werkervaring als DevOps engineer. Ik heb heel veel applicaties ontwikkeld en op een Kubernetes omgeving neer gezet. En omdat ik recent ook CKA heb behaald was het voorbereiden voor CKAD niet al te veel werk.

Ik heb de cursus grotendeels overgeslagen waarbij onderwerpen voorbij kwamen die ik ook in de CKAD cursus had gekregen. Maar de onderwerpen waar ik wel meer aandacht had besteed waren Docker en Podman. Beide technologieën hebben te maken met het bouwen van container images waar Kubernetes dan weer gebruik van maakt.

Wat was je ervaring met de CKAD certificering?

De certificering zelf verliep soepeltjes. Ik had me aangemeld en moest de controle weer doen waarbij ik de gehele ruimte moest laten zien en ook de vloer en plafond. Daarnaast kreeg ik ook de vraag of ik mijn polsen kon laten zien omdat je geen horloge mag dragen. Ik kreeg ook het gevoel alsof mijn proctor een beetje haast had. Hij stuurde namelijk tien berichten achter elkaar met: “Kan je de onderkant van de tafel laten zien?”, “Kan je de muren laten zien?”, “Heb je drinken bij je in een doorzichtig glas?”. Het ging zo snel dat ik niet eens alle vragen had kunnen beantwoorden en ik kreeg al goedkeuring om het examen te doen in de virtuele desktop omgeving.

De examen bestond uit 21 vragen en duurde twee uur en ik knalde er zo doorheen. Tijdens het examen was er een meeting bezig buiten de kantoor maar de muur is van glas dus je kon wel wat horen. Uit het niets werd mijn examen ook op pauze gezet en kreeg ik een chat venster te zien met: “Wat is dat geluid?”. Ik heb toen uitgelegd dat er een meeting gaande was buiten en kreeg daarna gelijk weer een bericht terug met “Oke je mag weer verder.”.

Ik was hier wel van geschrokken. Omdat ik weet dat de proctors erg streng zijn, dacht ik dat ik het examen niet meer verder mocht maken. Gelukkig was er niets aan de hand en kon ik gewoon door gaan. Aan het eind had ik zelfs nog meer dan een half uur over.

Heeft de CKAD certificering daadwerkelijk wat toegevoegd?

Ja en nee. Hoewel het voor mij vooral een bevestiging was van hoe ik Kubernetes als Developer en DevOps gebruikte, heeft het hier en daar ook wat zaken toegevoegd. Deployment strategieen beter begrijpen, toch iets meer yaml structuur uit mijn hood kennen zonder complexere stukken op te zoeken zijn toch waarde volle zaken. Het enige reden waarom ik hem zou afraden is vooral omdat dit soort certificeringen een enorme commerciele praktijk is voor bedrijven erachter.

Mijn doel is het behalen van de Kubestronaut titel. Dan is de CKAD certificering een verplicht onderdeel er van. Maar je hoeft het natuurlijk niet te doen puur voor de Kubestronaut titel. Je kan het ook doen omdat je je vaardigheden als ontwikkelaar wilt verbeteren binnen Kubernetes. Het is financieel gezien ook een grote klap. Dus het is dan aan jezelf of je denkt dat je de waarde er uit kan halen.

Heb je nog tips voor CKAD?

De meeste vragen binnen CKAD hebben te maken met Ingress networking, Deployments/Pods, Storage/PVC en Secrets. Als het mogelijk is voor jezelf om een mini Kubernetes cluster op te richten waar je mee kan spelen dan kan je daar een aantal Pods uitrollen zoals een database en een web app en dat met elkaar koppelen. Als je geen ervaring hebt met Kubernetes clusters opzetten dan helpen wij jou graag hier bij Softwaredam.

Wat is de volgende stap in je Kubestronaut avontuur?

Er zijn nog drie certificeringen die behaald moeten worden:

  • Kubernetes and Cloud Native Associate (KCNA)
  • Kubernetes and Cloud Security Associate (KCSA)
  • Certified Kubernetes Security Specialist (CKS)

Zelf vind ik de security onderwerpen heel lastig dus ik denk dat ik CKS als eerst ga doen. Dan heb ik de welbekende Kubernetes Trifecta (CKA, CKAD, CKS) certificeringen behaald.

Next stop: CKS!

Kant-en-klare Kubernetes nodig?

Bij Softwaredam kunnen we je kleine en grote Kubernetes clusters bieden. Allemaal op de Europese bodem. Geschikt voor oefenen, CICD loads, of juist je productie applicaties op hosten. En we helpen je ook met integratie en onboarding!