Azure Kubernetes - 无法连接 Pod 容器

标签 azure docker nginx kubernetes kubectl

我正在 Azure AKS 上运行 Kubernetes 1.8。我已将 docker 镜像部署到 pod 中。我创建了一个 Azure 公共(public) ip(静态),在创建它时将其提供给 NGinx 入口 Controller 。 Kubectl get ingress 显示 IP 已分配给它,并且/healthz 端点返回 200 OK。

kubectl 描述入口显示:

   Rules:   
Host                             Path    Backends   
service1.default.example.com     /       service1:80 (<none>)

当我请求主机时,我得到一个 502 bad gateway。如果我使用 ip,我会得到 404 not found。相同的 ip,从/healthz 返回 200 ok。

容器和设置总体上已经在 Minikube 中进行了测试并且正在运行。

我的容器没有通过入口暴露可能是什么问题?描述与 Minikube 相比看起来相同。

最佳答案

发生的情况是入口和 Pod 返回的服务之间的接线不正确。来自 ingress pod 的日志可能会有所帮助。可能存在一些具体问题。

直接请求 IP 给出响应的原因是 IP 与入口 -> 服务规则不匹配,因此您只是获得入口的默认后端 - 这会给您带来 404。

所以入口没问题。服务和 pod 本身可能还不错。但是入口和服务之间的接线出了问题。

关于Azure Kubernetes - 无法连接 Pod 容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49050579/

相关文章:

php `$_SERVER[' PHP_SELF']` 为空

asp.net - Azure 上的自定义 IIS 访问日志记录

c# - Windows Azure 持久存储技巧

Azure 搜索 - 有没有办法获得单词的精确匹配?

azure - 检索 Azure 应用服务上的 Http get 和 post 请求

node.js - docker构建Dockerfile时如何缓存RUN npm install指令

docker - 启动 userland 代理 : listen tcp 0. 0.0.0:7050 时出错:绑定(bind):地址已在使用中

java - AWS Elastic BeansTalk Nginx 超时 504 错误网关 - Java Servlet AsyncContext

postgresql - 如何使用卷从 docker 中的转储或 sql 文件恢复数据库?

nginx - vue-router、nginx 和直接链接