
在 Kubernetes 集群中部署新應(yīng)用程序可能是一個復(fù)雜的過程,通常需要多個步驟才能實現(xiàn)正確的流量路由,例如:
通過將 Gloo Gateway 與支持 Kubernetes Gateway API 的其他開源工具(如 ExternalDNS、Cert Manager 和 Argo Rollouts)結(jié)合使用,可以實現(xiàn)上述過程的全自動化。
ExternalDNS 可以配置為檢查 HTTPRoute 資源的主機名及其綁定的網(wǎng)關(guān)。然后,它會獲取網(wǎng)關(guān)的外部地址和主機名,并在您配置的 DNS 提供商中自動創(chuàng)建 DNS 條目。
在創(chuàng)建 DNS 記錄后,您可以使用 Cert Manager 通過 ACME 協(xié)議和 HTTP01 質(zhì)詢,從 Let’s Encrypt 請求 TLS 證書。在此過程中,Cert Manager 會創(chuàng)建一個臨時的 HTTPRoute 來完成 ACME 挑戰(zhàn)。成功獲取有效的 TLS 證書后,Cert Manager 會將證書存儲在指定的 Kubernetes Secret 中。
Argo Rollouts 是一個開源項目,提供了增強的應(yīng)用程序部署功能,例如藍綠部署、金絲雀部署、金絲雀分析、實驗性部署和漸進式交付。為了實現(xiàn)金絲雀部署,Argo Rollouts 會創(chuàng)建具有特定流量權(quán)重的 HTTPRoute 資源,從而在應(yīng)用程序域上實現(xiàn)流量分流。
由于 Gloo Gateway 能夠?qū)崟r監(jiān)控 HTTPRoute 資源,因此在部署過程中實現(xiàn)流量分流是開箱即用的功能。這種能力顯著增強了 Gloo Gateway 在支持第三方集成時的應(yīng)用場景。
Kubernetes Gateway API 的全面可用性為云原生 API 網(wǎng)關(guān)奠定了重要的基礎(chǔ)組件。它不僅具有強大的社區(qū)集成潛力,還為擴展性提供了廣闊的空間。Gloo Gateway 提供了完全符合 Gateway API 的核心網(wǎng)關(guān)和路由功能,同時還補充了標準中未包含的企業(yè)級功能。
通過支持 Gateway API,Gloo Gateway 不僅能滿足當前的需求,還能為未來的創(chuàng)新和擴展奠定基礎(chǔ)。如果您對這些功能感興趣,可以參考相關(guān)文檔,了解如何在實際項目中使用這些工具。
Kubernetes Gateway API 的發(fā)展為云原生生態(tài)系統(tǒng)注入了新的活力。通過 Gloo Gateway 與 ExternalDNS、Cert Manager 和 Argo Rollouts 等工具的結(jié)合,用戶可以實現(xiàn)應(yīng)用程序部署和流量管理的全自動化。這種整合不僅提升了操作效率,還為社區(qū)的進一步發(fā)展創(chuàng)造了更多可能性。未來,隨著更多項目加入 Gateway API 的支持行列,整個生態(tài)系統(tǒng)的協(xié)同效應(yīng)將進一步增強,為用戶帶來更多價值。
原文鏈接: https://www.solo.io/blog/automation-kubernetes-gateway-api-gloo-gateway