LinuxНизкая

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

Изучите основные команды kubectl для эффективного управления Kubernetes-кластером. Этот гайд поможет вам освоить базовые операции с подами, сервисами и развертываниями.

Обновлено 9 апреля 2026 г.
15-20 мин
Низкая
FixPedia Team
Применимо к:Kubernetes 1.24+kubectl 1.24+

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

kubectl — это основной инструмент для управления Kubernetes-кластерами. Он позволяет выполнять все операции по созданию, обновлению и удалению ресурсов кластера прямо из командной строки. Этот гайд поможет вам освоить базовые команды kubectl для эффективной работы с Kubernetes.

Требования / Подготовка

Перед началом работы убедитесь, что:

  • У вас установлен kubectl версии 1.24 или выше
  • Вы подключены к рабочему Kubernetes-кластеру
  • У вас есть права на создание и управление ресурсами кластера

Шаг 1: Проверка установки и версии kubectl

Сначала убедимся, что kubectl установлен и подключен к кластеру:

kubectl version --client

Если kubectl установлен, вы увидите информацию о версии клиента. Чтобы проверить подключение к кластеру:

kubectl cluster-info

Эта команда покажет URL API сервера и состояние подключения к кластеру.

Шаг 2: Просмотр информации о кластере

Получите базовую информацию о кластере и его узлах:

kubectl get nodes

Эта команда отобразит список всех узлов в кластере с их статусами. Чтобы получить более подробную информацию об узле:

kubectl describe node <имя-узла>

Вы также можете просмотреть все пространства имен в кластере:

kubectl get namespaces

Шаг 3: Создание и управление подами

Создайте простой под из YAML-файла:

kubectl apply -f example-pod.yaml

Пример содержимого example-pod.yaml:

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

Просмотрите созданные поды:

kubectl get pods

Для получения подробной информации о поде:

kubectl describe pod example-pod

Выполните команду внутри пода:

kubectl exec example-pod -- ls /app

Шаг 4: Работа с сервисами и развертываниями

Создайте развертывание:

kubectl create deployment nginx-deployment --image=nginx:latest

Масштабируйте развертывание:

kubectl scale deployment nginx-deployment --replicas=3

Создайте сервис для доступа к развертыванию:

kubectl expose deployment nginx-deployment --port=80 --type=NodePort

Просмотрите созданные сервисы:

kubectl get services

Обновите образ в развертывании:

kubectl set image deployment/nginx-deployment nginx=nginx:1.21

Шаг 5: Просмотр логов и отладка

Получите доступ к логам пода:

kubectl logs example-pod

Для подов с несколькими контейнерами:

kubectl logs example-pod -c nginx

Отследите логи в реальном времени:

kubectl logs -f example-pod

Удалите ресурсы:

kubectl delete pod example-pod
kubectl delete deployment nginx-deployment
kubectl delete service nginx-deployment

Проверка результата

Чтобы убедиться, что все работает корректно:

  1. Проверьте, что все поды находятся в статусе Running:
    kubectl get pods
    
  2. Убедитесь, что сервисы доступны:
    kubectl get services
    
  3. Проверьте логи на наличие ошибок:
    kubectl logs <pod-name>
    

Возможные проблемы

При работе с kubectl могут возникнуть следующие проблемы:

Ошибка подключения к кластеру: Если kubectl не может подключиться к кластеру, проверьте файл конфигурации ~/.kube/config и убедитесь, что контекст указан правильно.

Права доступа: Если возникают ошибки доступа, убедитесь, что у вас есть необходимые права RBAC для выполнения операций.

Неверный синтаксис YAML: При создании ресурсов из YAML-файлов внимательно проверяйте синтаксис. Используйте kubectl apply --dry-run=client -f file.yaml для проверки перед применением.

Недостаточно ресурсов: Если поды не могут запуститься, проверьте доступность ресурсов в кластере и лимиты ресурсов в YAML-файле.

Для получения дополнительной информации используйте команду kubectl explain <ресурс> для просмотра схемы ресурсов Kubernetes.

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

Что такое kubectl и зачем он нужен?
Как проверить, что kubectl установлен?
Как подключиться к кластеру Kubernetes?
Как получить помощь по kubectl?

Полезное

Проверка установки и версии kubectl
Просмотр информации о кластере
Создание и управление подами
Работа с сервисами и развертываниями
Просмотр логов и отладка

Эта статья помогла вам решить проблему?