技術好文 | Kubernetes SIG Gateway API與F5 BIG-IP的集成重要價值、意義、策略

來源:F5 Inc
作者:宗兆偉
時間:2023-05-17
1223
Kubernetes已成為全球開發(fā)人員和IT運營團隊使用的最受歡迎的開源容器編排平臺之一。

Kubernetes Gateway API趨勢

Kubernetes已成為全球開發(fā)人員和IT運營團隊使用的最受歡迎的開源容器編排平臺之一。它提供了一種高效、自動、可擴展和自愈的方式部署和管理容器化應用程序,并且能實現(xiàn)資源配比優(yōu)化。對于任何想要使用容器來增強其IT運營的組織來說,它是一個必不可少的工具。順便說一句,它得到了廣泛的社區(qū)支持,是目前K8S社區(qū)最熱門的項目之。

Kubernetes:

https://github.com/orgs/kubernetes-sigs/repositories

隨著越來越多的企業(yè)采用Kubernetes作為其容器化應用交付平臺,可靠和安全的入口控制變得非常重要。

SIG Gateway API(簡稱“Gateway API”)是一種Kubernetes網(wǎng)絡解決方案,它使管理員能夠以可擴展和自動化的方式配置和管理網(wǎng)絡基礎設施。

SIG Gateway API:

https://gateway-api.sigs.k8s.io/

Gateway API是一個Kubernetes增強定義,它引入了一種聲明式和可擴展的方式來管理網(wǎng)絡基礎設施,包括負載均衡器、防火墻和代理。它提供了一種統(tǒng)一的方式來管理這些資源,跨不同的云提供商,跨Kubernetes發(fā)行版。它簡化了配置過程,減少運營開銷。Gateway API成為Kubernetes生態(tài)系統(tǒng)的一個重要組成部分,并得到了Google、亞馬遜云科技和Microsoft等主要供應商的支持。

Kubernetes Gateway API:

https://gateway-api.sigs.k8s.io/implementations/

BIG-IP的應用交付(ADC)能力和場景

作為市場領導者,F(xiàn)5 BIG-IP提供了廣泛而先進的應用程序交付功能,如流量管理、安全和流量加速。它使得企業(yè)能夠靈活的擴展其應用程序、提高可用性,增加安全等級,幫助企業(yè)向其用戶提供快速、安全和高可用的應用程序。

F5 BIG-IP擅長LoadBalancing、SSL/TLS卸載、應用程序加速、安全性和HA等等。在網(wǎng)絡方案方面,F(xiàn)5 BIG-IP適用于中到大型企業(yè)的網(wǎng)絡環(huán)境,支持多云和多協(xié)議。同時,它可以在公共云、私有云或物理數(shù)據(jù)中心中運行。

將BIG-IP與Kubernetes Gateway API集成的意義

總結為一句話,那就是:在Kubernetes環(huán)境中釋放BIG-IP強大的ADC功能。

基于上述對kubernetes社區(qū)Gateway API趨勢的理解以及對BIG-IP強大功能的評估,我們孵化了項目“BIG-IP Kubernetes Gateway API Controller”。

BIG-IP Kubernetes Gateway API Controller:

https://github.com/f5devcentral/bigip-kubernetes-gateway

BIG-IP Kubernetes GatewayAPI Controller是來自F5 Inc.開源項目,它實現(xiàn)了一種基于BIG-IP LTM的實現(xiàn)方式。

借助BIG-IP Kubernetes GatewayAPI Controller,通過YAML格式在Kubernetes中部署與業(yè)務相關的Gateway API配置,相關配置可以自動的轉換為BIG-IP的相應LTM/網(wǎng)絡配置,在BIG-IP上實現(xiàn)各種Gateway功能,如TLS卸載、負載平衡、流量路由、四七層業(yè)務發(fā)布等等。

通過Gateway API在不同流量解決方案中的規(guī)范一致性,BIG-IP Kubernetes GatewayAPI Controller幫助用戶實現(xiàn)了南北向與東西向流量解決方案的共存與協(xié)同。這意味著用戶在linkerd或Istio等服務網(wǎng)格解決方案場景中可以繼續(xù)獲得F5 BIG-IP強大的企業(yè)級特性。

BIG-IP集成Gateway API設計思路

BIG-IP Kubernetes GatewayAPI Controller是golang語言的開源實現(xiàn),以獨立程序的方式運行在pod中。

資源監(jiān)控

與所有其他CRD實現(xiàn)一樣,BIG-IP Kubernetes GatewayAPI Controller監(jiān)控Kubernetes GatewayAPI CRD資源(gateway.networking.k8s.io/v1beta1),并將它們轉換為BIG-IP相關配置以部署到BIG-IP設備上。

為了訪問Kubernetes的各種必要資源,我們需要使用特定的ServiceAccount和ClusterRole,它們需要具備特定的權限。請訪問下方網(wǎng)址以獲取權限詳情。

https://github.com/f5devcentral/bigip-kubernetes-gateway/blob/master/deploy/1.clusterrole-and-bindin...

在實現(xiàn)層面上,一方面,BIG-IP Kubernetes GatewayAPI Controller連接到上游Kubernetes,通過list-watch機制監(jiān)視群集中的Gateway API更新事件。此機制被封裝在client-go(k8s.io/client-go)和controller-runtime(sigs.k8s.io/controller-runtime)中。

另一方面,BIG-IP Kubernetes GatewayAPI Controller負責連接到下游BIG-IP,解析、轉換并部署Gateway API配置到BIG-IP LTM。

這里,Controller負責解決兩個問題:

我們在以下兩部分分別闡述他們的設計方案。

網(wǎng)絡啟用

就網(wǎng)絡連接而言,我們知道Kubernetes有不同的CNI類型,如flannel(overlay網(wǎng)絡)、calico(underlay網(wǎng)絡)等。

對于overlay網(wǎng)絡,Controller需要配置BIG-IP流量網(wǎng)絡和Kubernetes網(wǎng)絡之間的隧道,以便南北流量可以通過。通過自動化的網(wǎng)絡配置,實現(xiàn)了BIG-IP與Pods的高性能直通,避免iptables使用以及流量繞行導致的性能下降,在網(wǎng)絡部署服務時,用戶無需過度關注網(wǎng)絡細節(jié),Controller會幫助用戶實現(xiàn)自動化配置與發(fā)現(xiàn)工作。

對于任意underlay網(wǎng)絡,BIG-IP可通過二層互聯(lián),或靜態(tài)、動態(tài)路由實現(xiàn)與Pods網(wǎng)絡的直接互聯(lián)。

所有網(wǎng)絡設置都是自動的。

資源映射

BIG-IP LTM的資源類型包括Virtual、iRule、Pool等,為了實現(xiàn)ADC功能,我們需要清楚Gateway API資源對象在BIG-IP LTM的表現(xiàn)形式。簡單來說,我們可以將K8S Gateway API資源映射為以下BIG-IP資源:

1693464246584.png

隨著更多的Gateway API功能的引入,我們可能會考慮使用更多的BIG-IP資源類型。

在資源映射過程中可能還會有更多的細節(jié)。例如,HTTPRoute資源,在BIG-IP端,我們可以使用iRule實現(xiàn),也可以使用l7policy來實現(xiàn)。iRule是程序級別的靈活性,它不僅可以處理第7層流量,還可以處理第4層流量,因此目前,我們的實現(xiàn)中是通過轉換為iRule代碼的方式來實現(xiàn)HTTPRute定義中的過濾器和匹配。

部署策略

BIG-IP提供了多種配置工具,如AS3、iControl Rest、tmsh等。

在Controller中,我們目前使用iControl Rest+事務(transaction)的方式部署資源列表,使用增量的方式處理資源變更,這個過程被封裝成BIG-IP iControl Rest golang模塊。它具有增量、快速、自發(fā)現(xiàn)的特點。

當然,另一個可能性是通過AS3來實現(xiàn),這是F5推薦的方法。在未來的BIG-IP Next產品中,AS3將成為唯一的外部配置工具。我們將持續(xù)關注它,核實其性能,并在適當?shù)臅r機和適當?shù)姆绞郊傻紺ontroller中。

展望

隨著越來越多的客戶參與,我們將兼容Gateway API更多/必要的.Spec功能,例如在“Experimental”Channel中定義的功能。

Kubernetes Gateway API:

https://gateway-api.sigs.k8s.io/concepts/versioning/#release-channels-eg-experimental-standard

正如我們之前提到的,在未來我們將兼容AS3下發(fā)方式。BIG-IPNext尚未發(fā)布,我們將在適當?shù)臅r間考慮支持它。

立即登錄,閱讀全文
原文鏈接:點擊前往 >
文章來源:F5 Inc
版權說明:本文內容來自于F5 Inc,本站不擁有所有權,不承擔相關法律責任。文章內容系作者個人觀點,不代表快出海對觀點贊同或支持。如有侵權,請聯(lián)系管理員(zzx@kchuhai.com)刪除!
相關文章
F5全新報告揭示AI時代API安全面臨嚴峻挑戰(zhàn)
F5全新報告揭示AI時代API安全面臨嚴峻挑戰(zhàn)
F5日前發(fā)布《2024年應用策略現(xiàn)狀報告:API安全》(以下簡稱為“報告”),揭示了跨行業(yè)API安全面臨的嚴峻現(xiàn)狀。
AI
F5 Networks
云服務
2024-12-10
F5推出AI網(wǎng)關,管理并保護快速增長的AI流量和應用需求
F5推出AI網(wǎng)關,管理并保護快速增長的AI流量和應用需求
F5(NASDAQ:FFIV)日前宣布推出搶先體驗版F5 AI網(wǎng)關(AI Gateway),以簡化企業(yè)在推動AI部署過程中應用、API和大語言模型(LLMs)間的交互。
AI
F5 Networks
云服務
2024-11-27
F5搭載NVIDIA BlueField-3 DPU賦能加速AI應用交付
F5搭載NVIDIA BlueField-3 DPU賦能加速AI應用交付
F5(NASDAQ:FFIV)日前宣布推出BIG-IP Next for Kubernetes,一項全新的創(chuàng)新AI應用交付和應用安全解決方案,旨在為服務提供商和大型企業(yè)提供集中控制點,以加速、保護和簡化流入和流出大型人工智能(AI)基礎設施的數(shù)據(jù)流量。
F5 Networks
云服務
2024-11-03
F5研究顯示:企業(yè)加速IT發(fā)展,以充分挖掘生成式AI潛力
F5研究顯示:企業(yè)加速IT發(fā)展,以充分挖掘生成式AI潛力
F5(NASDAQ:FFIV)日前發(fā)布《2024年數(shù)字化企業(yè)成熟度指數(shù)報告》(以下簡稱“報告”),該報告對全球企業(yè)數(shù)字化轉型工作進行全面分析,強調了生成式人工智能(AI)的顯著影響及其在推動各行業(yè)數(shù)字化成熟度方面的關鍵作用。
F5 Networks
云服務
2024-11-02
優(yōu)質服務商推薦
更多
掃碼登錄
打開掃一掃, 關注公眾號后即可登錄/注冊
加載中
二維碼已失效 請重試
刷新
賬號登錄/注冊
小程序
快出海小程序
公眾號
快出海公眾號
商務合作
商務合作
投稿采訪
投稿采訪
出海管家
出海管家