我有一个简单的节点API应用程序,它使用Mongo DB运行。我想使用Kubernetes进行部署。我想将node和MySQL都放在不同的名称空间中。我已经设法在另一个命名空间中运行MongoDB,并在另一命名空间中运行节点应用程序。Node应用程序使用完全限定域名(db.namespace.svc.cluster.local
(连接到MongoDB。但是,现在我想向公众开放我的节点应用程序,这样它就可以通过互联网访问。我曾尝试在节点应用程序所在的命名空间中创建一个节点端口服务,但当我使用浏览器连接到节点端口上的服务时,什么都没有发生。服务主机名也无法解析。但是,当我从同一命名空间的pod中卷曲这个节点端口服务时,它会给出正确的输出。问题出在哪里?请帮忙。
我想我已经解决了这个问题。问题出在acloudguru的实验室环境上。他们在工作节点上打开了端口30080,而我使用nodePort服务时没有提供nodePort值,因此它打开了一个不允许的随机端口。当我使用30080作为nodePort,然后尝试连接它时,应用程序运行良好。