【问题标题】:Can't access minikube service in browser but curl works fine无法在浏览器中访问 minikube 服务,但 curl 工作正常
【发布时间】:2022-04-09 17:48:56
【问题描述】:

基本上我在这里完成了所有步骤https://kubernetes.io/docs/tutorials/hello-minikube/

创建一个 kubectl 部署和服务,公开该服务,但与教程不同,我必须使用“minikube 隧道”让我的服务拥有一个外部 IP。 (没有运行 minikube 隧道的输出用于 EXTERNAL-IP)。当我尝试在浏览器中访问 hello-node 应用程序时,我最终收到错误消息“无法检索请求的 URL ...连接超时”

即使没有运行“minikube 隧道”,我也可以很好地卷曲 URL,并且我得到了正确的输出。有人知道我错过了什么吗?

minikube 仪表板在我的浏览器中运行良好,如果 minikube 隧道处于活动状态,服务会设置相应的“外部端点”。

Ubuntu 18.04 minikube v1.7.2 kubectl 1.17

如果您需要更多信息,请告诉我!

/e: curl 命令'curl -L http://10.102.24.206:8080/'

'curl -L http://192.168.99.102:32243/' 也可以正常工作

【问题讨论】:

  • 请将您的 CURL 命令添加到您的问题中
  • 这个 10.102.24.206 是什么 IP?吊舱还是服务?如果服务什么类型的服务?
  • @ArghyaSadhu 这是集群的 ip。该服务是192.168.99.102:32243,但是当我卷曲时它也可以正常工作。
  • 192.168.99.102:32243 在浏览器中工作?你是在集群内部做 curl 吗?
  • @ArghyaSadhu 不,浏览器都不能工作。我正在从本地 cli 执行 curl 命令。

标签: ubuntu kubernetes kubectl minikube


【解决方案1】:

我遇到了同样的问题,负载均衡器(服务)的外部 IP 是 127.0.0.1,它暴露在端口 6000 上。我可以使用 curl http://127.0.0.1:3000/ 访问该服务,但使用 Google Chrome 和Safari 浏览器。

在我的情况下,浏览器阻止了访问,因为 Chrome 给出了错误:ERR_UNSAFE_PORT(Safari 没有给出任何响应)。所以我确实将端口切换到 3000,一切正常。

从 cmets 中,我看到您尝试使用 192.168.99.102:32243 和在其他情况下使用 192.168.99.102:30550 通过浏览器访问服务。这些也是浏览器可能认为不安全的端口(但不是 curl)。

因此,我猜问题是您使用了不安全的端口。将服务的端口更改为受信任的端口,例如 3000、5000 或 8080,可能会有所帮助。

【讨论】:

    猜你喜欢
    • 2020-04-09
    • 2018-09-20
    • 2015-11-14
    • 1970-01-01
    • 1970-01-01
    • 2018-04-01
    • 2014-01-13
    • 2015-08-22
    • 1970-01-01
    相关资源
    最近更新 更多