在AWS负载均衡器之后部署Nginx

时间:2020-02-27 16:09:48

标签: docker nginx flask aws-load-balancer

我有一个dockerized python flask应用程序,前面有一个ngnix docker实例充当转发代理。这两个容器都部署在AWS EC2上,并使用Route53 DNS条目将流量路由到nginx,然后将请求传递到python flask服务器。

我现在想切换到https,发现here发现在docker中使用Letsencrypt部署https很简单,坦率地说,非常混乱。

我正在考虑将AWS负载均衡器放在整个设置的前面,并在负载均衡器上启用https。这意味着负载均衡器与ngnix进行对话,并且ngnix将请求传递给Python flask。

有更好的方法吗? Nginx现在是多余的吗?您预见到此设置有问题吗?

1 个答案:

答案 0 :(得分:0)

是的,您可以使用ELB卸载SSL。

此设置没有任何问题。实际上,出于以下原因,我建议这样做:

HTTPS是一种加密协议,加密需要很高的CPU使用率才能执行所需的数学计算。由于大多数Web应用程序都受CPU限制,因此应避免在服务器上处理SSL,并让负载平衡器为您完成。 >

由于负载均衡器与您的实例之间的通信是在AWS内部网络上进行的,因此您可以放心,它是安全的,并且可以为此使用HTTP。