Kubernetes:ERR_NAME_NOT_RESOLVED

2024-01-10

我已经在 GKE 中部署了 mongo db、Spring Boot BE、Angular 应用程序。我的 FE 服务是一个负载均衡器,它需要与我的 BE 连接才能获取数据,但我在浏览器中收到控制台错误:GET http://contactbe.default.svc.cluster.local/contacts http://contactbe.default.svc.cluster.local/contacts网络::ERR_NAME_NOT_RESOLVED。我的FE需要消耗/联系人端点来获取数据。我在 Angular 应用程序中使用 BE 服务 (contactbe.default.svc.cluster.local) 中的 DNS。这是我用来创建部署的 yml 文件:

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 

我用谷歌搜索了很多,但仍然没有找到如何解决这个问题。如果有人能伸出援手,我将不胜感激。

控制台错误 https://i.stack.imgur.com/O2aBS.png


检查您的负载均衡器是否开放端口 27017 作为向端口 27017 发送请求

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

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Kubernetes:ERR_NAME_NOT_RESOLVED 的相关文章

随机推荐

  • 迁移时可以添加级联删除规则吗?

    在 FluentMigrator 迁移中 如果我定义关系 请说 Create Table RelatedTable WithColumn RelatedTableId AsGuid PrimaryKey WithColumn MainTab
  • 把 $$s 放在 `equation` 环境中:为什么 Latex 不抱怨?

    我很惊讶最近的问题中的 Latex 代码没有抛出任何错误 更令我惊讶的是进一步的调查 克劳利的解释 https stackoverflow com questions 2892982 formatting equations in late
  • 将整数转换为 std_logic

    假设你有一个循环 for i in 1 downto 0 loop for j in 1 downto 0 loop tS0 lt i 但我需要将整数 这是自然的 转换为 std logic tS0被声明为 std logic 我只做了一位
  • jQuery keydown 触发器不起作用

    我在文档加载结束时运行此脚本 function input keydown 该脚本位于 chrome 扩展中 该扩展在用户加载的每个页面上运行并且不起作用 即在 Twitter 网站上 但是 如果在 chrome javascript 控制
  • 如何使用javascript从父窗口获取子窗口url

    我正在启动一个带有窗口引用名称的子窗口 我想在每次更改时捕获子窗口的 URL var winRef var url http www google com if winRef null winRef closed winRef window
  • SecurityError:阻止具有来源的框架访问跨来源框架

    我正在加载一个在我的 HTML 页面中 并尝试使用 JavaScript 访问其中的元素 但是当我尝试执行代码时 出现以下错误 SecurityError 阻止源为 http www example com 的框架访问跨源框架 如何访问框架
  • 重置更改的值在其他 Ctrl (AngularJS) 中不起作用

    我对我的问题有点困惑 事实上 我有 2 个正在使用服务的视图和 ctrl 第一个视图包含一个表格列表 其中包含将从 WebAPI 加载的项目 该服务向服务器发出请求并按订单提供 另外 我正在使用另一个服务来传输另一个 Ctrl 中的所选项目
  • 在Leaflet中重绘图层时,如何保留旧图块直到加载每个新图块?

    我正在使用组合的tilelayer 我必须刷新它 使用 redraw 当前 每次添加新层或删除旧层时 我的实现没有技术问题 但是当切换图层时 会出现短暂的闪烁 因为旧的图块会立即被删除 但新的图块显然需要一些时间才能加载 有什么方法可以保留
  • 通过 api graph 将图像文件上传到 sharepoint

    我正在尝试将图像文件从我的node js 应用程序上传到Sharepoint 中的组驱动器 As the 官方文档 https learn microsoft com en us graph api driveitem put conten
  • CUDA:将一维数组从 GPU 复制到主机上的二维数组

    int main char hMat dArr hMat new char 10 for int i 0 i lt 10 i hMat i new char 10 cudaMalloc void dArr 100 Copy from dAr
  • LSApplicationWorkspace 无法在 iOS 11 上运行吗?

    我有一个私有应用程序 需要扫描所有应用程序和方案并使用私有 API 获取它LSApplicationWorkspace defaultWorkspace与其他函数方法一起使用 例如privateURLSchemes allInstalled
  • 使用 Visual Studio 进行 Scrapy 调试

    我是 Scrapy 和 Python 的新手 我很喜欢它 是否可以使用 Visual Studio 调试 scrapy 项目 如果可以的话 如何实现 我创建了一个名为 runner py 的初始化文件 from scrapy cmdline
  • 我是否需要在多线程环境中保护对 STL 容器的读取访问?

    我有一个 std list 容器和这些线程 一个编写器线程可以无限地添加元素 一个读取器 写入器线程在可用时读取和删除元素 多个读取器线程访问容器的 SIZE 通过使用 size 方法 有一个普通的互斥锁可以保护前两个线程对列表的访问 我的
  • 在 Oracle 中使用 CREATE 命令将列名括在双引号内无法正常工作。为什么?

    让我们考虑一个简单的表products在 Oracle 中 我在 Oracle 9i 上尝试过 我使用以下 CREATE 语句创建此表 CREATE TABLE products prod id varchar2 7 primary key
  • Python 集合模块中的计数器

    我遇到了一个非常奇怪的问题 我正在尝试在集合模块中使用计数器函数 但是 我不断收到相同的错误消息 AttributeError module object has no attribute Counter 我之前尝试过使用它并且工作得很好
  • `show` 记录而不派生 Show

    我经常需要在调试时打印一些内容 除非我需要查看的数据类型派生Show我无法打印它 对于某些数据类型我无法添加deriving Show 到定义 因为它可能在图书馆或其他我无法到达的地方 无论如何 我可以打印这些数据类型进行调试吗 独立推导
  • Hibernate OnDelete Cascade 不适用于 MySql,但适用于 postgres 和 Ms-Sql

    我有 2 个实体 Thread实体和Post使用 OnetoOne 映射的实体后 gt 线程 A Thread实体包含许多Posts 我知道我应该使用 OnetoMany 而不是 OnetoOne 但为了避免所有集合问题 我使用 Oneto
  • Facebook API、时区和国家/地区

    我正在开发一个网站 用户可以使用他们的 Facebook 凭据登录 现在我面临日期和时间的问题 我的本地系统使用 浪漫标准时间 这与 Facebook 使用的不同 我所在的地方使用 DST 根据一年中的时间 我们可以使用 UTC 1 或 U
  • 如何保持 SELECT 元素的宽度较小但选项灵活

    Problem 我的下拉菜单是动态加载的 有一些选项很长 这弄乱了我的页面布局 我想要的尺寸select元素很小 但展开时 允许用户看到所有长的options 为此 我设置了width of the SELECT为固定值 例如width 2
  • Kubernetes:ERR_NAME_NOT_RESOLVED

    我已经在 GKE 中部署了 mongo db Spring Boot BE Angular 应用程序 我的 FE 服务是一个负载均衡器 它需要与我的 BE 连接才能获取数据 但我在浏览器中收到控制台错误 GET http contactbe