5

当 Ingress Nginx 控制器达到其最大容量时,它会自动扩展吗?Kubernetes Ingress 甚至可以扩展吗?

4

2 回答 2

4

原则上,NGINX 入口控制器确实是可扩展的——它从 Kubernetes API 服务器中提取其整个配置,并且本身基本上是无状态的。

在实践中,这在很大程度上取决于您的入口控制器是如何设置的。首先,入口控制器不会自行自动缩放。如果您使用Deployment控制器部署它,则可以按照文档中的说明使用水平 pod 自动缩放。如果您使用 a 部署它,则入口控制器将随您的集群自动扩展和缩减(如果您使用集群DaemonSet自动扩展程序,甚至可能自动扩展)。

在这两种情况下,您都需要一个与部署/守护程序集创建的所有 pod 匹配的Service定义(可能是NodePort或类型LoadBalancer,以允许外部流量)以在它们之间分配流量。

于 2018-02-07T22:30:48.397 回答
3

是的,可以通过两种方式自动缩放 nginx 入口控制器:

  1. Kubernetes 的水平 Pod 自动缩放器。
  2. 每个https://github.com/nginxinc/kubernetes-ingress/tree/master/examples/multiple-ingress-controllers使用多个 nginx 入口控制器。在这种方法中,您还需要多个 nginx 入口资源来负载平衡到后端 pod 的流量。https://github.com/nginxinc/kubernetes-ingress/tree/master/examples/complete-example有 nginx 的示例/示例入口资源。

“最少连接” ( least conn) 配置与 nginx 的自动缩放无关。它是 nginx 使用的负载平衡算法,可以使用 ConfigMaps在 nginx 配置文件 ( ) 中更改为其他 (round robin或)。ip hashnginx.conf

于 2018-02-10T10:29:09.120 回答