Подтвердить что ты не робот

Изменение типов экземпляров в кластере контейнеров

Некоторые из наших контейнеров работают лучше с памятью выше типа экземпляра, в настоящее время развернутого в нашем кластере контейнеров. Существует ли рекомендуемая практика для восстановления шаблона контейнера контейнера для более крупных экземпляров после создания кластера ядра контейнера?

Например, перейдите из экземпляров GCE с n1-стандартным-2 в n1-highmem-8 для запуска контейнеров с объемом выше 8 ГБ ОЗУ?

4b9b3361

Ответ 1

перейти от экземпляров GCE от n1-standard-2 до n1-highmem-8 для запуска контейнеров с объемом выше 8 ГБ?

Kubernetes 1.12 (сентябрь 2018) должен предоставить официальный способ управления вашим существующим ресурсом с помощью проблемы кубернетов 21 "Вертикальное масштабирование подстроек" (или " VPA ": вертикальный автосканер ").

Как объявлено в блоге:

Вертикальное масштабирование Pods теперь находится в стадии бета-версии, что позволяет варьировать пределы ресурсов на контейнере за время его существования. В частности, это ценно для домашних животных (то есть стручков, которые очень дорого разрушают и воссоздают).

Предупреждение:

Это приземление около 1.12, но это запуск независимого аддона. Он не включен в релиз 1.12 Kubernetes.
Sig-Architecture в начале этого цикла решила сохранить API VPA как CRD и, таким образом, не привязывать его к какой-либо конкретной версии K8S.

См. Больше в:

https://banzaicloud.com/img/blog/cluster-autoscaler/vertical-pod-autoscaler.png

Последняя статья из BanzaiCloud немного устарела (некоторые ссылки больше не действительны), но она по-прежнему показывает, как вы можете управлять своими ресурсами pod.

Ответ 2

В Container Engine в настоящее время нет API для этого, но поскольку он использует группу экземпляров Compute Engine для узлов вашего кластера, вы можете обновить его без необходимости помощи GKE. В Консоли разработчика скопируйте шаблон экземпляра, который выглядит как "gke--" и измените тип машины в нем, затем отредактируйте аналогично именованный экземпляр для использования нового шаблона. Эти параметры можно найти в Compute > Compute Engine > Instance templates и Compute > Compute Engine > Instance groups, соответственно.

Ответ 3

Другой подход:

(1), чтобы создать новый node -pool для кластера GKE с вертикально масштабированными машинами...

$ gcloud container node-pools create pool-n1std2 --zone europe-west1-d --cluster prod-cluster-1 --machine-type  n1-standard-2  --image-type gci --disk-size=250 --num-nodes 3

(2), затем перенастройте рабочие нагрузки со старых узлов...

$ kubectl drain gke-prod-cluster-1-default-pool-f1eabad5-9ml5 --delete-local-data --force

(3) и, наконец, удалить старый node -pool

$ gcloud container node-pools delete default-pool --cluster=prod-cluster-1

Примечания:

  • Предупреждение: Шаг 2 удаляет node локальные тома, например emptyDir!!!
  • Шаг 2 необходимо повторить для каждого node в пуле
  • Вместо того, чтобы дренировать узлы, можно настроить правильный nodeSelector, чтобы запланировать контейнеры в новый пул. Соответствие меток должно быть cloud.google.com/gke-nodepool: pool-n1std2

Ответ 4

  • Создайте новый пул node с настраиваемым типом машины, размером диска, num-узлами и любыми другими требуемыми параметрами.
  • Все шаги в Google Container Engine GKE node пулы.