У меня есть кластер (виртуальных) серверов разработки, настроенных с использованием виртуального бокса. Каждый из этих серверов предназначен для независимого продукта, и их использование, как правило, сосредоточено на нескольких из них в любой момент времени. Можно ли настроить эти серверы таким образом (используя виртуальный ящик или другое программное обеспечение для виртуализации), чтобы сервер отключался до тех пор, пока не будет сделан веб-запрос к этому серверу, и что серверы, которые не были задействованы некоторое время будет выключен? Спасибо.
Конечно, более чем возможно приостановить / возобновить или даже выключить / включить виртуальные машины в зависимости от нагрузки, но проблема, с которой вы столкнетесь при выполнении этого, скажем, веб-запроса, заключается в том, что запрос почти наверняка истечет по времени до того, как сервер снова включен. Если вы сделали это с помощью паузы, вам может это сойти с рук, но, очевидно, виртуальная машина останется в одной форме памяти, даже когда она приостановлена, экономя вам только ЦП - который, если бы не выполнялась задача, в любом случае был бы довольно низким, устраняя необходимость паузы Это.
Для справки я использую VMWare vSphere для запуска большего количества единиц различных типов виртуальных машин в зависимости от нагрузки, но эта нагрузка распространяется на сотни тысяч одновременных пользователей, поэтому я могу справиться с отсутствием детализации.
Да, и один из способов сделать это - настроить балансировщики нагрузки на передачу отчетов о высокой и низкой нагрузке на одну или несколько управляющих виртуальных машин, которые затем берут на себя работу по увеличению и уменьшению количества виртуальных машин.