haproxy不再启动,它显示错误
bind <ip>:443' : unable to load SSL private key from PEM file ...
Run Code Online (Sandbox Code Playgroud)
我们没有更改证书或配置上的任何内容.自上次启动以来,我们只对系统进行了正常更新.
为了找到错误,我生成了一个全新的证书(自签名),但错误仍然存在.
这是PEM文件的结构:
-----BEGIN CERTIFICATE-----
MIIDXjCCAkY...
-----END CERTIFICATE-----
-----BEGIN RSA PRIVATE KEY-----
MIIEpgIBAAKC....
-----END RSA PRIVATE KEY-----
Run Code Online (Sandbox Code Playgroud)
我还尝试将私钥转换为
openssl pkcs8 -topk8 -inform pem -in server.key -outform pem -nocrypt -out server_new.key
Run Code Online (Sandbox Code Playgroud)
但是haproxy仍然显示相同的错误.
我现在想要几个小时,但我找不到原因.请帮忙!谢谢!
更新:
该问题与文件访问有关.PEM文件存储在/data/ssl/domainname/domainname.pem中.文件权限还可以.当我将PEM文件移动到/ etc/haproxy时,一切正常.
我担心在商业生产环境中使用GPL v2和GPL v3许可软件.我想使用HaProxy作为负载平衡解决方案.复制左边是否安全?我不会修改源代码中的任何内容,系统的体系结构需要使用负载均衡器.
它将嵌入更大的分布式系统中.所以我们卖的是整个系统.在另一个站点上,我们需要再次安装负载均衡器,并可能与其他东西混合使用.我认为这是"分配"一词让我感到困惑.
我是sys管理员的新手,并且只配置了一个带有nginx(服务静态文件)和gunicorn作为Web服务器的VPS.
我最近一直在阅读其他不同的东西.我开始了解其他工具:
nginx:高性能HTTP服务器和反向代理,以及IMAP/POP3代理服务器
haproxy:高性能负载均衡器
varnish:缓存HTTP反向代理
gunicorn:python WSGI http服务器
uwsgi:另一个python WSGI服务器
我一直在阅读有关上述所有5种工具的内容,我对于哪一种用于何种目的感到困惑?有人可以用非专业人的方式向我解释一下,当一起使用时,每种工具的用途是什么,以及它们涉及哪些具体问题?
我正在构建一个具有多个前端和后端的haproxy配置文件.这将是几百行,我宁愿将其拆分为我想要负载均衡的每个不同网站的单独文件.
HAProxy是否能够链接到主haproxy.cfg文件中的部分配置文件?
希望是一个简单的问题.如果之前已经报道过,我道歉.我正在学习haproxy,整体看起来非常简单明了.但是我很好奇使用前端/后端和listen配置块之间的区别是什么?我的假设是,对于基本配置,listen更简单,而前端/后端更高级,允许您动态切换后端或共享后端等.这是简单的吗?
谢谢,
人
我们目前正在使用HAProxy作为负载均衡器,它会定期向下游框发出请求,以确保它们使用OPTIONS请求存活:
选项/index.html HTTP/1.0
我正在使用缓存(使用ncache)将nginx设置为反向代理.出于某种原因,当OPTIONS请求进入时,nginx返回405:
192.168.1.10 - - [22/Oct/2008:16:36:21 -0700]"OPTIONS /index.html HTTP/1.0"405 325" - "" - "192.168.1.10
当直接点击下游网络服务器时,我得到了适当的200响应.我的问题是:如何让nginx将响应传递给HAProxy,或者,如何在nginx.conf中设置响应?
它已经存在了一段时间,但现在亚马逊发布了Elastic Load balance(ELB),您对为高流量Web应用程序部署此解决方案有何看法?
我们应该更换HAProxy还是将ELB视为HAProxy面前的免费服务?
我们最近从HTTP转移到了HTTPS.由于我们已经转移到HTTPS,我们正在考虑转向HTTP/2以获得性能优势.
如上所述,浏览器和LB之间的请求是安全的(HTTPS),而LB和应用服务器之间的通信仍然使用HTTP
使用当前设置启用HTTP/2的可能性有多大?我们可以在浏览器和LB之间启用HTTP/2,而LB和应用服务器之间的通信仍然在HTTP上吗?
我正在尝试使用"空"配置文件启动haproxy(版本1.5.8 2014/10/31),我得到:
user@server:~$ sudo service haproxy start
[....] Starting haproxy: haproxy[ALERT] 126/120540 (7363) : Starting frontend GLOBAL: cannot bind UNIX socket [/run/haproxy/admin.sock]
Run Code Online (Sandbox Code Playgroud)
尽管它已启用:
user@server:~$ cat /etc/default/haproxy
# Set ENABLED to 1 if you want the init script to start haproxy.
ENABLED=1
Run Code Online (Sandbox Code Playgroud)
配置文件:
global
log /dev/log local0
log /dev/log local1 notice
chroot /var/lib/haproxy
stats socket /run/haproxy/admin.sock mode 660 level admin
stats timeout 30s
user haproxy
group haproxy
daemon
# Default SSL material locations
ca-base /etc/ssl/certs
crt-base /etc/ssl/private
# Default ciphers to …Run Code Online (Sandbox Code Playgroud)