Kubernetes Autoscaling - PullRequest
       37

Kubernetes Autoscaling

0 голосов
/ 07 ноября 2018

В моем кластере установлена ​​версия Kubernetes v1.12.1. Я скачал metrics-сервер из следующего репо: https://github.com/kubernetes-incubator/metrics-server

и затем выполните следующую команду: kubectl create -f metrics-server / deploy / 1.8 + /

А затем я попытался автоматически масштабировать развертывание, используя: Пример развертывания автомасштабирования kubectl - уровень приложения --min 1 --max 3 --cpu-процент 70 - пример пространства имен

но цели здесь не известны / 70 kubectl get hpa --spacename пример NAMESPACE NAME СПРАВОЧНЫЕ ЦЕЛИ MINPODS MAXPODS REPLICAS AGE пример example-app-tier Развертывание / example-app-tier / 70% 1 3 1 3h35m

и когда я пытаюсь запустить верхние узлы или модули kubectl, я получаю сообщение об ошибке: ошибка: метрики недоступны для модуля pod по умолчанию / pi-ss8j6, возраст: 282h48m5.334137739s

Так что я ищу любой учебник, который поможет мне шаг за шагом включить автоматическое масштабирование с использованием metrics-server или Prometheus (а не Heapster, поскольку он устарел и больше не будет поддерживаться)

Спасибо!

1 Ответ

0 голосов
/ 07 ноября 2018

вам нужно зарегистрировать свой сервер метрик на сервере API и убедиться, что они взаимодействуют.

https://github.com/kubernetes/kubernetes/issues/59438

Если это уже сделано, вам нужно проверить справку для команды kubectl top в вашей версии k8s, команда может по умолчанию использовать heapster, и вам может потребоваться указать ей использовать новую службу вместо этого.

https://github.com/kubernetes/kubernetes/pull/56206

из команды help похоже, что он еще не перенесен на новый сервер метрик и по-прежнему ищет heapster по умолчанию.

C02W84XMHTD5:tmp iahmad$ kubectl top node --help
Display Resource (CPU/Memory/Storage) usage of nodes. 

The top-node command allows you to see the resource consumption of nodes.

Aliases:
node, nodes, no

Examples:
  # Show metrics for all nodes
  kubectl top node

  # Show metrics for a given node
  kubectl top node NODE_NAME

Options:
      --heapster-namespace='kube-system': Namespace Heapster service is located in
      --heapster-port='': Port name in service to use
      --heapster-scheme='http': Scheme (http or https) to connect to Heapster as
      --heapster-service='heapster': Name of Heapster service
  -l, --selector='': Selector (label query) to filter on, supports '=', '==', and '!='.(e.g. -l
key1=value1,key2=value2)

Usage:
  kubectl top node [NAME | -l label] [options]

Use "kubectl options" for a list of global command-line options (applies to all commands).

примечание: Я использую 1.10, возможно, в вашей версии варианты разные

...