Вы можете использовать PowerShell или Azure classic CLI для масштабирования кластера. Но вам может понадобиться написать скрипт для отслеживания использования ресурсов кластера и его автоматического уменьшения.
Вот синтаксис PowerShell
Set-AzureRmHDInsightClusterSize -ClusterName <Cluster Name> -TargetInstanceCount <NewSize>
Вот рабочая книга PowerShell, которая поможет вам автоматизировать процесс расширения или уменьшения количества кластеров HDInsight в зависимости от ваших потребностей
https://gallery.technet.microsoft.com/scriptcenter/Scale-your-HDInsight-f57bb4d8
или
Вы можете использовать опцию ниже, чтобы масштабировать ее вручную (хотя ваш вопрос заключается в том, как автоматически увеличивать / уменьшать, я подумал, что это будет полезно для тех, кто хочет увеличить / уменьшить вручную)
Ниже приведена ссылка на статью, объясняющую различные методы масштабирования кластера с помощью PowerShell или Classic CLI (помните: последний CLI не поддерживает функцию масштабирования)
https://docs.microsoft.com/en-us/azure/hdinsight/hdinsight-scaling-best-practices
Если вы хотите, чтобы Spark обрабатывал его динамически, то блок данных Azure - лучший выбор (но это только кластер Spark, никаких компонентов Hadoop (кроме Hive)). Поскольку HDInsight - Spark не является управляемой службой Azure, она не решит ваш вариант использования.
Ниже приведено изображение нового кластера (в блоках данных Azure) - я выделил «включить параметр автоматического масштабирования», который позволит вам динамически масштабироваться при выполнении задания.