I have a group of CPU-bound worker machines that I want to scale, but I'm also cheap. Assuming that the work MUST always be done in a somewhat timely fashion regardless of instance cost, would it make sense to have something like:
In this case I would expect that:
Will the GCE instance group scaling work as I expect? Is there another scheduler that I should consider?
For reference, this would be the second iteration of worker infrastructure in GCP. Currently we're using 32x n1-standard-8 instances in a non-autoscaling group, but we're hoping to cut our core count in half.
Мне не удалось найти общедоступную документацию по внутреннему устройству балансировщика нагрузки, но этот технический документ может вас заинтересовать.
Я считаю, что ваш подход к использованию двух групп экземпляров может сработать в вашем случае. Поскольку невозможно предсказать, какая группа будет автоматически масштабироваться первой, игра с целевым процессором должна фактически дать вам способ взвесить, какая группа автоматически масштабируется первой.
Я также вижу одно предостережение, которое определяет максимальное количество узлов в вашей невытесняемой группе. Я имею в виду, что если эта группа достигает максимального количества узлов, а вытесняемая группа не может масштабироваться , ваше приложение может пострадать. В любом случае, если вы используете этот тип виртуальных машин, ваше приложение должно быть отказоустойчивым.