← Все статьи

Kubernetes: шпаргалка kubectl — поды, логи, вход в контейнер

Автор: Юрий Нефёдов, системный инженер · 02.07.2024 · обновлено 24.10.2026

Подборка команд kubectl, которыми я пользуюсь чаще всего при разборе проблем в кластере Kubernetes. Часть примеров — из бесплатного курса по Kubernetes: плейлист на YouTube, материалы уроков на GitHub.

Поды: где запущены и с какими адресами

Ключ -o wide добавляет к списку узел и IP-адрес пода, -l отбирает поды по метке, -n задаёт пространство имён. Пример — поды локального DNS-кэша:

kubectl get po -o wide -n kube-system -l k8s-app=nodelocaldns

Логи

Логи сразу всех подов с меткой, в реальном времени (-f). По умолчанию kubectl читает не больше пяти подов одновременно, ключ --max-log-requests поднимает это ограничение:

kubectl logs -f -n kube-system -l k8s-app=nodelocaldns --max-log-requests=10

Логи конкретного пода и логи с отметками времени:

kubectl -n namespace logs pod_name
kubectl -n kube-system logs --timestamps cilium-1234

Если контейнер перезапускается, его текущие логи часто пустые. Логи предыдущего, упавшего экземпляра:

kubectl -n namespace logs pod_name --previous

Зайти внутрь контейнера

Открывает командную оболочку внутри пода. Если в образе есть bash, можно указать /bin/bash:

kubectl exec -it pod_name -n namespace -- /usr/bin/sh

Шпаргалки из курса

Шпаргалка kubectl из курса, часть 1
Шпаргалка kubectl из курса, часть 2
Шпаргалка kubectl из курса, часть 3
Шпаргалка kubectl из курса, часть 4
Шпаргалка kubectl из курса, часть 5

Нужна помощь с настройкой?

Если задача сложнее, чем в статье, напишите мне. Первая консультация бесплатная.