AWS EC2 Auto Scaling Groups: я получаю Min и Max, но для чего нужен лимит экземпляров?

при настройке групп автоматического масштабирования в AWS EC2 Min и Max границы вяжется:

  • минимальное количество экземпляров для масштабирования на основе политик
  • максимальное количество экземпляров для масштабирования на основе политик

тем не менее, я никогда не был в состоянии обернуть голову вокруг того, что черт возьми Desired не затрагивает.

я всегда просто установить Desired равна Min, потому что как правило, я хочу заплатить Amazon минимальную десятину, и если вам не нужен экземпляр для обработки загрузки, он должен быть в Min количество экземпляров.

я знаю, если вы используете ElasticBeanstalk и назначить Min 1 и Max до 2 он устанавливает Desired на 2 (конечно!) ... вы не можете выбрать значение Desired.

каков был бы вариант использования для другого Desired количество экземпляров и чем она отличается? Когда вы ожидаете, что AWS будет масштабироваться ниже вашего Desired Если нужные превышает Min?

4 ответов


вот объяснения значений "min, desired и max" из поддержки AWS:

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

желаемый: если вы отключите будильник CloudWatch для масштабирования события, то это уведомит автоматический масштабатор, чтобы изменить его на указанный большее количество, и автоматический масштабатор запустит экземпляр / S для удовлетворения это число. Если вы отключите будильник CloudWatch, чтобы уменьшить масштаб, то он изменит автоматический масштабатор на указанное меньшее число и автоматический масштабатор завершит экземпляр / s, чтобы добраться до этого числа.

MAX: это будет максимальное количество экземпляров, которые вы можете запустить в ваша группа автоматической шкалы. Если ваш масштаб CloudWatch alarm остается срабатывает, ваша группа AUTO scale никогда не будет создавать экземпляры больше чем максимальная указанная сумма.


подумайте об этом как элемент скользящего диапазона UI.

enter image description here

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

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

aws autoscaling set-desired-capacity --auto-scaling-group-name my-auto-scaling-group --desired-capacity 2 --honor-cooldown

источник


когда вы ожидаете, что AWS будет масштабироваться ниже желаемого, если это необходимо больше, чем мин?

это происходит, когда вы устанавливаете будильник CloudWatch на основе некоторой политики автоматического масштабирования. Всякий раз, когда этот сигнал тревоги запускается, он обновит DesiredCount до того, что упоминается в config.

например, если конфигурация AutoScalingGroup имеет Min=1, Desired=3, Max=5, и на AutoScalingPolicy установлен сигнал тревоги, который говорит, Если использование ЦП Remove 1 instances затем он будет продолжать уменьшать количество экземпляров на 1 всякий раз, когда срабатывает сигнал тревоги, пока DesiredCount = MinCount.

извлеченные уроки: установите MinCount равным > 0 или = DesiredCount. Это позволит убедиться, что приложение не сбивается, когда mincount=0 и использование процессора идет вниз.


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

другими словами,

масштабирование или масштабирование выполняются путем уменьшения или увеличения DesiredCapacity значение.