ProHoster > Blog > Uprava > Moje izkušnje in nasveti za opravljanje izpita za certificiranega razvijalca aplikacij Kubernetes (CKAD)
Moje izkušnje in nasveti za opravljanje izpita za certificiranega razvijalca aplikacij Kubernetes (CKAD)
Pred kratkim sem uspešno opravil izpit za certificiranega razvijalca aplikacij Kubernetes (CKAD) in prejel certifikat. Danes želim govoriti o samem postopku certificiranja in o tem, kako sem se nanj pripravil. Zame je bila zanimiva izkušnja opravljati izpit preko spleta pod strogim nadzorom izpraševalca. Tu ne bo dragocenih tehničnih informacij, članek je zgolj pripovedne narave. Prav tako nisem imel veliko izkušenj z delom s Kubernetesom in nisem imel skupnih izobraževanj s kolegi, sam sem se učil in izobraževal v prostem času.
Sem precej mlad na področju spletnega razvoja, a sem takoj ugotovil, da brez vsaj osnovnega znanja Dockerja in K8s ne prideš daleč. Opravljanje tečaja in priprava na tovrstni izpit se je zdela dobra vstopna točka v svet zabojnikov in njihovega orkestriranja.
Če še vedno mislite, da je Kubernetes preveč zapleten in ni za vas, sledite mačku.
Kaj je to?
Obstajata dve vrsti certifikatov Kubernetes iz Cloud Native Computing Foundation (CNCF):
Certified Kubernetes Application Developer (CKAD) – preizkuša zmožnost oblikovanja, ustvarjanja, konfiguracije in objave izvornih aplikacij v oblaku za Kubernetes. Izpit traja 2 uri, 19 nalog, uspešnost 66 %. Zahteva zelo površno poznavanje osnovnih primitivov. Cena 300 $.
Certificirani skrbnik Kubernetes (CKA) preverja spretnosti, znanje in kompetence za opravljanje nalog skrbnikov Kubernetes. Izpit traja 3 ure, 24 nalog, uspešnost 74 %. Potrebno je bolj poglobljeno znanje o gradnji in konfiguraciji sistemov. Cena je tudi 300 dolarjev.
Certifikacijska programa CKAD in CKA je razvila Cloud Native Computing Foundation za razširitev ekosistema Kubernetes s standardiziranim usposabljanjem in certificiranjem. Ta sklad je ustvaril Google v sodelovanju z Linux Foundation, na katero je bil Kubernetes nekoč prenesen kot začetni tehnološki prispevek in ki ga podpirajo podjetja, kot so Microsoft, Apple, Facebook, Cisco, Intel, Red Hat in mnoga druga (c) Wiki
Skratka, to so izpiti iz "glavne organizacije" na Kubernetesu. Seveda obstajajo certifikati drugih podjetij.
Zakaj?
To je verjetno najbolj sporna točka v celotni ideji. Ne želim začeti holivarja o potrebi po certifikatih, želim le verjeti, da bo prisotnost tovrstnega certifikata pozitivno vplivala na mojo vrednost na trgu dela. Vse je subjektivno – nikoli ne veš, kaj točno bo prelomno pri odločitvi, da te zaposlijo.
PS: Ne iščem službe, zdaj sem zadovoljen z vsem ... no, razen morda s selitvijo kam v ZDA
Izobraževanje
Test CKAD ima 19 vprašanj, ki so razdeljena na naslednje teme:
13 % – temeljni koncepti
18% – Konfiguracija
10 % – Večkontejnerski stroki
18% – Opazljivost
20 % – Oblikovanje pod
13 % – storitve in mreženje
8% – Vztrajnost stanja
Na platformi Udemy je preprosto odličen tečaj enega Indijca pod imenom Mumshad Mannambeth (povezava bo na koncu članka). Res zelo kvaliteten material za majhno ceno. Kar je še posebej kul, je to, da boste z napredovanjem tečaja morali opraviti praktične vaje v testnem okolju, tako da boste razvili veščino dela v konzoli.
Šla sem skozi celoten tečaj in opravila vse vaje (seveda ne brez pokukanja v odgovore), tik pred izpitom pa sem pospešeno ponovno pogledala vsa predavanja in ponovno opravila zadnja dva poskusna izpita. V mirnem tempu mi je vzel približno en mesec. To gradivo je bilo dovolj, da sem samozavestno opravil izpit z oceno 91%. Pri eni nalogi sem nekje naredil napako (NodePort ni delal), nekaj minut pa je bilo premalo, da bi dokončal drugo nalogo s povezovanjem ConfigMap iz datoteke, čeprav sem poznal rešitev.
Kako je na izpitu
Izpit poteka v brskalniku, z vključeno spletno kamero in deljenim zaslonom. Izpitna pravila zahtevajo, da v sobi ni tujcev. Izpit sem opravljal, ko je država že uvedla režim samoizolacije, zato mi je bilo pomembno najti miren čas, da žena ne bo vstopila v sobo ali da bo otrok kričal. Izbral sem pozno zvečer, saj je na voljo termin za vsak okus.
Izpraševalec na samem začetku od vas zahteva, da pokažete svoj primarni ID s fotografijo in polnim imenom (v latinici) – zame je bil to tuji potni list, ter da na namizje in sobo razporedite spletno kamero, da se prepričate, da ni tuji predmeti.
V glavnem oknu je poleg besedila nalog, terminala in klepeta z izpraševalcem še okno za zapiske, kamor lahko prepišete nekaj pomembnih imen ali ukazov - to je nekajkrat prišlo prav.
Советы
Uporabite vzdevke, da prihranite čas. Uporabil sem naslednje:
export ns=default # переменная для нэймспейса
alias ku='kubectl' # укорачиваем основную команду
alias kun='ku -n=$ns' # kubectl + namespace
alias kudr='kun --dry-run -o=yaml' # очень нужные флаги, чтобы генерить yaml описание для объекта
Zapomnite si kombinacije zastavic za ukaz runza hitro generiranje yamla za različne objekte - pod/deploy/job/cronjob (čeprav si jih sploh ni treba zapomniti, lahko samo pogledate pomoč z zastavico -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
Uporabite skrajšana imena virov:
ku get ns # вместо namespaces
ku get deploy # вместо deployments
ku get pv # вместо persistentvolumes
ku get pvc # вместо persistentvolumeclaims
ku get svc # вместо services
# и т.д., полный список можно подсмотреть по команде:
kubectl api-resources
Pravilno razporedite čas za dokončanje vseh nalog, ne zataknite se pri eni stvari, preskočite vprašanja in nadaljujte. Sprva sem mislil, da bom naloge opravil zelo hitro in bom predčasno opravil izpit, a na koncu nisem imel časa opraviti dveh nalog. Pravzaprav je čas za izpit razporejen zaporedoma in vse 2 uri mineta v napetosti.
Ne pozabite preklopiti konteksta – na začetku vsake naloge je podan ukaz za preklop, da bi delovali v želeni gruči.
Pazite tudi na imenski prostor. Za to sem uporabil še en kramp:
alias kun='echo namespace=$ns && ku -n=$ns' # при выполнении каждой команды первой строкой у меня выводился текущий нэймспейс
Ne hitite s plačilom certifikata, počakajte na popuste. Avtor tečaja pogosto pošilja promocijske kode z 20-30% popusti po e-pošti.