Skip to content

Kubernetes ​

Управляемый Kubernetes создаёт кластер в выбранном вами регионе и позволяет запускать рабочие нагрузки через kubectl. Кластеры привязаны к вашей организации, а подключение к ним выполняется с помощью загружаемого kubeconfig.

Создание кластера ​

В консоли откройте Kubernetes → Create cluster и заполните поля:

  • Имя — строчные буквы, цифры и дефисы. Должно начинаться и заканчиваться буквой или цифрой и содержать не более 63 символов (метка RFC 1123), например prod-eu.
  • Регион — выберите один из доступных в списке.
  • Версия — 1.30 (по умолчанию), 1.29 или 1.28.

Список кластеров показывает для каждого кластера имя, версию, количество узлов, статус и регион.

После создания кластер переходит в состояние provisioning. Когда подготовка завершится, статус сменится на running.

Подключение через kubectl ​

После завершения подготовки кластера скачайте его kubeconfig и укажите его для kubectl:

bash
export KUBECONFIG=~/Downloads/<name>.kubeconfig.yaml
kubectl get nodes
kubectl get pods -A

kubeconfig также доступен программно через подписанный gRPC API (nexlayer.k8s.v1.K8sService/GetClustersKubeconfig) в формате YAML. kubeconfig становится доступным только после завершения подготовки кластера — пока кластер ещё создаётся, вызов возвращает kubeconfig not yet available.

WARNING

kubeconfig предоставляет полный доступ к вашему кластеру. Храните его в секрете — относитесь к нему как к паролю и никогда не добавляйте в систему контроля версий.

Пулы узлов и масштабирование ​

У каждого кластера есть пул узлов (node pool). Чтобы масштабировать его, задайте желаемое количество узлов в консоли. Значение ограничивается максимумом платформы, и на время применения изменения статус пула становится scaling. Программно это K8sService/CreatePoolsScale с { "node_count": 3 }.

Удаление кластера ​

Удаление кластера (из консоли или через K8sService/DeleteClusters) устанавливает его статус в deleting и останавливает его узлы.

WARNING

Удаление кластера удаляет его узлы и все запущенные на них рабочие нагрузки. Это действие необратимо.

Статусы кластера ​

  • provisioning — кластер создаётся.
  • running — кластер готов к использованию.
  • scaling — изменяется размер пула узлов.
  • deleting — кластер удаляется.

Справочник API ​

API управления — это gRPC: сервис nexlayer.k8s.v1.K8sService, вызываемый подписанным клиентом Aral Cloud с токеном Bearer — тот же транспорт, что использует консоль.

RPCЗапрос
CreateClusters{ name, region, version }
ListClusters—
GetClustersKubeconfig{ id }
DeleteClusters{ id }
CreatePoolsScale{ id, node_count }

TIP

Предпочитаете делать всё из терминала? Смотрите руководство по CLI.