ingress 实现限流
ngress 是什么
ngress:service 的统一网关入口
K8s 的 pod 和 service 需要通过 NodePort 把服务暴露到外部, 但是随着微服务的增多。 端口会变得不好管理。 所以通常情况下我们会设计一个 ingress 来做路由的转发,方便统一管理。效果如图:

ingress 主要分为两部分
- ingress controller 是流量的入口,是一个实体软件, 一般是 nginx 和 Haproxy 。
- ingress 描述具体的路由规则。
ingress作用:
- 基于 http-header 的路由
- 基于 path 的路由
- 单个 ingress 的 timeout
- 请求速率 limit
- rewrite 规则
k8s 中应用
在 Kubernetes 中,使用 Ingress 控制器实现限流(Rate Limiting)是一种常见的做法。不同的 Ingress 控制器可能有不同的实现方式。以下是如何使用 NGINX Ingress 控制器实现限流的示例。