使用nginx反向代理在Kubernetes中公开服务



我是Kubernetes的新手,想了解如何向外界公开在Kubernete中运行的服务。我已经使用集群上的NodePort公开了它。因此,例如:一个服务公开主机上的端口31234,我可以通过https://kubeserverIP:31234.

我想要实现的是通过nginx(在不同的服务器上,在Kube的控制之外(通过url来提供这个服务,比如,http://service.example.com.我曾尝试在上游指向服务的情况下部署nginx,但这不起作用,并出现了一个严重的网关错误。

这里有我遗漏的东西吗?或者有没有一种更整洁的方式来实现这一点。

我安装了Kubernetes集群的裸机,无法访问gce负载均衡器或其他供应商LB。

感谢

您就快到了!您的下一步将是设置一个入口控制器。有一个NGINX入口控制器插件,你可以在这里结账。

编辑:以下是配置示例:https://github.com/nginxinc/kubernetes-ingress/tree/master/examples/complete-example

感谢您指出了正确的方向。

基本步骤大致如下:

  1. 创建一个应用程序及其服务定义。

  2. 为ingress创建一个命名空间。

  3. 创建一个默认的后端部署和服务,用于重定向Ingress规则中未定义的所有请求。在入口空间创建这些
  4. 创建nginxingress控制器部署
  5. 创建RBAC规则
  6. 最后为具有路径和端口的应用程序创建入口规则

找到了一个非常有用的指南,详细解释了一些事情:https://akomljen.com/kubernetes-nginx-ingress-controller/

相关内容

  • 没有找到相关文章

最新更新