Подключение к кластеру с помощью kubectl
Утилита kubectl позволяет выполнять весь спектр операций по управлению кластером Kubernetes из командной строки. Подробнее в официальной документации Kubernetes.
Способ подключения к кластеру зависит от его IP-адреса:
- Если кластеру назначен внешний IP-адрес, то можно подключиться к нему с любого хоста, имеющего доступ в интернет.
- Если кластеру назначен только внутренний IP-адрес, то можно подключиться к нему только с хоста в VK Cloud — виртуальной машины, которая находится в той же подсети, что и кластер.
-
На хосте, с которого планируется подключаться к кластеру, установите
kubectl, если утилита еще не установлена.Linux (curl)Linux (apt)Linux (yum)macOS (curl)macOS (Homebrew)Windows-
Загрузите нужную версию
kubectl.Пример команды для загрузки утилиты
kubectl, совместимой с кластером версии 1.33.0:curl -LO https://dl.k8s.io/release/v1.33.0/bin/linux/amd64/kubectl -
Сделайте двоичный файл
kubectlисполняемым:sudo chmod +x ./kubectl -
Поместите этот файл в директорию, которая содержится в переменной окружения
PATH, например, в/usr/local/bin:sudo mv ./kubectl /usr/local/bin/kubectl -
Проверьте версию
kubectl, выполнив команду:kubectl version
-
-
Подготовьте все необходимое для подключения с использованием Single Sign-On (SSO).
-
На хосте, с которого планируется подключаться к кластеру, установите
client-keystone-auth, если плагин еще не установлен:Linux (bash)macOS (zsh)Windows (PowerShell)-
Установите пакеты
zipиunzip, если они не установлены:sudo apt install zip unzip -
В терминале выполните команду:
curl -sSL \https://hub.mcs.mail.ru/repository/client-keystone-auth/latest/linux/client-install.sh \| bashНачнется установка утилиты
keystone-auth. -
Если вы используете командную оболочку, отличную от
bash, добавьте путь до утилиты в переменную окруженияPATH. -
Перезапустите командную оболочку или выполните команду
source.Подсказка с нужными командами будет выведена после окончания установки.
-
-
Проверьте, что у вас есть необходимая роль для работы с кластерами Kubernetes. Если такой роли нет, попросите владельца или суперадминистратора проекта добавить ее вам.
-
Активируйте доступ по API.
-
Выполните действия на хосте, с которого планируется подключаться к кластеру:
-
Загрузите файл конфигурации кластера:
- Перейдите в личный кабинет VK Cloud под аккаунтом пользователя, который будет подключаться к кластеру.
- Выберите проект, где находится нужный кластер.
- Перейдите в раздел Контейнеры → Кластеры Kubernetes.
- Нажмите
для нужного кластера и выберите пункт Получить Kubeconfig для доступа к кластеру.
Файл конфигурации автоматически создается для каждого нового кластера и имеет имя в формате
<имя кластера>_kubeconfig.yaml.Далее предполагается, что загруженный файл имеет имя
kubernetes-cluster-1234_kubeconfig.yamlи находится в директорииC:\Users\user\.kube(для Windows) или/home/user/.kube(для Linux и macOS). Скорректируйте приведенные ниже команды при необходимости. -
Файл конфигурации содержит чувствительную информацию, которая не должна быть доступна другим пользователям. Поэтому ограничьте права доступа к этому файлу:
Linux (bash)/macOS (zsh)Windows (PowerShell)sudo chmod 0600 /home/user/.kube/kubernetes-cluster-1234_kubeconfig.yaml -
Укажите путь к файлу конфигурации в переменной среды окружения
$KUBECONFIG:Linux (bash)/macOS (zsh)Windows (PowerShell)export KUBECONFIG=/home/user/.kube/kubernetes-cluster-1234_kubeconfig.yaml
На хосте:
-
Выполните команду:
kubectl cluster-info -
Введите пароль пользователя от личного кабинета VK Cloud.
Это необходимо для аутентификации при подключении к кластеру.
Если кластер работает нормально и kubectl настроен на работу с ним, будет выведена похожая информация:
Kubernetes control plane is running at...CoreDNS is running at...To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.