繁体   English   中英

自托管集成运行时的水平/垂直扩展

[英]Horizontal/Vertical scaling of self hosted integration runtime

我们正在寻找自动化的方法来水平、垂直扩展 ADF 中使用的自托管集成运行时虚拟机的拉力。

阅读 Microsoft 文档不提供答案。

好吧,我没有经验,所以我只能给您一个理论上的答案,但这也许对您有所帮助。

AFAIK,两种方法都不是现成的可配置的。 为了进行横向扩展,您必须自己部署其他IR机器。 因此,可能要创建一个可以从docker或kubernetes进行配置的映像,并安装IR和先决条件。 IR安装提供了一个PowerShell脚本,可用于创建自动连接。

对于放大/缩小,您必须运行一些脚本来缩放您的虚拟机。 在IaaS解决方案(fe)Azure VM中,应该可以通过API调用来更改您的VM。

对于这两种情况,您都必须安装某种监视程序,以监视IR负载并根据需要进行更改。 我认为数据工厂中提供的措施应该可以。 也许您可以使用Log Analyics来监视负载。

我很好奇您的用例。

我的解决方案仅用于向外扩展/向内扩展,因为如果您要向上/向下扩展,则必须重新启动 VM,这会导致停机和作业失败等。

在高层次上,这个解决方案只需要 3 件简单的事情:

  1. 发生横向扩展时触发的 Azure 指标警报(VM 启动)
  2. Azure 指标警报在应该发生缩减时触发(VM 解除分配)
  3. 由 Azure 警报触发并实际执行 VM 的启动/停止以及与此相关的任何其他自动化的逻辑应用程序(例如,在发生缩小/缩小时发布到团队频道)

这里有更多关于我们如何设置警报条件的细节,但要记住的主要事情是(IR CPU %、IR 队列长度、节点数,可能还有 IR 内存)

向外扩展

横向扩展条件

缩小

缩小条件

警报操作

正如您在下面看到的,我们有触发 1 个逻辑应用程序的警报,使用传递给逻辑应用程序的有效负载,您可以确定逻辑应用程序是应该启动 VM,还是停止 VM。 (以及任何其他附加操作) 行动小组

逻辑应用

逻辑应用开发

由于时间原因(并且取决于共享 IR 的 ADF 数量),管道活动可能会发送到节点 2,同时向节点 2 的 VM 发送解除分配命令。我有目前还没有看到这种情况,但是根据您的需要调整警报条件可以帮助避免这种情况。 随意调整警报的条件、粒度、阈值等。这不是一刀切的解决方案。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM