【发布时间】:2014-11-11 03:52:54
【问题描述】:
我有一个默认 3 档的免费 OpenShift 帐户。为此,我使用 OpenShift Web 控制台安装了 WildFly 8.1 映像。我将最小和最大缩放设置为 3。
现在发生的是 OpenShift 将创建 3 个 JBoss WildFly 实例:
- 入口节点上的一个(也运行 HAProxy)
- 辅助节点上的一个
- 一个在另一个辅助节点上
奇怪的是入口节点上的 JBoss WildFly 实例在负载均衡器配置 (haproxy.conf) 中默认禁用。但是,每当我在相关的 git 存储库中提交时,OpenShift 仍在向其部署战争档案。
这里的额外问题是,由于最大用户进程数非常少(通过 ulimit -u 为 250),入口节点上的这个 JBoss WildFly 实例甚至无法启动。在启动期间,JBoss WildFly 会抛出随机的“java.lang.OutOfMemoryError:无法创建新的本地线程”(不,内存很好,这是操作系统进程限制)。
因此,部署过程将挂起。
总结一下:
- 在入口节点上创建了一个 JBoss WildFly 实例,但在负载均衡器中被禁用
- 默认配置下的 JBoss WildFly 无法在入口节点上启动,即使是一场琐碎的战争也不行。
- 部署进程尝试部署到入口节点上的 JBoss WildFly,尽管它在负载平衡器中被禁用
现在我的问题:
如何修改部署程序进程(包括gear start 命令)以不尝试部署到入口节点上的 JBoss WildFly 实例?
【问题讨论】: