Kubernetes中基于URL和路径的速率限制

时间:2020-10-19 10:56:30

标签: kubernetes managed amazon-eks rate-limiting

我需要对Kubernetes Cluster(EKS)上部署的应用程序实施速率限制(基于URL和路径)。

我正在寻找一种涉及最少脚本的托管方式,并且确实提供了一个界面来管理不同应用程序的速率限制。

该系统应该能够在企业级别上正常工作。

有人可以建议我要实现它的路径/工具/框架。

1 个答案:

答案 0 :(得分:0)

通过使用Ingress在NGINX correct annotations中可以使用

Rate-limiting。可用的选项是:

  1. nginx.ingress.kubernetes.io/limit-connections:并发数 单个IP地址允许的连接。 503错误是 超过此限制时返回。
  2. nginx.ingress.kubernetes.io/limit-rps:已接受的请求数 每秒从给定的IP。突发限制设置为此限制 乘以脉冲串乘数,默认乘数为5。 当客户端超过此限制时,将返回limit-req-status-code默认值:503。
  3. nginx.ingress.kubernetes.io/limit-rpm:数量 每分钟从给定IP接受的请求。突发限制为 设置为此极限乘以脉冲串乘数(默认) 乘数是5。当客户超出此限制时, limit-req-status-code默认值:返回503。
  4. nginx.ingress.kubernetes.io/limit-burst-multiplier:的乘数 突发大小的限制速率。默认的突发倍增器为5 此注释将覆盖默认乘数。当客户超过 此限制,默认为limit-req-status-code:503。
  5. nginx.ingress.kubernetes.io/limit-rate-after:的初始编号 千字节之后,进一步传输对 给定的连接将受到速率的限制。必须使用此功能 与proxy-buffering enabled
  6. nginx.ingress.kubernetes.io/limit-rate:每千字节数 秒允许发送到给定的连接。零值 禁用速率限制。此功能必须与 proxy-buffering enabled
  7. nginx.ingress.kubernetes.io/limit-whitelist:客户端IP源范围 被排除在速率限制之外。值以逗号分隔 CIDR列表。

您可以阅读有关NGINX速率限制here以及有关Kubernetes in this guide中NGINX速率限制的更多信息。