Мой клиент использует AWS для своих VPS. Одна вещь, с которой он сталкивается, состоит в том, что если ставки для экземпляра места превышают его ставки, то его экземпляры прекращаются. Казалось бы, не такая уж большая сделка, за исключением того, что спотовые экземпляры не являются постоянными, поэтому мы должны восстанавливать изображение каждый раз, когда это происходит.
То, что он хочет, это написать что-то, что будет проверять на завершенные экземпляры каждые X минут и автоматически перезапускать их. Что еще более важно, он хочет каким-то образом притвориться "настойчивостью". Лучшая идея, которую я имею, - просто создать изображение с каждого сервера за каждый промежуток времени Y, а затем загрузить с этого образа (если/когда этот экземпляр завершен).
Любые другие идеи были бы приятными для прослушивания. Я предполагаю, что мой вопрос: я нахожусь на правильном пути здесь, и вы, ребята, знаете какие-либо решения для этого, которые могут уже существовать?
ОБНОВЛЕНИЕ: Почти год спустя я возвращаюсь сюда, чтобы найти все эти замечательные ответы и гораздо больше внимания к теме, чем я когда-либо ожидал. Многие из нижеприведенных ответов, в то время как информативные и полезные, ставят под сомнение мои рассуждения. Я хочу сказать, что даже в то время я согласился на 100%, что это была не мудрая идея, а именно то, что мой клиент потребовал, несмотря на любую попытку с моей стороны, превратить вещи в лучшем направлении.
Спасибо вам большое за вашу помощь. Я в конечном итоге выяснил, как делать то, что я хотел, и смог написать код, который автоматически перезапускает завершенные экземпляры. Это было нелегко, но сработало хорошо, когда я перешел к новому клиенту.
Удачи любому из вас с той же проблемой, которую вы предпринимаете (возможно, силой, как и в моем случае), что будет непросто. Запросы с точки зрения дешевле, поскольку некоторые люди здесь ссылаются на свои ответы, в частности, потому что настойчивость не предлагается. В противном случае я предполагаю, что рынок "спот-запроса" будет стоить по-разному.
Все-таки, возможно, я сделал это, и это был отличный опыт. Когда нет пути, вы должны его подделать! Если вы этого не сделаете, другой будет.
ОБНОВЛЕНИЕ II: Я просто хочу напомнить всем, что это то, над чем я был в основном поставлен. В то время как многие люди просто уволили всю концепцию в то время, у меня получилось более или менее функциональное SaaS, позволяющее легко управлять и отслеживать все экземпляры экземпляров, в том числе возможность включать/отключать автоматическое постоянное повторное включение в экземпляр, время расписания для отдельных экземпляров (что они должны или не должны быть запущены) и т.д.
Хотя я абсолютно согласен с тем, что, с точки зрения разработчика, это нелогичный спрос, и в то время я не хотел этого делать, я бы сказал, что это было вроде как приятно, требуя работать над этим, потому что я не только многому научился, не только получил большую уверенность в своих способностях и моем коде, но я создал действительно полезный и, насколько мне известно, очень ценный фрагмент программное обеспечение для моего клиента (даже если они просили неправильные вещи, потому что они не знали лучше).
Я пытался отговорить его от этого, но он настаивал, и, поскольку он был тем, кто платил, я сосредоточил свое внимание там и не только выполнил то, что многие здесь отвергли, как глупо, но сделало его выгодным для кого-то.
Если бы это было глупо, это не спасло бы никаких денег.
Послушайте, я прочитал этот пост и немного съежился. Тогда я был намного более наивным. Я знаю AWS намного лучше, теперь, я кодирую намного лучше сейчас и т.д. Естественно.
Но я по-прежнему горжусь решением этого, тем более, что именно эти люди, более старые и гораздо более опытные, несомненно, великие программисты, которые говорили, что это невозможно или не нужно делать. Вы были теми, кто сделал мне вызов, так что спасибо!
Что делать, если это можно сделать выгодно? Вы уверены, что это не должно быть?