我在一个集群GKE中有两个k8s部署,对于一个Web应用程序,一个是前端(反应),另一个是后端(python),该前端工作正常,但是当我尝试在该前端做一些调用时我有this的后端,我有一个用于前端的入口,该入口工作得很好,我唯一不知道的原因是为什么前端无法到达后端,我希望他们通过服务进行通信。我有以下服务:
前端服务
apiVersion: v1
kind: Service
metadata:
name: frontend
spec:
selector:
app: hello
tier: frontend
ports:
- protocol: "TCP"
port: 80
targetPort: 3000
后端服务
apiVersion: v1
kind: Service
metadata:
name: backend
spec:
selector:
app: hello
tier: backend
track: stable
ports:
- protocol: TCP
port: 80
targetPort: 8000
有任何修复建议吗?
答案 0 :(得分:1)
当应用程序是诸如React或Angular之类的客户端应用程序时,该应用程序将在客户端浏览器上运行;不在服务器端。在这种情况下,客户端浏览器中的应用程序必须调用服务器上的API(后端应用程序)。
在这种情况下,即使应用程序被命名为后端;它必须通过Ingress公开这些API,以便客户端浏览器上运行的前端应用程序可以使用这些API。