【问题标题】:Managing deployments for nodes running Camel routes管理运行 Camel 路由的节点的部署
【发布时间】:2013-11-12 20:52:20
【问题描述】:

我有一个使用 Camel 路由的企业应用程序,需要能够配置/启动/停止在多台机器上运行这些 Camel 路由的节点。

我将 Apache Karaf 和 JBoss Switchyard 作为两种解决方案来帮助我部署和管理这些路由。我想我理解 Apache Karaf 的价值,因为它是一个 osgi 容器,我可以在其中取消/部署新路由。 JBoss Switchyard 也会帮助我解决这个问题吗?

【问题讨论】:

    标签: deployment jboss apache-camel apache-karaf


    【解决方案1】:

    JBoss Fuse

    包含 Fuse Fabric 的 JBoss Fuse 可以在集群/云/等中管理和配置容器。

    JBoss Fuse 使用 Karaf 作为容器。所以你可以用 Karaf 做的事情,你也可以用 JBoss Fuse 做。

    除此之外,Fuse Fabric 还提供了所有集群配置和管理功能。并为 HA 等所有人提供分布式注册表。

    使用 JBoss Fuse,您可以在集群中部署和管理 Camel 路由。并在集群中的节点上执行滚动升级/降级,等等。除此之外,您还可以在 Karaf Shell 中使用命令来执行操作,以及基于 http://hawt.io/ 的 Web 控制台 UI。

    简短回答:是的,JBoss Fuse 可以在集群中管理和配置您的 Camel 路由。

    开关场

    就 JBoss SwitchYard 而言,它使用 JBoss Application Server / WildFly 作为其容器(此时 SY 尚不支持 OSGi)。因此 SY 充分利用了 JBoss Application Server 的集群和管理支持。

    【讨论】:

    • 谢谢比较,看来Fuse/Karaf这个时候最有用了。
    【解决方案2】:

    是的,使用 Apache Karaf,您可以通过安装适当的包或安装相应的 blueprint.xml(包含路由)来部署/取消部署路由,因为 Karaf 支持部署各种 xml 文件(生成到包中)在运行时)。这将为您提供一种简单的部署/开发方法。 karaf 还可以使用 def:watch 命令,它将帮助您开发 Bundle,因为它会监视您的文件/maven-repo 位置以获取更新,并将立即将它们安装在容器中。 为了在整个集群中分配路由,还有 Apache Karaf - Cellar,这是一个用于维护 Karaf 容器的集群能力的子项目。

    【讨论】:

      【解决方案3】:

      看看Zookeeper 及其对分布式路由策略的支持...

      另外,请查看这些主选举示例

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-04-01
        • 1970-01-01
        • 2011-11-23
        • 1970-01-01
        • 2013-01-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多