Недavno jsem úspěšně složil zkoušku Certified Kubernetes Application Developer (CKAD) a získal certifikát. Dnes chci vyprávět o samotném certifikačním procesu a o tom, jak jsem se na něj připravoval. Pro mě to byla zajímavá zkušenost skládat zkoušku online pod pečlivým dohledem zkoušejícího. Nebude zde cenná technická informace, článek má čistě vyprávěcí charakter. Také jsem neměl velké zkušenosti s Kubernetes a nepřipravoval jsem se společně s kolegy, učil jsem se a trénoval sám ve volném čase.
Jsem dost mladý v oblasti webového vývoje, ale hned jsem pochopil, že bez alespoň základních znalostí Docker a K8s se daleko nedostanu. Absolvování kurzu a příprava na takového typu zkoušky mi přišly jako dobrý vstup do světa kontejnerů a jejich orchestrace.
Pokud stále máte pocit, že Kubernetes je příliš složitý a není to pro vás, prosím, čtěte dál.
Kaj je to?
Existují dva typy certifikace Kubernetes od Cloud Native Computing Foundation (CNCF):
- Certified Kubernetes Application Developer (CKAD) — ověřuje schopnost navrhovat, vytvářet, konfigurovat a publikovat cloud native aplikace pro Kubernetes. Zkouška trvá 2 hodiny, obsahuje 19 úloh, minimální skóre je 66 %. Vyžadují se velmi povrchové znalosti základních primitivů. Cena je $300.
- Certified Kubernetes Administrator (CKA) — ověřuje dovednosti, znalosti a kompetence k plnění povinností správců Kubernetes. Zkouška trvá 3 hodiny, obsahuje 24 úloh, minimální skóre je 74 %. Vyžadují se hlubší znalosti o budování a konfiguraci systémů. Cena je také $300.
Certifikační programy CKAD a CKA byly vyvinuty nadací Cloud Native Computing Foundation s cílem rozšířit ekosystém Kubernetes prostřednictvím standardizovaného vzdělávání a certifikace. Tato nadace byla založena Google ve spolupráci s Linux Foundation, které bylo kdysi svěřeno Kubernetes jako počáteční technologický příspěvek a kterou podporují takové společnosti jako Microsoft, Apple, Facebook, Cisco, Intel, Red Hat a mnohé další (c) Wiki.
Stručně řečeno, jedná se o zkoušky od "hlavní organizace" pro Kubernetes. Samozřejmě, existují certifikace i od dalších firem.
Zakaj?
Morda je to najspornejša točka v vsem tem načrtu. Ne želim zagnati razprave o potrebnosti certifikatov, samo želim verjeti, da bo obstoj takšnega certifikata pozitivno vplival na mojo vrednost na trgu dela. Vse je subjektivno — nikoli ne veš, kaj natančno bo služilo kot prelomna točka pri odločitvi, da te zaposlijo.
PS: ne iščem dela, trenutno sem zadovoljen… razen morda s preselitvijo nekam v ZDA.
Priprava
Na testu CKAD je 19 vprašanj, razporejenih po temah na naslednji način:
- 13% – Osnovni koncepti
- 18% – Konfiguracija
- 10% – Več-posodna pod
- 18% – Opazovanje
- 20% – Oblikovanje pod
- 13% – Storitve in omrežje
- 8% – Vztrajnost stanja
Na platformi Udemy je odličen tečaj enega Indijca po imenu Mumshad Mannambeth (povezava bo na koncu članka). Resnično zelo kakovosten material za nizko ceno. Še posebej je super, da se med tečajem predlaga izvajanje praktičnih nalog v testnem okolju, tako da pridobite spretnosti dela s konzolo.
Opravil sem celoten tečaj in reševal vse praktične naloge (seveda niso šle brez pokukanja v odgovore), pred izpitom pa sem še enkrat pregledal vse predavanja s povečano hitrostjo in ponovno opravil dva zadnja preizkusna izpita (mock exams). To mi je vzelo približno mesec dni v mirnem tempu. Ta material mi je povsem zadostoval, da sem samozavestno opravil izpit z rezultatom 91%. Pri enem vprašanju sem se kje zmotil (NodePort ni deloval), in nekaj minut mi je zmanjkalo, da bi dokončal še eno nalogo s povezovanjem ConfigMap iz datoteke, čeprav sem rešitev poznal.
Kako poteka izpit
Izpit poteka v brskalniku, s vklopljeno spletno kamero in skupno rabo zaslona. Pravila izpita zahtevajo, da v sobi ne sme biti tujih ljudi. Izpit sem opravljal, ko je bil v državi že uveden režim samoizolacije, zato je bilo zame pomembno najti miren čas, da žena ne bi vstopila v sobo ali da ne bi otrok zakričal. Izbral sem globoko noč, na srečo je izbira časa dostopna po lastnih željah.
Na začetku izpitni nadzornik zahteva, da pokažete svoj Primarni ID, ki vsebuje fotografijo in osebno ime (v latinici) — imela sem tuje potrdilo, ter obrniti spletno kamero na delovno mizo in sobo, da se prepriča v odsotnosti tujih predmetov.
Med examen er det tilladt at have endnu en browserfane åben med en af ressourcerne:,eller . Jeg brugte dokumentationen, som var helt tilstrækkelig.
I hovedvinduet, udover opgave teksten, terminalen og chatten med eksaminatoren, er der også et vindue til noter, hvor man kan kopiere vigtige navne eller kommandoer — det kom til nytte et par gange.
Nasveti
- Brug aliasser for at spare tid. Her er hvad jeg brugte:
export ns=default # variabel for namespaces alias ku='kubectl' # forkorter hovedkommandoen alias kun='ku -n=$ns' # kubectl + namespace alias kudr='kun --dry-run -o=yaml' # meget nyttige flag til 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 absolut nødvendigt at huske dem, kan du bare se hjælpen 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 navne for ressourcerne:
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., den fulde liste kan ses med kommandoen: kubectl api-resources - Fordel tiden for at gennemføre alle opgaverne fornuftigt, hæng ikke fast på é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 i sidste ende nåede jeg ikke at afslutte to opgaver. Faktisk er tiden til eksamen stramt disponeret, og de to timer går hurtigt.
- Glem ikke at skifte kontekst — ved begyndelsen af hver opgave gives der en kommando til at skifte, så man arbejder i det rigtige cluster.
Hold også øje med namespaces. For dette brugte jeg et andet trick:alias kun='echo namespace=$ns && ku -n=$ns' # ved udførelsen af hver kommando vises mit nuværende namespace i den første linje - Skynd dig ikke med at betale for certificeringen, vent på rabatter. Kursusforfatteren sender ofte rabatkoder med 20-30% rabat via e-mail.
- Lær endelig vim 🙂
Linkovi:
- — selve certificeringssiden
- — et meget godt kursus til forberedelse, alt er klart og med illustrationer
- — nyttige links og noter om eksamen
- — pričevanje kolegov s Habrja o polaganju zahtevnejšega izpita CKA
Izvor: habr.com
