【发布时间】:2021-09-03 11:27:59
【问题描述】:
我有一个简单的节点 API 应用程序,它使用 Mongo DB 运行。
我想使用 Kubernetes 部署它。
我想将 node 和 MySQL 都保留在单独的命名空间中。
我设法在另一个命名空间中运行 MongoDB,并在另一个命名空间中运行节点应用程序。节点应用程序使用完全限定域名 (db.namespace.svc.cluster.local) 连接到 MongoDB。
但是,现在我想向公众开放我的节点应用程序,以便可以通过互联网访问它。
我试图在节点应用程序所在的命名空间中创建一个节点端口服务,但是当我使用浏览器连接到节点端口上的服务时,什么也没有发生。服务主机名也无法解析。但是,当我从同一命名空间的 pod 卷曲这个 nodeport 服务时,它会给出正确的输出。
问题是什么?请帮忙。
【问题讨论】:
-
您应该在任何 Kubernetes 节点地址上连接该端口(可以在 kubectl get nodes -o wide 中找到)- 服务 FQDN 是集群本地的,不能从外部工作站使用.假设您的节点在您的 LAN 上,或者它们附加了公共 IP。
标签: docker kubernetes devops kubernetes-ingress