【问题标题】:HAProxy error on OpenShift - Failed to execute: 'control restart'OpenShift 上的 HAProxy 错误 - 无法执行:“控制重启”
【发布时间】:2014-03-20 13:39:53
【问题描述】:

我正在尝试在 OpenShift 上配置 HAProxy 以实现以下基于 URL 的路由。

当我尝试重新启动我的应用程序时,我在 HAProxy 日志中收到以下错误

启动前端 http-in:无法绑定套接字

以下是我对 haproxy.cfg 所做的更改,此外我还在 global 部分添加了“user nobody”。我究竟做错了什么?我是 HAProxy 的新手,所以我相信这可能是我缺少的非常基本的东西。

frontend http-in
    bind :80
    acl is_blog url_beg /blog
    use_backend blog_gear if is_blog
    default_backend website_gear

backend blog_gear
    mode http
    balance roundrobin
    option httpchk
    option forwardfor
    server WEB1 nodejs-realspace.rhcloud.com weight 1 maxconn 512 check

backend website_gear
    mode http
    balance roundrobin
    option httpchk
    option forwardfor
    server WEB2 website-realspace.rhcloud.com weight 1 maxconn 512 check

【问题讨论】:

  • 您在设备上的 haproxy 日志中看到了哪些错误?
  • 我修复了配置中的其他问题(上面已编辑)。现在,我在 HAProxy 日志中看到错误“正在启动前端 http-in:无法绑定套接字”。我在全局部分添加了“用户没有人”。
  • 我刚刚通过运行 lsof -Pni | 验证了目前没有其他进程在端口 80 上运行。 grep ":80"。
  • 我也尝试绑定到公共 IP 地址,如 23.20.106.153:80,但这也给出了同样的错误。

标签: node.js openshift haproxy


【解决方案1】:

请注意您的配置中的一些问题。

您的配置中的第一个问题是您应该侦听端口 8080。 外部的 80、443、8000 和 8443 端口将被重定向到您设备上的 8080 端口。

第二个网站-realspace.rhcloud.com 可能是您的设备的外部名称,它也托管您的 HAProxy。这意味着您已经创建了一个循环。

要访问您的 nodejs 应用程序,您需要使用分配给您的装备的 127.a.b.c 地址。 此外,您的 nodejs 应用程序很可能无法侦听与 HAProxy 相同的端口。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-09-29
    • 1970-01-01
    • 2014-10-14
    • 1970-01-01
    • 1970-01-01
    • 2014-04-01
    • 2013-05-21
    • 1970-01-01
    相关资源
    最近更新 更多