繁体   English   中英

kubernetes(牧场主)入口理解

[英]kubernetes (rancher) ingress understanding

我知道/正在运行:我在 vsphere 上有一个正在运行的牧场主 ha 设置(2.4.2),前面有一个 L4 nginx lb。 访问 ui 并配置新集群(vsphere 节点驱动程序)效果很好。 我知道我不在云中并且不能使用 L7 LB(除了 nip.ip 或金属 lb 可能),并且部署工作负载并通过 nodeport 公开它们效果很好(因此工作负载在每个节点上的指定端口上可用相应的 pod 正在运行)。

我的问题:是否可以在我可以访问rancher ui的域/地址下的任何运行集群上公开(可能通过入口)应用程序(在我的情况下: https://rancher-things.local )? 如果我可能会部署一个港口注册表并且可以像https://rancherthings.local/harbor那样以某种方式公开它,比如有外部(本地网络,不是公共的)吗? 或者如果这不起作用,是否可以部署一个 L4 负载均衡器来访问特定集群上或前面的应用程序?

谢谢你。

应该已经有暴露牧场主用户界面的入口资源。 您可以编辑入口并添加路径/harbor以将流量路由到港口服务。

  paths:
  - path: /harbor
    backend:
      serviceName: harbor
      servicePort: 80

@arghya-sadhu,LB 指向运行 Rancher 的 HA 集群(又名 upstream/management/rke/ha 集群),而不是 Harbor。 不建议在此 HA 集群中创建任何其他入口。 另外,我认为 Harbor 工作负载正在下游集群中运行,并且没有 LB 指向该集群的节点。

Patrick,您可以通过 http 创建一个暴露您的应用程序端口的服务,并使用 Rancher 的代理机制通过 Rancher URL 访问您的应用程序的 UI。 如果您在设置中启用了监控,则可以通过此机制遵循 Grafana UI 的公开方式。

创建服务后,您可以使用以下命令找到 URL 信息:

kubectl -n <your_app_namespace> cluster-info
# or
kubectl cluster-info -A

这种方法的缺点是您没有专门的 LoadBalancer 来处理流量,但对于较小规模的设置,这应该没问题。

grafana 的示例 URL:

https://<rancher-fqdn>/k8s/clusters/<cluster-id>/api/v1/namespaces/cattle-prometheus/services/http:access-grafana:80

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM