VK Cloud logo

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

Описание

Подключение к кластеру происходит с помощью утилиты kubectl.

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

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

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

При использовании версий kubectl v1.23 и выше, вам необходимо ввести пароль при подключении. Чтобы воспользоваться автоматическим вводом пароля, его можно указать в файле настройки подключения kubeconfig.

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

Чтобы подключиться к кластеру с помощью kubectl:

  1. Установите kubectl, если он еще не установлен.

    Убедитесь, что мажорная версия установленного kubectl не отличается от той, которая используется в кластере. Например, версия v1.19 может работать с версиями v1.16 и v1.15. Использование последней версии kubectl поможет избежать непредвиденных проблем при подключении.

  2. Если версия кластера Kubernetes больше или равна v1.23, вам необходимо установить client-keystone-auth по инструкции.

  3. Добавьте необходимую роль (Администратор/Оператор/Аудитор Kubernetes) пользователю в разделе «Управление доступами» в Личном кабинете. Обновление ролей и прав происходит с небольшой задержкой. Подробности вы можете узнать в статье Управление доступом.

  4. Загрузите на локальный компьютер файл конфигурации кластера, к которому необходимо подключиться:

    1. Перейдите в раздел «Контейнеры» Панели VK Cloud.
    2. Выберите в контекстном меню требуемого кластера пункт «Получить Kubeconfig для доступа к кластеру».

    Такой файл автоматически создается для каждого нового кластера и имеет имя в формате <имя кластера>_kubeconfig.yaml.

    В дальнейших шагах предполагается, что загруженный файл имеет имя kubernetes-cluster-1234_kubeconfig.yaml и находится в директории ~/Downloads. Скорректируйте приведенные ниже команды при необходимости.

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

    1. Перейдите в директорию .kube/, которая находится в вашей домашней директории:

      cd ~/.kube
    2. Если такой директории не существует — создайте ее и назначьте минимально необходимые права:

      1mkdir ~/.kube && \
      2chmod -R 0600 ~/.kube && \
      3cd ~/.kube
    3. Поместите файл конфигурации в директорию ~/.kube под именем config:

      mv ~/Downloads/kubernetes-cluster-1234_kubeconfig.yaml ~/.kube/config
    4. Укажите kubectl использовать этот файл конфигурации, задав переменную среды окружения:

      export KUBECONFIG=$KUBECONFIG:$HOME/.kube/config
  6. Выполните тестовое подключение к кластеру:

    kubectl cluster-info

    Могут быть выведены:

    • Краткая информация о том, что control plane кластера и CoreDNS функционируют, например:

      1Kubernetes control plane is running at https://NNN.NNN.NNN.NNN:6443
      2CoreDNS is running at https://NNN.NNN.NNN.NNN:6443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy
      

      Это означает, что kubectl правильно сконфигурирован и успешно подключился к кластеру. Теперь можно использовать kubectl для управления вашим кластером.

    • Иные сообщения, которые могут указывать на проблемы с подключением, например:

      The connection to the server NNN.NNN.NNN.NNN:6443 was refused - did you specify the right host or port?
      Unable to connect to the server: EOF
  7. При проблемах с подключением:

    1. Проверьте, что:

      1. Кластер включен и работает.
      2. kubectl настроен корректно.
    2. Соберите вывод следующих команд:

      kubectl config view
      kubectl cluster-info dump
    3. Передайте собранную информацию в службу технической поддержки VK Cloud для диагностики и устранения проблемы.