【发布时间】:2019-09-11 23:19:55
【问题描述】:
我们正在寻找自动化方法来水平、垂直扩展 ADF 中使用的自托管集成运行时虚拟机的拉力。
阅读 Microsoft 文档并不能提供答案。
【问题讨论】:
标签: azure ado azure-data-factory
我们正在寻找自动化方法来水平、垂直扩展 ADF 中使用的自托管集成运行时虚拟机的拉力。
阅读 Microsoft 文档并不能提供答案。
【问题讨论】:
标签: azure ado azure-data-factory
好吧,我没有经验,所以我只能给你一个理论上的答案,但也许它对你有帮助。
AFAIK,这两种方式都不能开箱即用。对于横向扩展,您必须自己部署额外的 IR 机器。因此,您可能想要创建一个可以从 docker 或 kubernetes 提供的映像,并安装 IR 和预要求。 IR 安装提供了一个 PowerShell 脚本,可用于创建自动连接。
对于向上/向下扩展,您必须运行一些脚本来扩展您的虚拟机。在 IaaS 解决方案(例如)Azure VM 中,这应该可以通过 API 调用来更改您的 VM。
对于这两种情况,您都必须安装某种监控器来监控 IR 负载并根据需要进行更改。我认为数据工厂中提供的措施应该可以。也许您可以使用 Log Analyics 来监控负载。
我很好奇你的用例。
【讨论】:
我的解决方案仅用于扩展/缩小,因为如果您要扩大/缩小,则必须重新启动 VM,这会导致停机和作业失败等。
在高层次上,这个解决方案只需要 3 个简单的东西:
这里有更多关于我们如何设置警报条件的详细信息,但要记住的主要内容是(IR CPU %、IR 队列长度、节点数,可能还有 IR 内存)
横向扩展
缩小
警报操作
正如您在下面看到的,我们有触发 1 个逻辑应用的警报,使用传递给逻辑应用的负载,您可以确定逻辑应用是应该启动虚拟机还是停止虚拟机。 (以及任何其他附加操作)
逻辑应用
由于时间原因(并且取决于共享 IR 的 ADF 数量),管道活动可能会在向节点 2 的 VM 发送解除分配命令的同时发送到节点 2 的可能性很小. 我还没有看到这种情况,但是根据您的需要调整警报条件可以帮助避免这种情况。随意调整警报条件、粒度、阈值等。这不是一种万能的解决方案。
【讨论】: