我使用jdbc连接到ms sql数据库,为本地和远程安装的配置和gov注册表设置了一个ESB集群。 1x mgt和2xworker
我们的.car文件包含一些转到配置的ws-security策略工件。当我部署到mgt时,它部署正常。我有SVN dep sync设置到群集,当它拿起.car时,它开始在worker上部署,但在将策略文件加载到conf时失败。它试图在共享conf中复制策略并失败 - 当然这是正确的;当.v文件由svn分发时,我应该如何部署这些“共享”工件?我需要能够正确控制部署。我能看到的唯一方法是通过开发工作室,这对我们的变革管理实践来说很糟糕。
谢谢你的帮助。
答案 0 :(得分:0)
我可以推荐多种解决方案。您可以决定从中选择什么。
由于您只有2个工作节点,因此您可以摆脱(禁用)部署同步并将汽车文件部署到所有节点。我相信你有一些自动化过程,因此部署到所有节点都不会有问题。在执行此操作时,请修改项目以将策略捆绑到单独的汽车文件,将服务捆绑到另一个。部署时,只将策略部署到管理节点,将服务部署到所有节点。
第二个选项是,将策略添加到本地注册表。即不是配置注册表,而不是治理注册表。然后,当您将汽车部署到管理节点时,它会将策略添加到管理节点的本地注册表。当汽车文件被解除同步时,工作节点将部署它们,并且它们将策略添加到其本地注册表。这将避免工作节点尝试将策略添加到同一位置。
通过回答问题,我觉得你也有外部数据库到本地注册表。但是,它没有必要。您可以将内部H2数据库用于本地注册表。 H2数据库有时会被破坏。如果发生这种情况,您只需删除H2数据库并使用-Dsetup选项重新启动服务器。拥有外部数据库很好。但是,那太过分了。