我已经设置了两个简单的 kubernetes 服务和部署 - 前端和 api。前端从 api 获取数据,所以我也公开了 api,这样我就可以在前端数据获取调用中对后端入口 URL 进行硬编码(如果有人知道在集群内部执行此操作的更好方法,请告诉我)。
我正在尝试为不同的服务设置不同的主机名,但由于某种原因,只有一个主机名在工作。
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: test-webapp-ingress
annotations:
ingress.kubernetes.io/rewrite-target: /
spec:
rules:
- host: test-webapp-frontend.com
http:
paths:
- path: /
backend:
serviceName: test-webapp-frontend-lb
servicePort: 8002
- host: test-webapp-api.com
http:
paths:
- path: /get
backend:
serviceName: test-webapp-api-lb
servicePort: 8001
Run Code Online (Sandbox Code Playgroud)
这就是我跑步后得到的 kubectl get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 2d
test-webapp-api-lb LoadBalancer 10.107.60.163 <pending> 8001:30886/TCP 1h
test-webapp-frontend-lb LoadBalancer 10.104.100.108 <pending> 8002:31431/TCP 1h
Run Code Online (Sandbox Code Playgroud)
我在本地使用 minikube …