For nylig bestod jeg eksamen som Certified Kubernetes Application Developer (CKAD) og fik mit certifikat. I dag vil jeg fortÊlle om selve certificeringsproceduren og hvordan jeg forberedte mig. For mig var det en interessant oplevelse at tage eksamen online under nÞje overvÄgning af en eksaminator. Her vil der ikke vÊre vÊrdifuld teknisk information, artiklen har udelukkende et narrativt prÊg. Jeg havde heller ikke stor erfaring med Kubernetes, og jeg forberedte mig ikke sammen med kolleger; jeg studerede og trÊnede selv i min fritid.
Jeg er relativt ny inden for webudvikling, men jeg indsÄ hurtigt, at man ikke kommer langt uden i det mindste grundlÊggende viden om Docker og K8s. At tage et kursus og forberede sig til en sÄdan eksamen virkede som en god indgang til verden af containere og deres orkestrering.
Hvis du stadig tror, at Kubernetes er for svÊrt, og at det ikke er for dig, sÄ lÊs videre.
Hvad er det?
Der er to typer certificeringer for Kubernetes fra Cloud Native Computing Foundation (CNCF):
- Certified Kubernetes Application Developer (CKAD) â tester evnen til at designe, oprette, konfigurere og offentliggĂžre cloud native-applikationer til Kubernetes. Eksamen varer 2 timer og bestĂ„r af 19 opgaver, og bestĂ„elsesgrĂŠnsen er 66%. Der krĂŠves ret overfladisk viden om de grundlĂŠggende primitivere. Prisen er $300.
- Certified Kubernetes Administrator (CKA) â tester fĂŠrdigheder, viden og kompetencer til at udfĂžre opgaverne som Kubernetes-administrator. Eksamen varer 3 timer og bestĂ„r af 24 opgaver, og bestĂ„elsesgrĂŠnsen er 74%. Der krĂŠves mere dybtgĂ„ende viden om opbygning og konfiguration af systemer. Prisen er ogsĂ„ $300.
CKAD- og CKA-certificeringsprogrammerne blev udviklet af Cloud Native Computing Foundation med det formÄl at udvide Kubernetes-Þkosystemet gennem standardiseret uddannelse og certificering. Denne fond blev oprettet af Google i samarbejde med Linux Foundation, som tidligere har fÄet Kubernetes som et oprindeligt teknologisk bidrag, og som stÞttes af virksomheder som Microsoft, Apple, Facebook, Cisco, Intel, Red Hat og mange andre (c) Wiki.
Kort sagt, dette er eksamener fra den 'primÊre organisation' for Kubernetes. SelvfÞlgelig er der ogsÄ certificeringer fra andre firmaer.
Hvorfor?
Det er muligvis det mest kontroversielle punkt i hele denne idĂ©. Jeg Ăžnsker ikke at starte en offentlig debat om nĂždvendigheden af certifikater; jeg vil blot gerne tro, at eksistensen af en sĂ„dan certificering positivt vil pĂ„virke min markedsvĂŠrdi. Alt er subjektivt â man ved aldrig, hvad der prĂŠcist vil vĂŠre det afgĂžrende Ăžjeblik for at blive ansat.
PS: Jeg leder ikke efter arbejde, jeg er tilfreds med min nuvÊrende situation⊠mÄske bortset fra en eventuel relokation til USA.
Forberedelse
I CKAD-testen er der 19 spÞrgsmÄl fordelt pÄ fÞlgende emner:
- 13% â Kernekoncepter
- 18% â Konfiguration
- 10% â Multi-Container Pods
- 18% â Observabilitet
- 20% â Pod-design
- 13% â Tjenester & NetvĂŠrk
- 8% â Tilstandsbestemte data
PÄ Udemy-platformen er der et fantastisk kursus af en inder ved navn Mumshad Mannambeth (linket vil blive givet i slutningen af artiklen). Rigtig kvalitetsmateriale til en lav pris. IsÊr fantastisk er det, at man undervejs i kurset kan udfÞre praktiske opgaver i et testmiljÞ, sÄ man opbygger fÊrdigheder i at arbejde i konsollen.
Jeg gennemgik hele kurset og lÞste alle praktiske opgaver (selvfÞlgelig var jeg nÞdt til at kigge pÄ svarene indimellem), og lige fÞr eksamen genlÊsede jeg alle lektioner i hÞjere hastighed og tog to prÞvetests (mock exams) igen. Det tog mig cirka en mÄned i et roligt tempo. Dette materiale var rigeligt for mig til sikkert at bestÄ eksamen med en score pÄ 91%. I en opgave lavede jeg en fejl (NodePort fungerede ikke), og jeg manglede et par minutter til at fuldfÞre en anden opgave med at tilslutte ConfigMap fra en fil, selvom jeg vidste, hvordan man skulle gÞre det.
SÄdan foregÄr eksamen
Eksamen foregÄr i en browser med tÊndt webcam og delt skÊrm. Eksamenreglerne krÊver, at der ikke er fremmede i rummet. Jeg tog eksamen, da der allerede var indfÞrt en selvstÊndig isolation i landet, sÄ det var vigtigt for mig at finde et stille tidsrum, sÄ min kone ikke kom ind eller mit barn ikke rÄbte. Jeg valgte den sene nat; heldigvis er der fleksibilitet i valg af tidspunkt.
I starten krĂŠver eksaminatoren, at du viser dit primĂŠre ID, der indeholder foto og navn (pĂ„ latin) â mit var et pas, og jeg blev bedt om at dreje webcamet mod mit arbejdsbord og rummet for at sikre, at der ikke var fremmede genstande.
Under eksamen er det tilladt at holde en anden browserfane Ă„ben med en af ressourcerne:â,â eller â. Jeg brugte dokumentationen, den var helt tilstrĂŠkkelig.
I hovedvinduet, bortset fra opgavebeskederne, terminalen og chatten med eksaminatoren, er der et vindue til noter, hvor man kan kopiere vigtige navne eller kommandoer - det kom jeg et par gange til nytte.
Tips
- Brug aliaser for at spare tid. Her er hvad jeg brugte:
export ns=default # variabel for namespace alias ku='kubectl' # forkorter hovedkommandoen alias kun='ku -n=$ns' # kubectl + namespace alias kudr='kun --dry-run -o=yaml' # de meget nÞdvendige flag for at generere yaml-beskrivelse for objektet - Husk flagkombinationerne for kommandoen run, sÄ du hurtigt kan generere yaml for forskellige objekter - pod/deploy/job/cronjob (selvom det ikke er nÞdvendigt at huske dem, kan du bare se hjÊlp med flaget -h):
kudr run pod1 --image=nginx --restart=Never > pod1.yaml kudr run deploy1 --image=nginx > deploy1.yaml kudr run job1 --image=nginx --restart=OnFailure > job1.yaml kudr run cronjob1 --image=nginx --restart=OnFailure --schedule="*/*1 * * * * " > cronjob1.yaml - Brug forkortede ressource navne:
ku get ns # i stedet for namespaces ku get deploy # i stedet for deployments ku get pv # i stedet for persistentvolumes ku get pvc # i stedet for persistentvolumeclaims ku get svc # i stedet for services # osv., du kan finde den fulde liste med kommandoen: kubectl api-resources - Fordel tiden for opgaverne fornuftigt, hÊng ikke fast i én ting, spring spÞrgsmÄl over og gÄ videre. I starten troede jeg, at jeg arbejdede i et meget hÞjt tempo og ville afslutte eksamen tidligt, men jeg nÄede ikke at fÄ de to opgaver fÊrdige. Faktisk er tiden til eksamen meget stram, og de 2 timer gÄr hurtigt.
- Glem ikke at skifte kontekst - i starten af hver opgave gives der en kommando til skift, sÄ du kan arbejde i det rette kluster.
Hold ogsÄ Þje med namespace. Jeg brugte en anden hack til dette:alias kun='echo namespace=$ns && ku -n=$ns' # nÄr jeg udfÞrte hver kommando, blev min nuvÊrende namespace vist som fÞrste linje - TÞv ikke med at betale for certificeringen, vent pÄ rabatter. Kursusforfatteren sender ofte rabatkoder via e-mail med rabatter pÄ 20-30%.
- LĂŠr endelig vim đ
Links:
- â selve certificeringssiden
- â et meget godt kursus til forberedelse, det er alt sammen klart og med illustrationer
- â nyttige links og noter om eksamen
- â en beretning fra kolleger pĂ„ Habr om at tage den mere udfordrende CKA-eksamen
Kilde: habr.com
