我有一个包含20个工作节点的kubernetes集群。我的主要应用程序是一个Flask API,它每分钟处理数千个android/ios请求。我的Kubernetes部署的配置方式是每个pod有2个容器- flask/python server和nginx。flask应用程序在gunicorn上运行,带有meinheld (每个pod 20个worker)。
我的问题是:我是否需要在flask应用程序旁边的每个pod中运行nginx,或者我可以只使用主nginx入口控制器作为代理缓冲层?
注意:我使用ELB将外部流量路由到我的内部k8s集群。
发布于 2019-06-13 07:18:42
在每个pod上都有一个代理并不奇怪,事实上,istio为每个pod注入一个特使容器作为代理,以控制进出流量,并具有更准确的度量。
但是如果你现在还不想管理一个服务网格,你可以避免使用nginx,直接使用服务上的端口映射,入口定义。
发布于 2019-06-13 02:09:02
我看不出有任何理由让nginx容器用于每个其他的flask容器。您可以使用一个nginx容器作为整个API集的API网关
https://stackoverflow.com/questions/56567936
复制相似问题