【发布时间】:2020-06-23 23:19:27
【问题描述】:
我已经配置了一个 kubernetes 入口服务,但是它只在路径为 / 时才有效
我已经为路径尝试了各种不同的值,包括:
/*
/servicea
/servicea/
/servicea/*
这是我的入口配置(有效)
- apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: boardingservice
annotations:
ingress.kubernetes.io/rewrite-target: /
spec:
rules:
- host: my.url.com
http:
paths:
- path: /
backend:
serviceName: servicea-nodeport
servicePort: 80
这是我的节点端口服务
- apiVersion: v1
kind: Service
metadata:
name: servicea-nodeport
spec:
type: NodePort
ports:
- port: 80
targetPort: 8081
nodePort: 30124
selector:
app: servicea
这是我的部署
- apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: servicea
spec:
replicas: 1
template:
metadata:
name: ervicea
labels:
app: servicea
spec:
containers:
- image: 350329402011.dkr.ecr.eu-west-2.amazonaws.com/servicea
name: servicea
ports:
- containerPort: 8080
protocol: TCP
- image: 350329402011.dkr.ecr.eu-west-2.amazonaws.com/serviceb
name: serviceab
ports:
- containerPort: 8081
protocol: TCP
如果路径是 / 那么我可以这样做http://my.url.com/api/ping 但由于我将拥有多项服务,因此我想这样做:http://my.url.com/servicea/api/ping 但是当我将路径设置为 /servicea 时,我得到一个 404。
我在 AWS 上使用 ingress-nginx 入口控制器运行 kubernetes
有什么想法吗?
【问题讨论】:
标签: kubernetes