当前位置: 首页 > 知识库问答 >
问题:

在kubernetes集群中通过Ingress公开多个服务

濮阳繁
2023-03-14

我使用几个独立服务运行Kubernetes单节点dev集群--Nginx proxy(端口80)和elasticsearch(端口9200)。有没有办法用ingress公开这些服务,用一个LoadBalancer IP拥有入口点?(X.X.X.X:80和X.X.X:9200)

我读过关于入口限制,它只能用80和443端口访问。但是,也许,存在一些变通方法?

请Thx提供任何建议

helm install ingress stable/nginx-ingress --set tcp.4445="default/nginx-proxy:4445" --set tcp.8888="default/demo:8888" --set tcp.19200="default/elasticsearch:19200"

但如果以后您想公开一些额外的服务并手动添加所有内容(创建configmap,update ingress service,create ingress,甚至重新创建nginx pod),我就无法连接到service:(

因此,任何更改(对我而言)都将导致重新安装所有controller

共有1个答案

乌和畅
2023-03-14

了解您拥有的dev服务器不具备云集群所具备的很多酷特性。但也有变通办法让它看起来像一个。

**ngless限制,只能用80和443端口访问?

是的,但您可以覆盖它,我不建议,因为它是大量的手工工作,每次您需要添加/删除端口

这里是您可以将*.dehimb.com设置为k8s节点IP的地方。(kubectl获取节点-OWIDE)

使用您的笔记本电脑将dns masq IP作为默认ISP名称服务器之上的第一个名称服务器

现在只需创建包含任意多个域的ingress,当您从笔记本电脑上浏览时:

或者,你也可以使用metallb(但不是很容易弄清楚它是否会破裂)

 类似资料:
  • 什么起作用了? 使用Helm(启用RBAC)部署入口控制器 集群IP服务部署 什么不起作用? null K8S入口 注释中最后应用的配置(入口描述输出)显示入口资源清单。但是,我贴在下面作为参考 附加信息 null 任何关于我可能做错了什么的建议或见解将非常感谢。

  • 什么是port和targetport? 是否为每个代理设置LoadBalancer服务? 这些多个代理是否映射到cloud LB的单个公共IP地址? K8S/Cloud之外的服务如何访问单个代理?通过使用?或者使用?。还有,这里用的是哪个端口?还是? 如何在Kafka Broker的属性中指定此配置?对于k8s集群内部和外部的服务,As端口可能不同。 请帮忙。

  • 我已经配置了istio ingress,使用了lets加密证书。我可以通过使用网关和VirtualService访问https上运行在不同端口上不同服务。 但是kubernetes-dashboard运行在kube-system名称空间中的443端口上,并且具有自己的证书,我如何通过istio网关和VirtualService来公开它。 我已经为dashboard定义了子域,创建了网关,virtu

  • 我试图更多地了解服务在Kubernetes中是如何工作的。以这个示例yaml文件为例。 另外,如果我必须从k8集群中的另一个吊舱B访问吊舱landoopkafka的端口8081,我如何访问它? 太感谢你了。

  • 我有一个复合服务S.c,它使用两个原子服务S.a和S.b,其中所有三个服务都在Kubernetes集群中运行。更好的模式是什么 1)将Sa、Sb创建为无头服务,并让Sc通过NGINX等外部负载均衡器与它们集成(使用DNS解析器来维护更新的后端pod) 2) 使用clusterIP创建Sa、Sb,并让Sc通过群集DNS(skyDNS加载项)访问/解析它们。这将在内部利用基于IP表的负载平衡来实现PO