【发布时间】:2019-09-13 19:58:33
【问题描述】:
所以,我有一个入口控制器将流量路由到三个不同的服务,但只有一个在工作,所有其他的都返回 503。 INGRESS YAML
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: test-ingress
namespace: dev
annotations:
kubernetes.io/ingress.class: nginx
nginx.ingress.kubernetes.io/backend-protocol: "HTTP"
spec:
rules:
- host: localhost
http:
paths:
- path: /equip
backend:
serviceName: web-equip-svc-2
servicePort: 18001
- path: /hello
backend:
serviceName: hello-service
servicePort: 80
- path: /equip-ws
backend:
serviceName: web-equip-svc-2
servicePort: 18000
工作 SVC YAML
apiVersion: v1
kind: Service
metadata:
name: hello-service
namespace: linkerd-test
labels:
app: hello
spec:
type: ClusterIP
selector:
app: hello
ports:
- port: 80
targetPort: 8080
protocol: TCP
无法使用 SVC YAML
---
apiVersion: v1
kind: Service
metadata:
name: web-equip-svc-2
namespace: dev
labels:
app: equipment-service
spec:
type: ClusterIP
selector:
app: equipment-service
ports:
- name: "http"
port: 18001
targetPort: 8080
protocol: TCP
- name: "websocket"
port: 18000
targetPort: 8080
protocol: TCP
所以,我已经尝试将注解从 ingress 更改,将 svc 从 clusterIP 更改为 loadBalancer……但没有任何效果,欢迎任何帮助
【问题讨论】:
-
我认为这种情况下的问题是:您可以从其他 pod 访问 web-equip-svc-2:18001 和 web-equip-svc-2:18000 吗?
标签: kubernetes kubernetes-ingress