<p>I am using aws eks. I need additional local rate limit per day condition. Is there any way to do?
<br />
<br />
I know about</p>
<pre><code>nginx.ingress.kubernetes.io/limit-rpm 
nginx.ingress.kubernetes.io/limit-rps 
</code></pre>
<p>This is the code.</p>
<pre><code>apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: my-nginx-ingress
  annotations:
    nginx.ingress.kubernetes.io/limit-rps: &quot;5&quot;
    nginx.ingress.kubernetes.io/limit-rpm: &quot;10&quot;
spec:
  ingressClassName: nginx 
  rules:
  - host: &quot;*&quot;
    http:
      paths:
      - path: /
        pathType: suffix
        backend:
          service:
            name: my-service
            port: 
              number: 5000
</code></pre>

brekkanegg
<p>You could use the global-rate-limit with <code>global-rate-limit-window: 24h</code>.
See <a href="https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/#global-rate-limiting" rel="nofollow noreferrer">https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/#global-rate-limiting</a>.</p>
<p>For instance, a configuration for allowing 1000 requests in a 24h time frame:</p>
<pre><code>nginx.ingress.kubernetes.io/global-rate-limit: &quot;1000&quot;
nginx.ingress.kubernetes.io/global-rate-limit-key: global
nginx.ingress.kubernetes.io/global-rate-limit-window: 24h
</code></pre>
<p>The downside is that using the global rate limiting feature requires a memcache instance to be deployed and running in your cluster.</p>
