[英]Exposing Service from a BareMetal(Kubeadm) Kubernetes Cluster to outside world
您需要設置MetalLB
以獲得LoadBalancer
類型服務的外部 IP 地址。 它將為該服務提供一個 local.network IP 地址。
然后,您可以將端口80
和端口443
的傳入流量進行端口映射(在路由器中配置)到您的外部服務 IP 地址。
我做了類似的設置,你可以在這里詳細查看: https://developerdiary.me/lets-build-low-budget-aws-at-home/
您需要在集群中部署一個入口 controller ,以便它為您提供一個可以訪問您的應用程序的入口點。 傳統上,在雲原生環境中,它會自動為您提供一個 LoadBalancer,它將讀取您在Ingress object 中定義的規則,並將您的請求路由到適當的服務。
最常用的入口之一 controller 是Nginx 入口 Controller 。 您可以使用多種方式來部署它(mainfests、helm、operators)。 對於裸機集群,您可以在此處閱讀多種注意事項。
MetalLB 仍處於測試階段,因此您可以選擇是否使用它。 如果您沒有硬性要求將入口 controller 公開為 LoadBalancer,您可以將其公開為 NodePort 服務,該服務可跨集群中的所有節點訪問。 然后,您可以 map DNS 中的 NodePort 服務,以便評估入口規則。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.