使用 Nginx Ingress Controller,我们希望公开 Kubernetes 服务的不同路径,具有不同的安全要求。
/
向公众开放
/white-list
只允许来自特定 IP 地址的连接
/need-key
需要 API 密钥
我在 AWS EKS 中运行。Kubernetes 版本如下v1.12.6-eks-d69f1b
:
如果我们使用注释,它们将应用于整个服务。理想情况下,我只想将注释应用于路径。
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: ingress-myServiceA
annotations:
# use the shared ingress-nginx
kubernetes.io/ingress.class: "nginx"
spec:
rules:
- host: myServiceA.foo.org
http:
paths:
- path: /
backend:
serviceName: myServiceA
servicePort: 80
- path: /white-list
backend:
serviceName: myServiceA
servicePort: 80
**NEED SOMETHING HERE TO WHITELIST**
- path: /need-key
backend:
serviceName: myServiceA
servicePort: 80
**NEED SOMETHING HERE TO USE …
Run Code Online (Sandbox Code Playgroud)