我们在Azure HDInsight上使用Spark 2.2进行临时探索和批处理作业。
作业应该在5x中型VM群集上正常运行。他们是1.笔记本(Zeppelin与Livy.spark2魔法)2.编制的罐子……
您可以使用PowerShell或Azure经典CLI来扩展/缩小群集。但您可能需要编写脚本来跟踪群集资源使用情况并自动缩小。
这是一个powershell语法
Set-AzureRmHDInsightClusterSize -ClusterName <Cluster Name> -TargetInstanceCount <NewSize>
这是一个PowerShell工作流程Runbook,可帮助您根据需要自动执行扩展或缩小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 Databricks是最佳选择(但它只是Spark集群,没有Hadoop组件(Hive除外))。作为HDInsight - Spark不是Azure托管服务,并且不会解决您的用例。
下面是新集群的图像(在Azure数据块中) - 我突出显示了“启用自动缩放选项”,它允许您在执行作业时动态扩展。
我被告知Azure Databricks可能是这个用例的更好解决方案。