Linux

Установка kubectl в Linux: пошаговая инструкция для управления Kubernetes

Это руководство поможет вам установить и настроить kubectl — командную утилиту для управления Kubernetes кластерами — в любой дистрибутив Linux. Вы сможете выполнять команды развертывания, масштабирования и диагностики.

Обновлено 8 апреля 2026 г.
10-15 мин
Низкая
FixPedia Team
Применимо к:Ubuntu 20.04+Debian 11+Fedora 35+CentOS/RHEL 8+Arch Linux

Введение / Зачем это нужно

Kubectl — это indispensible командная строка для управления Kubernetes кластерами. С её помощью вы выполняете развёртывание приложений, инспекцию ресурсов, масштабирование и диагностику. Этот гайд покажет, как установить kubectl в Linux системам (Ubuntu, Fedora, CentOS, Arch) безопасным и каноничным способом — напрямую от официального проекта Kubernetes. Это гарантирует вам последнюю стабильную версию и совместимость с любым кластером.

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

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

  • У вас есть доступ к терминалу с правами на запись в целевой каталог (для системной установки потребуются sudo).
  • Установлен curl (или wget) для скачивания файлов.
  • У вас есть доступ к интернету для загрузки бинарного файла.
  • Вы знаете архитектуру вашей системы (обычно amd64 для x86-64 или arm64 для Apple M1/M2/Raspberry Pi). Проверить можно командой uname -m.

Пошаговая инструкция

Шаг 1: Получение последней стабильной версии

Не скачивайте kubectl вручную с сайта. Используйте официальный API для получения актуальной версии. Это защитит от опечаток и гарантирует совместимость.

# Получаем последнюю стабильную версию (например, v1.30.0)
KUBECTL_VERSION=$(curl -L -s https://dl.k8s.io/release/stable.txt)
echo "Устанавливаю версию: $KUBECTL_VERSION"

Шаг 2: Скачивание бинарного файла

Определите свою архитектуру. Для большинства ПК это amd64. Для ARM-устройств (Raspberry Pi, Apple Silicon) — arm64.

# Пример для архитектуры amd64
curl -LO "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/linux/amd64/kubectl"

# Пример для arm64 (например, Raspberry Pi 4/5, Apple M1/M2)
# curl -LO "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/linux/arm64/kubectl"

Шаг 3: Проверка целостности (опционально, но рекомендуется)

Для безопасности можно проверить контрольную сумму скачанного файла.

# Скачиваем файл с контрольной суммой
curl -LO "https://dl.k8s.io/${KUBECTL_VERSION}/bin/linux/amd64/kubectl.sha256"

# Проверяем
echo "$(cat kubectl.sha256)  kubectl" | sha256sum --check

Если вывод kubectl: OK, файл не повреждён.

Шаг 4: Назначение прав на выполнение и установка

Сделайте файл исполняемым и переместите его в каталог из $PATH.

Вариант A: Системная установка (доступна всем пользователям)

chmod +x kubectl
sudo mv kubectl /usr/local/bin/

Вариант B: Пользовательская установка (только для текущего пользователя)

chmod +x kubectl
mkdir -p ~/.local/bin
mv kubectl ~/.local/bin/
# Добавляем ~/.local/bin в PATH, если его там нет (обычно добавляется по умолчанию в современных дистрибутивах)
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

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

Убедитесь, что команда работает и показывает версию клиента.

kubectl version --client --output=yaml

Ожидаемый вывод: блок clientVersion с вашей версией. Ошибка command not found означает, что каталог с kubectl не находится в PATH.

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

После установки выполните простую команду для проверки связности с кластером (если он уже есть):

kubectl cluster-info

Если кластер не настроен, вы увидите ошибку подключения — это нормально. Главное, что сам kubectl работает. Вы также можете проверить доступные команды: kubectl --help.

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

  • kubectl: command not found: Каталог, куда вы переместили kubectl (/usr/local/bin или ~/.local/bin), отсутствует в переменной окружения PATH. Добавьте его в ~/.bashrc или ~/.zshrc и перезапустите терминал.
  • Permission denied при запуске: Файл не имеет прав на исполнение. Выполните chmod +x /путь/к/kubectl.
  • Ошибка SSL/сертификаты при скачивании: Убедитесь, что на системе установлены актуальные CA-сертификаты (sudo apt install ca-certificates для Debian/Ubuntu).
  • Несовместимость версий: Kubectl должен быть совместим с версией Kubernetes кластера (разница в 1 minor-версия обычно допустима). Если кластер очень старый, может потребоваться установка конкретной версии kubectl: curl -LO "https://dl.k8s.io/release/v1.20.0/bin/linux/amd64/kubectl".
  • Конфликт с версией из репозитория: Если вы ранее устанавливали kubectl через apt или dnf, возможно, будет использоваться старая версия. Удалите пакет (sudo apt remove kubectl) или убедитесь, что /usr/local/bin стоит раньше в PATH, чем /usr/bin.

Альтернативные методы установки

Для некоторых дистрибутивов проще использовать менеджер пакетов, но версии там могут быть устаревшими.

  • Ubuntu/Debian: sudo apt update && sudo apt install -y kubectl (версия из официальных репозиториев может быть старше).
  • Fedora/RHEL/CentOS: sudo dnf install -y kubectl (аналогично, версия может отставать).
  • Arch Linux: sudo pacman -S kubectl (обычно актуальная версия).
  • Через包 менеджер Krew (для плагинов): После установки kubectl можно установить Krew для управления плагинами.

Рекомендация: Для продакшн-работы и изучения последних возможностей Kubernetes всегда предпочтительна установка напрямую с официального сайта, как описано выше.

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

Нужен ли Docker для работы kubectl?
Как обновить kubectl до новой версии?
Чем kubectl отличается от minikube?
Можно ли установить kubectl без прав администратора?

Полезное

Проверка системных требований и curl
Определение версии и архитектуры
Скачивание бинарного файла
Сделать файл исполняемым и переместить в PATH
Проверка успешной установки