簡體   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