AWS Classic Load Balancer配置Proxy Protocol

阿里云SLB不支持在TCP上挂SSL证书,拿HAProxy作为服务前置挂载证书会吃掉2个TCP连接数,单机只能撑近32K(65K的一半)的外部连接数。可以通过一些方法(比如增加Virtual Network Interface)突破这个限制,但服务因需挂SSL证书而额外绑定HAProxy,增加了一层中间件,架构图画出来后总觉得不好看。周一跑去服务器上动手脚,挂好SSL证书,可以拿掉HAProxy,连接数也突破了这个限制。 检查连接的时候发现服务能认TCP Source IP,阿里云SLB默认就开了Proxy Protocol,挺厉害的,不需要Client那边额外设置就能拿到Source IP。于是去AWS控制台找了一圈ELB的选项,没有开启Proxy Protocol的设置,倒是文档上写了可以通过awscli开启,折腾了一下把这个配置打开了,这里记录一下。 Proxy Protocol是什么Proxy Protocol是HAProxy的作者Willy Tarreau在2010年实现的一个Internet协议,在三次握手之后,由Proxy往TCP上插一个很小的数据包来传递客户端信息,如源IP、目标IP等,在负载均衡和后端服务通信或更复杂的网络环境时非常有用,有点类似HTTP请求上的X-Forwarded-For头。 Proxy Protocol有两个版本,V1和V2。 Human-readable header format (version 1)V1很简单,…