Сколько времени требуется для завершения работы на спотовых инстансах AWS?

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

Я новичок в AWS.

Допустим, у меня есть задание, которое я хочу запустить на спотовом экземпляре с ожидаемой частотой прерываний альфа (например, 5 процентов). В экземпляре по требованию того же типа выполнение задания занимает t минут. Теперь у меня есть следующие вопросы:

  1. Что именно означает уровень прерываний? Это должно быть как-то связано с продолжительностью использования экземпляра. Например, если вы используете спотовый инстанс в течение 1 часа, вероятность быть прерванным меньше, чем в ситуации, когда вы планируете использовать его в течение 2 часов. Но коэффициент прерывания выражается фиксированным числом. Что именно оно представляет?
  2. Если работа инстанса прерывается, существует ли возможность автоматически отправить запрос на новый спотовый инстанс того же типа в той же зоне доступности? В таком случае, сколько времени в среднем занимает получение нового экземпляра? Можно ли это оценить, используя частоту перерывов (другими словами, коррелирует ли период перерывов каким-либо образом с частотой перерывов)?
  3. Если я ограничусь только одним типом инстанса в одной зоне доступности, смогу ли я как-то оценить количество времени, необходимое для завершения работы на спотовом инстансе? Я предполагаю, что знаю, сколько времени потребуется для завершения задания на экземпляре по требованию того же типа, плюс я очень часто сохраняю статус задания.

Коэффициент перерывов — это процент перерывов за предыдущий месяц. Также обратите внимание, что его нижняя граница составляет 5%, поэтому перерыв каждую неделю приравнивается к отсутствию перерывов. Вы можете настроить ASG со спотовыми инстансами, но если в группе нет широкого разнообразия типов инстансов, вы можете не получить ни одного инстанса (и даже если у вас есть большое разнообразие, их все равно может не быть в наличии, это значение не включает ошибки «отсутствия емкости»). Спотовые инстансы и инстансы по требованию — это одно и то же оборудование, поэтому, если выполнение задачи по запросу занимает 1 час, на споте потребуется один час.

Anon Coward 24.02.2024 19:10
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
2
1
224
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Прерывание спотового инстанса обычно указывает на то, что количество «запасных» инстансов этого типа слишком мало и они были переназначены для неспотового использования (например, использования по требованию). Поэтому не рекомендуется ограничиваться «только одним типом экземпляров в одной зоне доступности», поскольку их, скорее всего, будет не хватать.

Если вы готовы использовать другую зону доступности или другой тип инстанса, скорее всего, там будет достаточно места.

Это основная концепция Spot Fleet — Amazon Elastic Compute Cloud:

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

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

Ответ принят как подходящий

Чтобы подробно ответить на ваш вопрос, давайте последовательно рассмотрим концепции:

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

Когда вы зайдете на https://aws.amazon.com/ec2/spot/instance-advisor/, он покажет вам некоторые подробности о типе инстансов и частоте их прерываний. Частота прерываний или частота прерываний означает, что из всех спотовых инстансов, которые были запрошены за последние 30 дней (независимо от продолжительности), примерно в x% времени их необходимо было вернуть.

Откуда: https://aws.amazon.com/ec2/spot/instance-advisor/ Частота прерываний представляет собой скорость, с которой Spot восстанавливает мощности в течение последнего месяца. Они находятся в пределах <5%, 5-10%, 10-15%, 15-20% и >20%.

Если бы вам пришлось это представить, представьте, что вы садитесь на поезд со скидкой 50% на билет с единственной оговоркой: если поезд переполнен и другой человек, заплативший полную стоимость билета, хочет войти, вам придется выйти из него. поезд (чтобы вы позволили этому человеку сесть в него без изменения вместимости). Наконец, если 4 из 20 поездок, которые вы совершаете (независимо от пройденного расстояния), будут означать, что 20% ваших поездок были «восстановлены».

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

  • в us-east-1 спотовые инстансы i3.large имеют вероятность восстановления > 20 %
  • в us-east-1 спотовые инстансы i4g.large имеют изменение при высвобождении <5 %.

учитывая сходство характеристик, вам следует выбрать i4g.large

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

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

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

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

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

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

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

Еще одна вещь: вы также можете рассмотреть возможность перехода со спотовых инстансов на инстансы по требованию, когда у вас нет больше доступных спотовых инстансов (например, если вы ждали 5 минут). Это должно позволить вам лучше прогнозировать продолжительность вашей работы, поскольку спот будет полезен только в том случае, если он доступен.

Спасибо за ответ. Что касается ответа на третий вопрос, я знаю, что могу использовать и другие варианты. Мой вопрос заключается в том, что «в случае, если я ограничусь только одним типом экземпляров», как я могу оценить время, необходимое для завершения работы.

Fish_n_Chips 11.03.2024 06:02

из-за ответа на вопрос 2 после того, как EC2 был фактически возвращен, невозможно подсчитать, сколько времени потребуется, чтобы стал доступен другой объект того же типа. Нет сообщения об ошибке, указывающего, когда он вернется, или показателей, которым нужно следовать. Вы будете зацикливаться на неопределенный срок, пока не освободится еще один EC2.

BlackStar 11.03.2024 16:13

Другие вопросы по теме