【问题标题】:Should I run nginx in every Kubernetes pod?我应该在每个 Kubernetes pod 中运行 nginx 吗?
【发布时间】:2019-10-27 07:21:21
【问题描述】:

我有一个包含 20 个工作节点的 Kubernetes 集群。我的主要应用程序是一个 Flask API,每分钟提供数千个 android/ios 请求。我的 Kubernetes 部署的配置方式是每个 pod 有 2 个容器——flask/python 服务器和 nginx。烧瓶应用程序在 gunicorn 上运行,带有 meinheld 工人(每个 pod 20 名工人)。

我的问题是:我需要在烧瓶应用程序旁边的每个 pod 中运行 nginx,还是可以只使用主 nginx 入口控制器作为代理缓冲层?

注意: 我正在使用 ELB 将外部流量路由到我的内部 k8s 集群。

【问题讨论】:

    标签: nginx kubernetes gunicorn


    【解决方案1】:

    在每个 pod 上都有一个代理并不奇怪,事实上,istio 会为每个 pod 注入一个 envoy 容器作为代理来控制进出流量并获得更准确的指标。

    查看文档https://istio.io/

    但是,如果您现在不想管理服务网格,您可以避免使用 nginx 并直接在服务上使用端口映射作为入口定义。

    【讨论】:

      【解决方案2】:

      我认为没有任何理由为每个其他烧瓶容器使用 nginx 容器。您可以将一个 nginx 容器作为 API 网关到您的整个 API 集

      【讨论】:

        猜你喜欢
        • 2017-09-16
        • 2016-08-03
        • 2022-11-11
        • 2020-02-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-12-17
        相关资源
        最近更新 更多