大使限速措施无法正常工作

问题描述

我正在尝试按照this教程与大使进行速率限制。我正在使用minikube和本地docker镜像。我已经测试了所有api在部署到Kubernetes后是否正确响应,只有限速功能不起作用。

这是我的deploy.yaml

---
apiVersion: v1
kind: Service
Metadata:
  name: nodejs-deployment
spec:
  ports:
  - name: http
    port: 80
    targetPort: 3000
  - name: https
    port: 443
    targetPort: 3000
  selector:
    app: nodejs-deployment
---
apiVersion: apps/v1
kind: Deployment
Metadata:
  name: nodejs-deployment
spec:
  selector:
    matchLabels:
      app: nodejs-deployment
  replicas: 2
  template:
    Metadata:
      labels:
        app: nodejs-deployment  
    spec:
      containers: 
      - name: nodongo
        image: soham/nodejs-starter
        imagePullPolicy: "Never"
        ports:
        - containerPort: 3000

这是我的rate-limit.yaml

---

apiVersion: getambassador.io/v2

kind: Mapping

Metadata:

  name: nodejs-backend

spec:

  prefix: /delete/

  service: nodejs-deployment

  labels:

    ambassador:

      - request_label_group:

        - delete

---

apiVersion: getambassador.io/v2

kind: RateLimit

Metadata:

  name: backend-rate-limit

spec:

  domain: ambassador

  limits:

  - pattern: [{generic_key: delete}]

    rate: 1

    unit: minute

    injectResponseHeaders:

    - name: "x-test-1"

      value: "my-rl-test"

当我执行命令时-curl -vLk 10.107.60.125/delete/

正在返回

*   Trying 10.107.60.125:80...
* TCP_NODELAY set
* Connected to 10.107.60.125 (10.107.60.125) port 80 (#0)
> GET /delete/ HTTP/1.1
> Host: 10.107.60.125
> User-Agent: curl/7.68.0
> Accept: */*
> 
* Mark bundle as not supporting multiuse
< HTTP/1.1 200 OK
< X-Powered-By: Express
< Content-Type: text/html; charset=utf-8
< Content-Length: 11
< ETag: W/"b-CgqQ9sWpkiO3HKmStsUvuC/rZLU"
< Date: Tue,03 Nov 2020 17:13:00 GMT
< Connection: keep-alive
< 
* Connection #0 to host 10.107.60.125 left intact
Delete User

我得到的响应是200,但是我期望429错误代码

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...