Mon profil ?
Disons le vite : Je ne suis pas un expert Kubernetes !
Voilà, c’est dit ;-)
En effet, bien que je suis très intéressé depuis un certain temps, voir un temps certain sur l’écosystème des containers ( Docker 0.6 si mes souvenirs sont bons ), mon expérience professionelle sur ceux-ci est relativement limitée. J’ai bien entendu fait pas mal de POC, de projets perso sur Docker, mais pas une vrai utilisation de production chez mon employeur actuel. Du moins, pas encore, mais on y vient enfin !
Tout cela pour dire que si je n’ai pas peur du YAML, que je maitrise assez bien Docker, que je comprends pas trop mal les concepts de Kubernetes, je n’ai pas une expérience “Day to day” qui me permettait d’être à l’aise avec Kubernetes.
CKA
CKA, Certified Kubernetes Administrator, est un examen “pratique”. Donc assez différent des autres certifications que j’ai déjà pu passer précédemment ( Docker, Java, AWS), qui elle étaient basées sur des questions à choix multiples.
Perso, je trouve l’option pratique nettement plus intéressante car plus proche des cas réels. Et le fait de devoir s’entrainer encore et encore pour préparer l’examen améliore la mémorisation et la rapidité.
En pratique l’examen prends la forme de :
- 24 questions pratiques ( se connecter sur un cluster, et exécuter des tâches plus au moins complexes )
- 3h de temps
- Un accès à la documentation Kubernetes est autorisée (Documenation, blog officiel et github de Kubernetes) mais uniquement ceux-ci, et un seul onglet.
- Un score de 74% est nécessaire pour réussir
Mon CKA
Fail Fast, ou pas :)
Pour ma part, j’avais en tête de passer cette certification il y a longtemps.
Pourquoi ? Juste par envie personnel ! Rien ne m’y oblige. En fait, quand j’ai envie d’approfondir un sujet, les certifications sont plus un “moyen” qu’une finalité. Cela pose un cadre, une liste de sujets à maitriser,…
Après, oui certes, c’est toujours un plus d’avoir un certification sur un CV, mais dans mon cas, je n’ai techniquement pas bougé de poste depuis .. 2008 ;-) Donc la plus-value est très .. relative pour moi :)
Et quand je dis, depuis longtemps … je parle de 2018. J’avais profité de l’offre Black Friday de Linux Foundation qui proposait à un prix intéressant le combo Formation et Certification.
J’avais commencé à suivre la formation, puis j’ai eu quelques difficultés pour trouver du temps libre terminé la formation. Et le coupon pour la certification n’était valide qu’un an .. et a fini par expirer ! Gros #fail
Donc je n’ai même pas pu essayer l’examen !
2eme essai !
Rebelote en 2019, même offre de Linux Foundation et on recommence !
J’essaie de me forcer à préparer un peu mieux début 2020. Pour cela, voici les principales ressources que j’ai utilisées pour cela :
- Cours Linux Academy : https://linuxacademy.com/course/cloud-native-certified-kubernetes-administrator-cka/
- Articles de blogs sur des Tips CKA
- Simulateur d’examens : Killer.sh
- Cours Udemy: https://www.udemy.com/course/certified-kubernetes-administrator-with-practice-tests/learn/lecture/14296066?start=390#overview
Cours Linux Academy
J’ai pris une souscription Linux Academy pour avoir accès à un certain nombre de cours, et en partie celui sur Kubernetes & CKA.
Ce fut ma principale source pour revoir la partie théorie Kubernetes, et j’ai vu toutes les vidéos (en mode accéléré ).
Le cours est relativement bien fait, et il vient avec son lot de Labs pour les exercices pratiques.
J’ai terminé ce cours en Mai. Et initialement j’avais prévu de passer l’examen CKA début Juin. Mais avec la situation COVID-19, la fin d’année scolaire de mes fils ont pris un peu plus d’importance, et j’ai décallé l’examen pour être disponible pour eux.
Article de blog - Tips CKA
Parmi les autres lectures, j’ai lu pas mal de retour d’expérience sur la certification, afin de connaitre les pièges à éviter ;-)
Et parmi les blogs, je suis tombé sur cette série : https://levelup.gitconnected.com/kubernetes-cka-example-questions-practical-challenge-86318d85b4d
Les challenges sont intéressants, et ils m’ont surtout permis de connaitre Killer.sh
Cours Udemy
Pourquoi un autre cours ? En fait, je ne l’ai pas suivi complètement, pour celui-ci je ne l’ai utilisé que pour la partie Labs / Exercices pratiques.
Je ne peux donc pas juger de la qualité du contenu théorique du cours.
Mais la partie pratique est très bien faite, et m’a permis de renforcer mes connaissances et de m’exercer encore plus.
De plus, il est assez régulier d’avoir des réductions sur Udemy, et de pouvoir avoir accès au cours pour presque rien.
Killer.sh
Killer.sh, c’est pas très rassurant comme nom !! ;-) C’est quoi ? C’est juste un simulateur de CKA (et CKAD) au TOP !
Il propose des examens blanc de la forme que l’examens ( 24 questions, 3h) mais un poil plus dur.
C’est payant, mais ça vaut le coup ! Vous aurez accès à deux session de 36h. Vous pouvez donc faire le test de 3H plusieurs fois par session, mais attention ce sont les mêmes questions à chaque fois.
A la fin de l’examen de 3h, vous aurez également accès à une solution possible. Intéressant pour comparer avec la vôtre, mais surtout de comprendre vos erreurs / lacunes.
Personnellement, j’ai passé la première session à la fin de mon cours sur LinuxAcademy pour voir ou j’en étais. Lors de mon premier essai, je n’ai pas pu finir dans les temps, et je ne suis pas certain que j’aurais réussi l’examen du coup.
Et j’ai ensuite renforcé les sujets pour lesquels j’avais des difficultés (via les labs du cours Udemy et en montant un cluster sur AWS pour jouer).
Et le jour J, j’ai donc utilisé ma 2ème session Killer.sh le matin pour me remettre dans le bon état d’esprit. J’ai réussi à tout finir en moins de 3h sur Killer.sh ce qui était rassurant. De plus, cette fois j’ai pu avoir une idée du score que j’aurais fait : 85%. Car entre fin Mai et Fin Juillet, Killer.sh avait ajouté la fonctionnalité de scoring).
Bref de quoi me rassurer pour l’examen !
CKA - le Jour J
Après toute cette organisation est finalement arrivé le grand jour.
J’avais planifié mon examen dans l’après-midi (16h). A la fois pour avoir le temps de revoir (et refaire une session Killer.sh) au matin, mais également d’avoir accès à ma pièce d’examen !
En effet, il faut une pièce isolée, personne ne pouvant être présent dans celle-ci en même temps que vous. Du coup j’ai squatté la chambre de mon fils ! Et il est rarement debout avant 10h durant les vacances ;-)
Après les vérifications d’usages avec votre surveillants en remote, l’examen débute. Il y a plusieurs clusters, et il faut donc bien faire attention d’être sur le bon.
Pour ma part, pas de grosse difficulté, j’ai fini quasi l’entièreté de l’examens en +- 2H, j’ai pris ensuite 20min pour repasser sur chaque question afin de vérifier que chaque exercice était fait sur le bon cluster, vérifier que tout tourne toujours correctement, que les fichiers de résultats attendus sont au bon endroit avec le nom attendu sans coquilles, … Et finalement j’ai pris 10min de plus afin de régler la seule question que j’avais marquée. Que je n’arriverai finalement pas à terminer correctement Mais je prends le risque de faire sans cette question étant très confiant sur le reste. Mais donc mon maximum ne pouvait plus atteindre que 93/100.
Après +/- 2h30, je clôture l’examen.
CKA - J+1
Ce fut la partie la plus stressante ! Attendre le resultat par email qui arrive sous 36h. Techniquement, il aura effectivement pris 33h !
Mais j’avais bien réussi ! Résultat final : 90 / 100. Donc j’ai dû faire une ou l’autre faute tout de même :)
Quelques conseils
-
Parmi les conseils que j’ai souvent vu, c’est de faire plusieurs fois le fameux Kubernetes the Hard Ways. Et bien, j’ai fait sans. Je l’ai bien sur parcouru, mais sans le mettre en place en pratique. L’important c’est de comprendre les concepts, et de savoir un peu jongler avec openssl si nécessaire.
-
Pratiquer ! pratiquer ! Pratiquer !
Le tout c’est d’être vraiment a l’aise avec
kubectl
, de savoir créer des ressources avec les commandes impératives rapidement, et d’éviter autant que possibler les copier / coller à partir de la documentation Kubernetes. -
Configurer votre shell !
source <(kubectl completion bash)
pour activer l’autocompletion ! Rien de tel pour aller vite et éviter les erreursalias k=kubectl
pour aller encore plus vitecomplete -F __start_kubectl k
pour activer l’autocompletion surk
aussi.
-
Examen blanc
Et pour ça, Killer.sh est ton ami !
Sérieusement, je bosse pas pour eux et je suis pas sponsorisé par eux. Mais je suis super content de leur service. Si tu sais faire rapidement et correctement le mock exam du site, le véritable examen te paraitra simple à coté.
Courage, bonne étude et bonne ch***e ! :)