Мій шлях до Kubernetes: CKA та CKAD

pic

pic

У моїй попередній статті я розповідав, як я почав свій шлях у світі ІТ-інфраструктури. Мій перший крок полягав у вивченні Linux, щоб зрозуміти традиційні ІТ-середовища. Отримання сертифікацій, таких як RHCSA та RHCE, змусило мене освоїти команди Bash та основні навички роботи з Linux.

Однак, коли я просувався в ІТ-галузі, я усвідомив, що відбувається великий зсув. Індустрія переходить від традиційних архітектур на основі віртуальних машин до контейнеризованих (на основі Kubernetes) середовищ. Все більше ІТ-фахівців, включаючи мене — нині працюючи як керівник проєкту — приймають цей перехід. Я відчув, що необхідно припинити дивитися на Kubernetes з боку і почати працювати з ним, щоб по-справжньому зрозуміти, як працює контейнеризований світ.

Поглиблене навчання через практику

Одним з найцінніших досвідів навчання для мене стало проходження лабораторії CKA та CKAD KodeKloud від Mumshad Mannambeth. Я пропустив крок за кроком і одразу перейшов до практичних лабораторій, розв’язуючи питання та використовуючи онлайн-ресурси для навчання через практику.

Цей підхід став для мене відкриттям. На відміну від іспитів Red Hat Linux, які сильно залежать від запам'ятовування, Kubernetes надає шпаргалки та команди, що спрощують процес, дозволяючи зосередитися на вирішенні проблем, а не на запам'ятовуванні деталей.

Основні команди та поради по Kubernetes

Декілька основних команд Kubernetes зробили процес навчання набагато легшим:

  • Псевдонім для kubectl: alias k=kubectl
  • Прапор --dry-run надзвичайно корисний при створенні ресурсів. Наприклад, ви можете створити приклад YAML-файлу для поду за допомогою такої команди:
    kubectl run example-pod --image=nginx --dry-run=client -o yaml
  • Це виводить YAML-файл, який ви можете змінити та застосувати пізніше за допомогою kubectl apply -f .yaml
  • Інша важлива команда — kubectl explain. Наприклад: kubectl explain pod.spec.containers. Ця команда дозволяє заглибитися в кожне поле ресурсу, полегшуючи розуміння та написання YAML-конфігурацій.

Управління ресурсами в Kubernetes

Спочатку я мав труднощі з повним розумінням того, як Kubernetes управляє ресурсами, особливо оскільки він абстрагує більшу частину інфраструктури. Однак, проводячи більше часу з Kubernetes, я почав оцінювати його потужність у підтримці бажаного стану ресурсів (Pod'ів, Deployments, Services тощо). Наприклад, якщо ви видалите Pod, керований вищим рівнем контролера, таким як Deployment, Kubernetes автоматично відновить його, щоб підтримати бажаний стан. Однак для повного видалення ресурсу — будь то Pod, Deployment або інший об'єкт Kubernetes — його потрібно видалити з його YAML-опису за допомогою:

kubectl delete -f .yaml

Або видаливши Pod безпосередньо:

kubectl delete pod

Це лише видалить Pod, але якщо він керується вищим рівнем контролера, контролер відновить його. Це було те, що я повинен був зрозуміти на самому початку, щоб уникнути непорозумінь.

Остаточні думки щодо навчання Kubernetes

Я дійсно задоволений своїм навчальним шляхом у Kubernetes завдяки лабораторії KodeKloud. Хоча іспит Linux Foundation "Kill Shell" важкий для початківців, практичні заняття в KodeKloud були набагато цікавішими за запам'ятовування теорії. Це було більше реальним і практичним.

Для тих, хто новий в Kubernetes, я рекомендую почати з сертифікації CKA (Certified Kubernetes Administrator). Вона охоплює основи, такі як управління кластерами та операції з Pod'ами, що полегшує розуміння Kubernetes. Коли ви добре освоїте CKA, сертифікація CKAD (Certified Kubernetes Application Developer) буде набагато простішою і допоможе поглибити ваші знання в розгортанні та розробці додатків на Kubernetes.

Перекладено з: My Journey into Kubernetes: CKA and CKAD

Leave a Reply

Your email address will not be published. Required fields are marked *