【问题标题】:Not able to open my app to public network无法将我的应用程序打开到公共网络
【发布时间】: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


【解决方案1】:

我想我已经找到了问题所在。 问题出在 acloudguru 的实验室环境中。他们在工作节点上打开了端口 30080,而我使用的是 nodePort 服务而没有提供 nodePort 值,因此它打开了一个不允许的随机端口。什么时候,我使用 30080 作为 nodePort,并且然后尝试连接它,应用程序工作正常。

【讨论】:

    猜你喜欢
    • 2013-06-29
    • 2021-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-30
    • 1970-01-01
    相关资源
    最近更新 更多