☸️ Как использовать команду Scale в Kubernetes

Изучаем команду scale

by itisgood

Одной из важнейших особенностей Kubernetes является возможность легко масштабировать наши контейнеризированные приложения.

Это позволяет администраторам справляться с возросшим трафиком путем добавления большего количества реплик, способных справиться с ростом активности.

Kubernetes справляется с нагрузкой разумно, равномерно распределяя работу между подами в кластере, гарантируя, что ни одна из них не будет перегружена.

Наличие нескольких реплик также означает, что мы можем выполнять скользящие обновления без каких-либо простоев, поскольку реплики могут обновляться одна за другой, и их всегда будет достаточно для обслуживания входящего трафика.

В этом руководстве мы покажем вам, как использовать команду kubectl scale для масштабирования приложений путем настройки дополнительных реплик в системе Linux.

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

Использование команды Scale в Kubernetes

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

Давайте начнем с проверки наших текущих развертываний.

В этом примере у нас запущен один контейнер Nginx:

☸️ Как развернуть Nginx в кластере Kubernetes

$ kubectl get deployments
NAME           READY   UP-TO-DATE   AVAILABLE   AGE
nginx-server   1/1     1            1           55s
  • NAME показывает имя нашего развертывания (развертываний).
  • READY – количество реплик, доступных для развертывания, из общего числа.
  • UP-TO-DATE – сколько реплик соответствует последней версии развертывания.
  • AVAILABLE – количество реплик, которые еще не были обновлены.
  • AGE – сколько времени прошло с момента создания развертывания.

Используя аргумент scale в kubectl, мы можем масштабировать наши развертывания вверх или вниз и указать количество реплик, которые мы хотим использовать для развертывания.

В этом примере мы увеличим масштаб развертывания nginx-сервера, увеличив его с одной реплики до пяти.

$ kubectl scale deployments/nginx-server --replicas=5

выполняем следующую команду сразу после команды scale:

$ kubectl get deployments

Сначала команда выдает результат, указывающий на готовность 1/5 реплик.

Несколько минут спустя, когда мы снова выполняем команду, мы подтверждаем, что все пять наших реплик теперь готовы.

Давайте получим дополнительную информацию от наших реплик, выполнив команду:

$ kubectl get pods -o wide

Мы также можем получить некоторую информацию о реплике для нашей установки с помощью этой команды:

$ kubectl describe deployments/nginx-server | grep Replicas
Replicas:               5 desired | 5 updated | 5 total | 5 available | 0 unavailable

Синтаксис для уменьшения масштаба развертывания такой же.

С помощью этой команды мы уменьшим количество реплик сервера Nginx с пяти до трех.

$ kubectl scale deployments/nginx-server --replicas=3

Заключение

В этом руководстве мы рассмотрели, как использовать команду kubectl scale в Kubernetes в системе Linux.

Эта команда используется для увеличения или уменьшения количества реплик, запущенных для развертывания в нашем кластере Kubernetes.

Контролируя количество реплик, мы можем масштабировать приложение для удовлетворения растущего спроса или сокращать его, когда количество реплик становится чрезмерным.

Наличие нескольких реплик также дает нам возможность выполнять скользящие обновления.

см. также:

 

You may also like

Leave a Comment