Z Pamiętnika Architekta: Jak zdawać CKAD, żeby zdać?
Jeśli kiedykolwiek miałeś do czynienia z Kubernetesem, istnieje szansa, że słyszałeś też o egzaminie CKAD (Certified Kubernetes Application Developer). Być może nawet zastanawiasz się, czy w ogóle warto do niego podchodzić. Jako szczęśliwy posiadacz certyfikatu CKAD odpowiadam – warto! A żeby ułatwić Ci zadanie, dzielę się moimi wrażeniami „na świeżo”.
Przemek Malak. Instruktor w Szkole Chmury, AWS Architect (Development) w Chmurowisku. Ponad 18 lat w branży IT. Architekt rozwiązań chmurowych i mobilnych oraz Programista (przez duże P). Entuzjasta rozwiązań Serverless, posiadacz kilku certyfikacji AWS (Architect, Developer, SysOps).
Dodatkowo Szkoła Chmury przygotowała dla Was zniżkę -25% na kurs „Kubernetes dla każdego – sztuka konteneryzacji” o nazwie CKAD20. Data ważności: do 21.08 do 23:59.
Spis treści
CKAD etap 1. Przygotowania
Jak mówię wszystkim na szkoleniach, które prowadzę, certyfikaty porządkują wiedzę. A przygotowania do egzaminu zawsze wnoszą coś nowego do naszego katalogu umiejętności. Nie inaczej jest z CKAD-em.
Egzamin CKAD to czysta praktyka. Otrzymujesz dostęp do konsoli i zadania do wykonania. Żadnych pytań, zero teorii. Tylko działanie. Jeśli znasz Kubernetesa, powinieneś sobie bez problemu poradzić. Jeśli nie znasz i na nim nie pracujesz, to już gorzej. Będzie ciężko.
Egzamin CKAD. Gdzie i jak się przygotować?
Ja swoją przygodę z Kubernetesem rozpoczynałem od książki Kubernetes Up & Running (dostępnej na przykład tutaj). Przed egzaminem przeczytałem też Handbook. Ale tak naprawdę z Kubernetesa korzystam właściwie na co dzień, dlatego nie musiałem się jakoś szczególnie przygotowywać do CKAD-a od strony teoretycznej.
Jako inżynier lubię eksperymentować, sprawdzać, próbować. I to chyba jest najcenniejsze. Bez tej praktyki byłoby mi ciężko. Kilka wdrożeń, kilka poprawek, kilka zmian – takie doświadczenie na pewno pomaga zdobyć cenne punkty na egzaminie.
Oprócz tego polecam wykupić dostęp do przykładowego środowiska testowego w killer.sh. Dostępne są tam dwie sesje z klastrem, obie po 36 godzin. Dzięki nim mniej więcej zobaczyłem, jak będzie wyglądał egzamin. Zderzyłem się z lagującym środowiskiem i presją czasu. Przećwiczyłem nie tylko same zadania, ale także pracę z notatnikiem podczas egzaminu (np. kopiowanie nazw z zadań do terminala). To było dobrze zainwestowane 30 euro
Przed egzaminem warto też przygotować jakiś obraz dockerowy z narzędziami sieciowymi. Ewentualnie przestudiować gotowy obraz, żeby zorientować się, o co w tym wszystkim chodzi (ja stworzyłem własny – zachęcam do korzystania).
CKAD etap 2. Egzamin
No dobra, przyszła pora na egzamin. Na rozwiązanie 19 problemów mamy 120 minut. To daje nam jakieś 6,5 minuty na jedno zadanie. Dużo? Mało? To zależy.
Niektóre zadania są do zrobienia w mniej niż minutę, inne będą wymagały więcej czasu. Niektóre problemy są trywialne, nad innymi trzeba się chwilę zastanowić. A raczej zastanowić się, jak je rozwiązać w tak krótkim czasie. Do tego wszystkiego dochodzi stres (w końcu to egzamin). Dlatego tak ważna jest praktyka.
OK, ale jak dokładnie wygląda taka sesja egzaminacyjna? Szczerze mówiąc, w tej chwili, w wersji online – słabo.
Wyścig z czasem
Egzamin wyznaczono na godzinę 11:00. Mogłem pojawić się 15 minut wcześniej (zawsze i wszędzie jestem wcześniej). Nie mogłem rozpocząć później niż 11:15.
Wchodzę na stronę o 10:48 i dowiaduję się, że mój egzamin jeszcze nie jest przygotowany. Nie ma sprawy, zdarza się. Kilka razy odświeżam stronę. W końcu widzę przycisk [Launch Exam]. Łyk wody, kilka oddechów i…
10:50 Myszka w ruch, wciskam przycisk.
10:51 Dostaję prośbę, żeby włączyć kamerę i podzielić ekran. OK, tego się spodziewałem. Działam, włączam.
10:52 Kolejny komunikat. „Twój proctor (czyli osoba, która ma mnie pilnować) jeszcze nie dołączył/a lub zostałeś rozłączony”. Fajnie. To mam czekać, czy ponownie się połączyć? Czekam.
11:05 Zaczynam się niepokoić.
11:10 Dzwonię pod numer pokazany na ekranie. Do USA. Odbiera bot. Chyba jest w Indiach Słabo rozumiem, ale chyba mam wcisnąć „2”. Wciskam, czekam. Teoretycznie za pięć minut kończy się mój czas na podejście do egzaminu.
11:12 Ktoś odbiera i coś mamrocze. Niewiele rozumiem, bo jakość połączenia jest taka sobie. Opisuję swój problem, słyszę coś w odpowiedzi. Proszę o powtórzenie. Powoli. Wszystko jest pod kontrolą, proszę się nie martwić. Gdzieś dzwonią, coś sprawdzą. Mam się nie rozłączać, zatem czekam. Może $300 wydane na egzamin nie jest jeszcze całkiem stracone.
Mija 11:15 i…
11:18 Wreszcie! Zmiana komunikatu na ekranie – ktoś mnie sprawdza. Jest dobrze (albo przynajmniej nie jest źle). Czekam dalej.
11:19 Pojawia się wpis na live czacie. Startujemy! Przez kamerę pokazuję otoczenie (córka u koleżanki, żona na zakupach, więc nikt mi nie przeszkadza ani nie pomaga ) i dowód osobisty. Otrzymuję jeszcze kilka informacji i formalnych ostrzeżeń i…
11:22 Ożeż!… Znowu napisali, że mnie rozłączyło albo mój opiekun jeszcze nie dołączył do spotkania. Dobrze, że kazali zdjąć smartwatche. Gdyby Garmin pokazał w tej chwili moje tętno, już bym chyba zrezygnował. Ale czekam wytrwale (ok, może raz odświeżyłem stronę).
11:25 Coś się dzieje. Podobno za chwilę wszystko ruszy. Coś łączy… Pojawia się jakiś zielony przycisk, który rozpoczyna egzamin. Kilka oddechów, kolejny łyk wody, wciskam dziada. Raz kozie śmierć, co ma być, to będzie. I…
11:27 Zaczynam!
CKAD. Ostateczne starcie
Ruszam z pierwszym zadaniem. Jest banalne, więc robię je od razu. Patrzę na wartość pytania. 13%. Szok. (Więcej takich nie było).
Nagle przypominam sobie, że przed zadaniami miałem wykonać kilka akcji. Moje tętno nadal jest wysokie, ale wklepuję w konsolę po kolei:
To przyspieszy pracę. Polecam wykorzystać, i to nie tylko podczas egzaminu.
No dobra, czas mija, a my lecimy dalej. Przeglądam pytania i notuję wagę każdego. Zaczynam od tych najcenniejszych, wartych 8%. Najprostsze wyceniane są na marne 2%. No i jadę z robotą, po kolei, krok po kroku.
CKAD etap 3. Podsumowanie + rady
Uff, skończyłem. Teraz pozostaje „tylko” czekać na wyniki. A to okazuje się najgorsze. Bo gdy kończyłem egzaminy AWS, od razu dostawałem informację zwrotną. A tutaj? Na przesłanie wyników organizatorzy mają do 36 godzin. Półtora dnia! Ja dostałem swoje po jakichś 30 godzinach. Dobrze, że pozytywne.
Egzamin CKAD: jakie zadania?
Oczywiście nie mogę ujawniać treści zadań. Zdradzę tylko, że podczas egzaminu nie było za dużo tworzenia, musiałem raczej zmieniać. Dodawać coś do zastanej sytuacji lub naprawiać. Na pewno mogę Ci doradzić jedno — jeżeli nie pracujesz z Kubernetesem, to nie podchodź do CKAD z marszu.
To nie jest egzamin, w którym wybierasz odpowiedzi z kilku dostępnych opcji, licząc na to, że może się uda. Tutaj masz konkretne zadania do wykonania. Konieczna jest praktyka.
Zmiany w wersji Kubernetesa
Warto również wiedzieć, że w trakcie egzaminu pracujemy na Kubernetesie w wersji 1.18. To trochę, a nawet wiele, zmienia. Imperatywne generowanie zasobów za pomocą kubectl run jest bardzo ograniczone. Poza podem nic za pomocą tego polecenia nie wygenerujemy. Zapomnij o deploymentach czy jobach. To trzeba zrobić inaczej. kubectl create Twoim przyjacielem!
Co jeszcze warto wiedzieć?
W trakcie egzaminu na pewno nie będziesz miał czasu na tworzenie yamli od zera. To, co się da, tworzysz za pomocą kubectl run lub kubectl create. Jeżeli się nie da, to czeka Cię szybka przeprowadzka na kubernetes.io i dziedziczenie edytorowe. [Ctrl+C], [Ctrl+V] do VIM, no i edycja!
Co więcej, podczas egzaminu przydaje się znajomość Linuksa. Miałem zadanie, a nawet dwa, w których bez niej mogłoby być źle.
No i wreszcie w opisach CKAD w sieci mało jest informacji o tym, że warto znać się na kubernetesowych politykach sieciowych i przechowywania danych.
CKAD – fajny?
Ano bardzo fajny. Sama praktyka, zero teorii i odpowiedzi z przypadku. Dostajesz zadanie, musisz rozwiązać problem. Albo Twój sposób zadziała, albo nie. Szkoda tylko, że na pracę jest tak mało czasu. No i mogliby oszczędzić egzaminowanym trochę nerwów na początek. Ale gdyby coś się nie udało za pierwszym razem, przysługuje Ci bezpłatnie jedno dodatkowe podejście. Na szczęście ja nie musiałem z niego korzystać 😉
Zdjęcie główne artykułu pochodzi z unsplash.com.