首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Kubernetes: ERR_NAME_NOT_RESOLVED

Kubernetes: ERR_NAME_NOT_RESOLVED
EN

Stack Overflow用户
提问于 2019-02-25 01:02:19
回答 3查看 3.5K关注 0票数 5

我已经在GKE中部署了一个mongo,Spring,角应用程序。我的FE服务是一个负载均衡器,它需要与BE连接以获取数据,但我在浏览器中得到一个控制台错误: get http://contactbe.default.svc.cluster.local/contacts http://contactbe.default.svc.cluster.local/contacts我的FE需要使用/contacts端点来获取数据。我在我的角度应用程序中使用来自BE服务(contactbe.default.svc.cluster.local)的DNS。我用来创建部署的是我的yml文件:

代码语言:javascript
复制
apiVersion: v1
kind: Service
metadata:
  name: mongo
  labels:
    run: mongo
spec:
  type: NodePort
  ports:
  - port: 27017
    targetPort: 27017
    protocol: TCP
  selector:
    run: mongo
---
apiVersion: apps/v1beta1
kind: Deployment
metadata: 
  name: mongo
spec:
  template:
    metadata:
      labels:
        run: mongo
    spec:
      containers:
      - name: mongo
        image: mongo
        ports:
        - containerPort: 27017
---        
apiVersion: v1
kind: Service
metadata:
  name: contactbe
  labels:
    app: contactbe
spec:
  type: NodePort 
  ports:
  - port: 8181
    targetPort: 8181
    protocol: TCP
  selector:
    app: contactbe
---
apiVersion: apps/v1beta1
kind: Deployment
metadata: 
  name: contactbe
spec:
  template:
    metadata:
      labels:
        app: contactbe
    spec:
      containers:
      - name: contactbe
        image: glgelopfalcon/k8s_contactbe:latest
        ports:
        - containerPort: 8181
---
apiVersion: apps/v1beta1 # for versions before 1.9.0 use apps/v1beta2 
kind: Deployment 
metadata: 
  name: angular-deployment 
spec: 
  selector: 
    matchLabels: 
      app: angular 
  replicas: 2 # tells deployment to run 2 pods matching the template 
  template: 
    metadata: 
      labels: 
        app: angular 
    spec: 
      containers: 
      - name: angular 
        image: glgelopfalcon/my-angular-app:latest 
        ports: 
        - containerPort: 80
--- 
# https://kubernetes.io/docs/concepts/services-networking/service/#defining-a-service  
kind: Service 
apiVersion: v1 
metadata: 
  name: angular-service 
spec: 
  selector: 
    app: angular 
  ports: 
  - port: 80
    targetPort: 80
    protocol: TCP
  type: LoadBalancer 

我搜索了很多,但我仍然没有找到如何解决这个问题。如果有人能帮忙,我会很感激的。

控制台错误

EN

回答 3

Stack Overflow用户

发布于 2019-02-25 04:13:07

检查您的负载均衡器是否有打开端口27017作为发送请求发送到端口27017。

否则,可以将服务节点端口更改为80,目标端口将相同。

票数 1
EN

Stack Overflow用户

发布于 2019-02-25 08:09:19

port#在URL中缺失。试着在下面

代码语言:javascript
复制
contactbe.default.svc.cluster.local:8181/contacts
票数 0
EN

Stack Overflow用户

发布于 2019-02-28 19:43:03

我找到了解决办法。我改变了后端的服务方式。我使用的不是ClusterIP,而是负载均衡器,它的工作原理与预期一样

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54858192

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档