0Pricing
DevOps Bootcamp · Урок

Основные команды kubectl

Освойте основные команды `kubectl` для взаимодействия с кластером Kubernetes и управления ресурсами.

«Основные команды kubectl» — бесплатный урок DevOps Bootcamp на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения DevOps Bootcamp, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс DevOps Bootcamp содержит 4 уроков всего.

Знакомство с CLI Kubernetes

Добро пожаловать в раздел Основные команды kubectl! На этом уроке Вы узнаете, как использовать kubectl — инструмент командной строки для взаимодействия с кластером Kubernetes.

Представьте kubectl как пульт управления, с помощью которого можно управлять приложениями, проверять ресурсы кластера и устранять неполадки непосредственно из терминала.

Основные команды kubectl — иллюстрация 1

Как kubectl устанавливает соединение

Прежде чем kubectl сможет что-либо сделать, ему нужно знать, с каким кластером Kubernetes следует взаимодействовать. Это определяется файлом конфигурации kubeconfig (обычно ~/.kube/config).

  • Он содержит такие сведения для подключения, как IP кластера и данные аутентификации.
  • kubectl автоматически использует контекст по умолчанию из этого файла.
  • Вы можете переключать контексты для управления несколькими кластерами.

Получение ресурсов кластера

Команда kubectl get является основополагающей. Она позволяет выводить список различных ресурсов кластера, например подов, узлов, развёртываний и служб.

С её помощью Вы видите, что сейчас запущено или настроено.

kubectl get pods
kubectl get nodes
kubectl get services

Подробные сведения о ресурсе

Команда get выводит сводку, а kubectl describe предоставляет подробные сведения о конкретном ресурсе. Сюда входят события, состояние, конфигурации и другие данные, которые особенно важны для устранения неполадок.

kubectl describe pod my-app-pod-xyz
kubectl describe node my-node-name

Применение файлов конфигурации

Ресурсы Kubernetes определяются с помощью файлов YAML. Команда kubectl apply -f используется для создания или обновления ресурсов на основе этих файлов. Она идемпотентна, то есть её можно безопасно выполнять несколько раз.

Вот простое определение пода:

apiVersion: v1
kind: Pod
metadata:
  name: my-first-pod
spec:
  containers:
  - name: web
    image: nginx:latest
    ports:
    - containerPort: 80

Создание ресурсов с помощью apply

Чтобы создать под, определённый в предыдущей сцене, сохраните его в файле .yaml (например, pod.yaml), а затем используйте kubectl apply.

Эта команда указывает Kubernetes обеспечить соответствие состояния, описанного в YAML, фактическому состоянию кластера.

kubectl apply -f pod.yaml

# After applying, verify:
kubectl get pod my-first-pod

Просмотр журналов контейнера

При устранении неполадок проверка журналов контейнера часто становится первым шагом. Команда kubectl logs извлекает журналы определённого контейнера внутри пода.

Используйте -f, чтобы просматривать журналы в реальном времени, как с помощью tail -f.

kubectl logs my-first-pod
kubectl logs -f my-first-pod

Выполнение команд в подах

Нужно выполнить команду внутри работающего контейнера для отладки? kubectl exec позволяет сделать это. Вы даже можете открыть интерактивную оболочку.

  • -i для интерактивного режима
  • -t для псевдо-TTY
  • -- отделяет параметры kubectl от выполняемой команды
kubectl exec -it my-first-pod -- bash

# Or run a single command:
kubectl exec my-first-pod -- ls /app

Удаление ресурсов

Чтобы удалить ресурсы из кластера, используйте команду kubectl delete. Можно удалить ресурс по типу и имени либо указать файл YAML, использованный для его создания.

Будьте осторожны с командой delete: это необратимое действие!

kubectl delete pod my-first-pod
kubectl delete -f pod.yaml

Проверка команд kubectl

Какую команду kubectl Вы используете, чтобы получить подробные сведения об определённом узле с именем worker-node-1?

Итоги: Ваш набор инструментов kubectl

Отличная работа! Вы освоили основные команды kubectl:

  • get: вывод списка ресурсов.
  • describe: получение подробных сведений.
  • apply -f: создание и обновление ресурсов из YAML.
  • logs: просмотр вывода контейнера.
  • exec: выполнение команд внутри контейнеров.
  • delete: удаление ресурсов.

Эти команды станут Вашими ежедневными помощниками при взаимодействии с Kubernetes!

Часто задаваемые вопросы

Урок «Основные команды kubectl» бесплатный?

Да — полный текст урока «Основные команды kubectl» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс DevOps Bootcamp, подпишись на CoddyKit PRO. Курс DevOps Bootcamp содержит 4 уроков всего.

Чему я научусь в уроке «Основные команды kubectl»?

Освойте основные команды `kubectl` для взаимодействия с кластером Kubernetes и управления ресурсами. Ты практикуешь DevOps Bootcamp с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать DevOps Bootcamp?

Предыдущий опыт не требуется. DevOps Bootcamp на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.

Сколько времени занимает урок «Основные команды kubectl»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке DevOps Bootcamp?

Да. Каждый урок DevOps Bootcamp включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Архитектура Kubernetes
  2. Pods: самые малые единицы
  3. Основные команды kubectl
  4. Пространства имён и метки для организации
← Назад к DevOps Bootcamp