【问题标题】:Best practice to deploy wso2 esb policies部署 wso2 esb 策略的最佳实践
【发布时间】:2016-07-26 11:21:15
【问题描述】:

我已经设置了一个 ESB 集群,使用 jdbc 连接到 ms sql 数据库,用于本地和远程安装的配置和 gov 注册表。 1x mgt 和 2xworker

我们的 .car 文件包含一些用于配置的 ws-security 策略工件。当我部署到 mgt 时,它部署正常。我在集群中设置了 SVN dep 同步设置,当它拿起 .car 时,它开始在工作人员上部署,但在将策略文件加载到 conf 时失败。它试图在共享 conf 中复制策略并失败 - 当然这是正确的,但是;当 .car 文件由 svn 分发时,我应该如何部署这些“共享”工件?我需要能够正确控制部署。我能看到的唯一方法是通过开发工作室,这对我们的变更管理实践来说很糟糕。

感谢您的帮助。

【问题讨论】:

    标签: deployment wso2 esb shared remote-registry


    【解决方案1】:

    我可以推荐多种解决方案。您可以决定从中选择什么。

    1. 由于您只有 2 个工作节点,您可以摆脱(禁用)部署同步并将汽车文件部署到所有节点。我相信您有一些自动化过程,因此部署到所有节点不会有问题。这样做时,修改您的项目以将策略捆绑到一个单独的汽车文件,并将服务捆绑到另一个文件。部署时,仅将策略部署到管理节点,将服务部署到所有节点。

    2. 第二个选项是将策略添加到本地注册表。即不是配置注册表,不是治理注册表。然后,当您将汽车部署到管理节点时,它会将策略添加到管理节点的本地注册表中。当汽车文件被 dep-sync 时,工作节点将部署它们并将策略添加到其本地注册表中。这将避免工作节点尝试将策略添加到同一位置。

    通过这个问题,我觉得您在本地注册表中也有外部数据库。但是,它没有必要。您可以将内部 H2 数据库用于本地注册表。 H2 数据库有时会损坏。如果发生这种情况,您所要做的就是删除 H2 数据库并使用 -Dsetup 选项重新启动服务器。有一个外部数据库很好。但是,那是矫枉过正。

    【讨论】:

    • 感谢您的回复。这些也是我们想出的选项。
    • 那么,你们决定好了吗?
    • 我确定可以忽略我在部署时收到的错误消息。该策略导致部署者尝试将用户插入到每个集群节点上的用户存储中。 mgt 服务器正常工作,工作人员都抛出错误。我知道它为什么会发生,也许它会在未来被 wso2 修复
    猜你喜欢
    • 2013-03-01
    • 1970-01-01
    • 2022-08-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-25
    • 2017-07-06
    相关资源
    最近更新 更多