5

Autoscaling позволяет автоматически добавлять или удалять вычислительные механизмы на основе нагрузки. Предпосылками автомасштабирования в GCP являются шаблон экземпляра и группа управляемых экземпляров.Как настроить группу управляемых экземпляров и автомасштабирование в облачной платформе Google

Этот вопрос является частью другого question's answer, который посвящен созданию автомасштабированного и сбалансированного по нагрузке бэкэнд.

Я написал ниже ответ, содержащий шаги по настройке автосканирования в GCP.

+4

Просто прочитайте мета об этих вопросах. Я согласен с вашим подходом - создавать отдельные вопросы и предлагать потенциально высококачественные ответы от других пользователей по конкретным вопросам. Однако, возможно, вы могли бы сформулировать эти вопросы, чтобы больше походить на вопросы? Например. «Как настроить группу управляемых экземпляров и автомасштабирование на платформе Google Cloud?». Вы могли бы даже включить немного контекста из исходного вопроса. Это может сделать вопрос более доступным для поиска и позволит людям отвечать на него без необходимости знать исходный контекст. –

+0

@graham Я изменил вопрос в соответствии с вашим предложением. Вы хотите, чтобы я удалил ссылку «Этот вопрос является частью ответа другого вопроса» из вопроса? –

ответ

13

Autoscaling - это функция группа управляемого экземпляра в GCP. Это помогает обрабатывать очень высокий трафик, увеличивая количество экземпляров, и в то же время он также уменьшает количество случаев, когда нет трафика, что экономит много денег.

Чтобы настроить автомасштабирование, нам нужно следующее:

  • шаблон Instance
  • Управляемый Instance группа
  • Автомасштабирование политика
  • Health Check

шаблон Instance является чертеж, который определяет машинный тип, изображение, диски ho которые будут выполняться в группе автомасштабированных управляемых экземпляров. Я написал шаги для настройки шаблона экземпляра here.

Группа управляемых экземпляров помогает поддерживать группу однородных экземпляров, основанную на одном шаблоне экземпляра. Предполагая шаблон экземпляра как образец шаблона . Это может быть создан с помощью следующей команды в gcloud:

gcloud compute instance-groups managed \ 
create autoscale-managed-instance-group \ 
--base-instance-name autoscaled-instance \ 
--size 3 \ 
--template sample-template \ 
--region asia-northeast1 

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

  • базового имя-экземпляр будет базовым именем для всех автоматически создаваемых экземпляров. В дополнение к базовому имени каждое имя экземпляра будет добавлено уникально созданной случайной строкой.
  • размер представляет собой желаемое количество экземпляров в группе. На данный момент три экземпляра будут работать постоянно, независимо от объема трафика, создаваемого приложением. Позже он может быть автомасштабирован путем применения политики к этой группе.
  • регион (многозонный) или однозонный: управляемая группа экземпляров может быть либо настроена в регионе (многозонный), то есть однородные экземпляры будут равномерно распределены по всем зонам в данной области или всем экземпляры могут быть развернуты в одной зоне внутри региона. Он также может быть развернут как кросс-область, которая в настоящее время находится в альфа-режиме.

Политика автоисследования определяет поведение автоскалеров.Автоскаллер объединяет данные из экземпляров и сравнивает их с требуемой мощностью, как указано в политике, и определяет действие, которое необходимо предпринять. Есть много политики автоматического масштабирования как:

  • Средняя загрузка процессора

  • обслуживающей мощности балансировки нагрузки HTTP (запросы/второй)

  • Stackdriver стандартные и пользовательские метрики

  • и many more

Теперь, Представляя AutoScaling к этому управляемого экземпляра группы, выполнив следующую команду в gcloud:

gcloud compute instance-groups managed \ 
set-autoscaling \ 
autoscale-managed-instance-group \ 
--max-num-replicas 6 \ 
--min-num-replicas 2 \ 
--target-cpu-utilization 0.60 \ 
--cool-down-period 120 \ 
--region asia-northeast1 

Приведенная выше команда настраивает autoscaler на основе загрузки процессора в диапазоне от (в случае нет трафика) до (в случае интенсивного движения).

  • остывания-период флаг указывает количество секунд ожидания после того, как экземпляр был запущен до того, как связанный autoscaler начинает собирать информацию от него.
  • Автосканер может быть связан максимум с 5 различных политик. В случае более чем одной политики Autoscaler рекомендует политику, которая уходит с максимальным количеством экземпляров.
  • Интересный факт:, когда экземпляр развернут автоскалером, он гарантирует, что экземпляр запускается не менее 10 минут независимо от трафика. Это делается из-за того, что счеты GCP в течение как минимум десятиминутного времени работы для вычислительного двигателя. Он также защищает от неустойчивого поворота и закрытия экземпляров.

Лучшие практики: С моей точки зрения, лучше создать собственное изображение со всем вашим программным обеспечением, установленным чем использовать сценарий запуска. Поскольку время запуска новых экземпляров в группе автомасштабирования должно быть как можно меньше. Это увеличит скорость, с которой вы масштабируете свое веб-приложение.

Это часть 2 из 3-part series о создании автомасштабированного и сбалансированного по нагрузке бэкэнд.

+1

Благодарим вас за «Интересный факт» и «Лучшие практики» –

+0

В чем разница между установкой использования ЦП в группе экземпляров и установкой его в команде для добавления бэкэнд-сервера или бэкэнд-сервиса? Они поддерживают вариант, который кажется излишним и запутанным. – odigity

Смежные вопросы