Приветствую
В общем, есть некий сервис, реализуемый, грубо говоря, двумя категориями узлов - это узлы СУБД и узлы вычислительные. Нагрузки на сервис периодически меняются.
Хочется:
а) освобождать излишние vCPU мощности вычислительных узлов, когда в этом нет нужды.
б) добавлять vCPU мощности вычислительным узлам, когда такая нужда появляется.
в) все это делать автоматизированно
Может, кто что интересного скажет, с учетом:
а) Вопроса поддержки гостем и гипервизором горячего удаления vCPU
б) Отключения vNUMA при том, что вычислительный софт в вопросах аллокации CPU целиком полагается на ОС и не умеет одним процессом работать в разных NUMA-нодах
в) Задачу теоретически можно решать и путем выделения дополнительных вычислительных узлов, но тут тоже есть свои нюансы, и эта методика вполне может оказаться сложнее.
PS Конечно же, vCPU должны выдаваться с резервированием. И при этом хочется не платить за излишние ресурсы, когда они не нужны.