自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

一文讀懂 Traefik Proxy 3.1 新版本特性

云計(jì)算 云原生
今天我們來聊一下云原生生態(tài)相關(guān)技術(shù) - 用于構(gòu)建融合網(wǎng)關(guān),集流量、安全及業(yè)務(wù)于一體的 Traefik。

眾所周知,Traefik v3.0 的發(fā)布標(biāo)志著這款知名的云原生入口控制器邁入了全新的里程碑。為我們帶來了令人振奮的重大更新,其中包括對 WASM、Open Telemetry 和 Kubernetes Gateway API 的支持等關(guān)鍵新功能。這些創(chuàng)新性的加入不僅彰顯了 Traefik 在技術(shù)領(lǐng)域的引領(lǐng)地位,更為用戶帶來了前所未有的便利和性能提升。

關(guān)于 Traefik 3.x 發(fā)展點(diǎn)滴的一些思考

自從 Traefik 誕生以來,一直以其卓越的性能、靈活的配置和緊密的云原生集成而備受推崇。作為領(lǐng)先的開源入口控制器和反向代理,Traefik 已成為無數(shù)企業(yè)和組織實(shí)現(xiàn)云原生轉(zhuǎn)型的可靠利器。

而最新推出的 Traefik 3.x 版本,則標(biāo)志著這款優(yōu)秀軟件開啟了全新的發(fā)展歷程,為用戶帶來了一系列激動人心的創(chuàng)新和增強(qiáng)。

回顧 Traefik 3.0 的發(fā)布,我們不難發(fā)現(xiàn)它所引入的諸多關(guān)鍵新功能正是 Traefik 與時(shí)俱進(jìn)、緊跟技術(shù)潮流的充分體現(xiàn)。其中,對 WebAssembly(WASM) 的支持無疑是最引人注目的一項(xiàng)創(chuàng)新。憑借 WASM,Traefik 能夠可以在運(yùn)行時(shí)動態(tài)加載各種中間件,從而實(shí)現(xiàn)功能的無縫擴(kuò)展,大幅提升了系統(tǒng)的靈活性和可擴(kuò)展性。這一獨(dú)特的能力不僅為開發(fā)人員帶來了前所未有的自由,更為企業(yè)級應(yīng)用程序的部署和管理開放了全新的大門。

與此同時(shí),Traefik 3.0 對 OpenTelemetry 的支持也讓系統(tǒng)的可觀測性得到了極大增強(qiáng)。作為一種新興的云原生觀測標(biāo)準(zhǔn),OpenTelemetry 使 Traefik 能夠以統(tǒng)一且廠商無關(guān)的方式收集和導(dǎo)出跟蹤數(shù)據(jù)、指標(biāo)和日志,從而讓用戶更輕松地監(jiān)控和故障排查復(fù)雜的分布式系統(tǒng)。這一優(yōu)勢無疑將進(jìn)一步提升 Traefik 在企業(yè)級環(huán)境中的應(yīng)用價(jià)值。

最后,Traefik 3.0 對 Kubernetes Gateway API 的支持則徹底消除了它在 Kubernetes 生態(tài)系統(tǒng)中的"外來者"身份,使之成為集群中與生俱來的一員。憑借 Gateway API,Traefik 現(xiàn)在可以作為標(biāo)準(zhǔn)的 Kubernetes 資源進(jìn)行管理和配置,從而實(shí)現(xiàn)了與集群的無縫集成。這一里程碑式的進(jìn)步不僅簡化了 Traefik 在 Kubernetes 環(huán)境中的部署和使用,更重要的是,它為 Traefik 在云原生生態(tài)系統(tǒng)中扮演更加核心的角色奠定了基礎(chǔ)。

而就在 Traefik 3.0 的熱度未曾消退之時(shí),Traefik 3.1 版本的到來則讓這款云原生網(wǎng)關(guān)的實(shí)力再上新臺階。3.1 版本進(jìn)一步增強(qiáng)了 WASM 和網(wǎng)關(guān) API 的集成能力,其中尤為值得一提的是,隨著網(wǎng)關(guān) API 將很快成為 Kubernetes 集群中公開資源的新標(biāo)準(zhǔn),Traefik 3.1 的 Kubernetes 網(wǎng)關(guān) API 已做好充分準(zhǔn)備,可安全無虞地在生產(chǎn)環(huán)境中使用。這無疑是一個(gè)振奮人心的好消息,標(biāo)志著 Traefik 在云原生網(wǎng)關(guān)的征程上又邁出了堅(jiān)實(shí)的一步。

舉例來說,Traefik 與服務(wù)網(wǎng)格的結(jié)合將為微服務(wù)應(yīng)用程序帶來前所未有的靈活性、可觀測性和控制能力。而在邊緣計(jì)算場景下,Traefik 則可以作為關(guān)鍵的網(wǎng)關(guān)組件,實(shí)現(xiàn)對分布于全球各地的邊緣節(jié)點(diǎn)的統(tǒng)一管理和流量控制。

因此,我們可以毫不避諱地說,憑借其出眾的性能、創(chuàng)新的功能和與云原生生態(tài)的深度融合,Traefik 正在成為越來越多企業(yè)實(shí)現(xiàn)數(shù)字化轉(zhuǎn)型的首選利器。

關(guān)于 Traefik 3.1 核心特性簡要解析

作為規(guī)范的早期支持者,Traefik 從一開始就扮演著 GatewayController 的重要角色,為規(guī)范的制定和發(fā)展做出了寶貴的貢獻(xiàn)。

如今,備受矚目的 Traefik v3.1 版本正式面世,不僅全面滿足了 Gateway API 規(guī)范的核心要求,更是超越了這些基本標(biāo)準(zhǔn),為用戶帶來了更加出色的體驗(yàn)。正如 Kubernetes SIG 網(wǎng)絡(luò)團(tuán)隊(duì)的一致性測試報(bào)告所顯示:Traefik 在遵從 Gateway API 規(guī)范的同時(shí),還提供了更多增值功能和優(yōu)化,展現(xiàn)出了作為領(lǐng)先云原生網(wǎng)關(guān)的非凡實(shí)力。

這一喜人的成果標(biāo)志著,Traefik 的 Gateway API 提供商現(xiàn)已做好充分的準(zhǔn)備,可以安全無虞地在生產(chǎn)環(huán)境中使用了。對于那些渴望在 Kubernetes 集群中采用標(biāo)準(zhǔn)化網(wǎng)關(guān)資源的企業(yè)和組織而言,Traefik 無疑是最值得信賴的選擇。

1.狀態(tài)管理改進(jìn)

在現(xiàn)代云原生架構(gòu)中,“狀態(tài)管理”無疑是網(wǎng)關(guān) API 的核心組成部分。它使我們能夠?qū)崟r(shí)監(jiān)控基礎(chǔ)設(shè)施的運(yùn)行狀況,確保 GatewayAPI 對象可以隨時(shí)準(zhǔn)備就緒,高效地管理流量。對于 Traefik 這款領(lǐng)先的云原生網(wǎng)關(guān)而言,提供出色的狀態(tài)管理能力是其保持競爭力的關(guān)鍵所在。

在最新發(fā)布的 Traefik v3.1 版本中,通過緊密遵循 GatewayAPI 規(guī)范,Traefik 現(xiàn)在可以為用戶提供對象的真實(shí)生產(chǎn)狀態(tài)監(jiān)控,從而確保網(wǎng)關(guān)的可靠性和可用性。不論是 Gateway、GatewayClass、HTTPRoute 還是其他關(guān)鍵對象,Traefik 都能夠準(zhǔn)確計(jì)算和反映它們的實(shí)時(shí)狀態(tài),讓用戶可以一覽無余地掌握整個(gè)系統(tǒng)的運(yùn)行情況。

除了核心的狀態(tài)監(jiān)控能力,Traefik v3.1 在狀態(tài)管理方面還提供了更多增值功能。例如,用戶現(xiàn)在可以根據(jù)需求自定義狀態(tài)計(jì)算邏輯,讓監(jiān)控結(jié)果與實(shí)際業(yè)務(wù)場景更加貼合。此外,Traefik 還支持將狀態(tài)信息導(dǎo)出到各種監(jiān)控和可觀測性系統(tǒng),實(shí)現(xiàn)與現(xiàn)有基礎(chǔ)設(shè)施的無縫集成。

2.路由優(yōu)先級更新

我們都知道,長期以來,Traefik 一直采用基于規(guī)則長度的路由優(yōu)先級機(jī)制,旨在有效防止路由重疊的發(fā)生。該機(jī)制的運(yùn)作原理是,路徑越長的規(guī)則通常將擁有更高的優(yōu)先級,從而確保請求能夠被正確地路由至最精確的目的地。

然而,隨著 Kubernetes Gateway API 規(guī)范的推出,Traefik 面臨了全新的挑戰(zhàn)。該規(guī)范為路由優(yōu)先級制定了自己的一套規(guī)則,與 Traefik 原有機(jī)制存在一定差異。面對這一情況,在最新發(fā)布的 v3.1 版本中徹底更新了 HTTPRoutes 的優(yōu)先級計(jì)算方式。

在以往,當(dāng)用戶需要在不同的 Kubernetes 發(fā)行版或 GatewayController 之間進(jìn)行切換時(shí),往往需要重新配置和調(diào)整路由匹配系統(tǒng),以適應(yīng)各自的優(yōu)先級規(guī)則。這無疑增加了運(yùn)維的復(fù)雜度,也給系統(tǒng)的可移植性帶來了一定阻礙。

然而,憑借 Traefik v3.1 對規(guī)范的貫徹落實(shí),這一痛點(diǎn)將徹底消除?,F(xiàn)在,無論用戶是從其他 GatewayController 切換到 Traefik,還是在不同的 Kubernetes 發(fā)行版之間進(jìn)行遷移,路由匹配系統(tǒng)都可以保持完全一致,無需進(jìn)行任何調(diào)整或重新配置。這一獨(dú)特的優(yōu)勢不僅極大地簡化了運(yùn)維流程,更為用戶的系統(tǒng)帶來了無與倫比的可移植性和靈活性。


---
apiVersion: gateway.networking.k8s.io/v1beta1
kind: Gateway
metadata:
  name: my-gateway
  namespace: default
spec:
  gatewayClassName: traefik
  listeners:
  - hostname: example.com
    port: 80
    protocol: HTTP
    routes:
      kind: HTTPRoute
      namespaceSelector:
        matchLabels:
          app: web
      middleware:
        namespace: default
        path: /middlewares

---
apiVersion: gateway.networking.k8s.io/v1beta1
kind: HTTPRoute
metadata:
  name: web-route
  namespace: default
  labels:
    app: web
spec:
  parentRefs:
  - kind: Gateway
    name: my-gateway
    namespace: default
  hostnames:
  - "example.com"
  rules:
  - matches:
    - path:
        type: PathPrefix
        value: /
    forwardTo:
    - serviceName: web-service
      port: 80

---
apiVersion: v1
kind: Service
metadata:
  name: web-service
  namespace: default
  labels:
    app: web
spec:
  selector:
    app: web
  ports:
  - port: 80
    targetPort: 8080

---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: web-deployment
  namespace: default
  labels:
    app: web
spec:
  replicas: 3
  selector:
    matchLabels:
      app: web
  template:
    metadata:
      labels:
        app: web
    spec:
      containers:
      - name: web
        image: nginx
        ports:
        - containerPort: 8080

通過這個(gè)配置,我們可以看到 Traefik 如何與 Gateway API 資源集成。所有對 example.com 的 HTTP 請求都將被路由到 web-service,并最終由 web-deployment 處理。

值得注意的是,在此示例中,我們利用了 HTTPRoute 的 parentRefs 字段來指定所屬的 Gateway。這是 Gateway API 規(guī)范提供的標(biāo)準(zhǔn)方式,用于將路由與特定網(wǎng)關(guān)相關(guān)聯(lián)。

3.ReferenceGrant

在云原生架構(gòu)中,跨命名空間引用一直是一個(gè)棘手的問題。為了解決這一難題,Traefik 曾通過自定義的 IngressRoute 對象,引入了一個(gè)特殊選項(xiàng)來允許跨命名空間引用。盡管這種方式在一定程度上滿足了用戶需求,但潛在的安全隱患依然存在,使得它不夠完美。

在 Traefik v3.1 最新版本中,借助 ReferenceGrant,我們可以在 Traefik 中聲明一個(gè)網(wǎng)關(guān),該網(wǎng)關(guān)能夠訪問存儲在其他命名空間中的 TLS 證書等敏感資源。同時(shí),還也可以輕松地定義 HTTPRoute 對象,將流量路由到不同命名空間中的服務(wù)。這一全新的功能不僅消除了過去的安全隱患,更極大地簡化了跨命名空間引用的配置過程。

除了安全性和易用性的提升,ReferenceGrant 還為多租戶環(huán)境帶來了前所未有的靈活性。借助這一功能,我們可以輕松地在不同的命名空間中隔離租戶,同時(shí)仍然允許它們共享某些公共資源和服務(wù)。這種模式不僅有利于資源利用率的提高,更能夠滿足復(fù)雜的業(yè)務(wù)需求,為企業(yè)帶來更大的價(jià)值。


# HTTRoute in the default namespace.
---
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
  name: whoami-http
  namespace: default
spec:
  parentRefs:
    - name: traefik
      kind: Gateway
  rules:
     - backendRefs:
        - name: whoami
          namespace: whoami
          port: 80

# ReferenceGrant and Service in the whoami namespace.
---
apiVersion: gateway.networking.k8s.io/v1beta1
kind: ReferenceGrant
metadata:
  name: whoami
  namespace: whoami
spec:
  from:
    - group: gateway.networking.k8s.io
      kind: HTTPRoute
      namespace: default
  to:
    - group: ""
      kind: Service
      name: whoami

---
apiVersion: v1
kind: Service
metadata:
  name: whoami
  namespace: whoami
spec:
  selector:
    app: whoami
  ports:
    - port: 80

作為云原生時(shí)代的核心基礎(chǔ)設(shè)施,Kubernetes Gateway API 規(guī)范為網(wǎng)關(guān)控制器提供了統(tǒng)一的標(biāo)準(zhǔn)化接口,確保了不同供應(yīng)商之間的互操作性和兼容性。然而,僅滿足規(guī)范所需的核心功能是遠(yuǎn)遠(yuǎn)不夠的。為了真正釋放網(wǎng)關(guān)的全部潛能,并滿足日益增長的業(yè)務(wù)需求,規(guī)范還為 GatewayController 預(yù)留了可選的擴(kuò)展功能,以供供應(yīng)商根據(jù)自身產(chǎn)品特點(diǎn)進(jìn)行創(chuàng)新和拓展。

作為行業(yè)領(lǐng)先的云原生網(wǎng)關(guān),Traefik 在 v3.1 版本中緊跟潮流,為用戶帶來了一系列創(chuàng)新的擴(kuò)展功能,進(jìn)一步夯實(shí)了其在 Kubernetes 生態(tài)系統(tǒng)中的領(lǐng)導(dǎo)地位。

其中,最引人注目的當(dāng)屬 HTTPURLRewriteFilter 和 HTTPRouteRedirect 兩大功能。HTTPURLRewriteFilter 讓我們可以根據(jù)需求靈活地重寫 HTTP 請求的 URL,實(shí)現(xiàn)更精細(xì)化的流量控制和路由。無論是為了簡化 URL 結(jié)構(gòu)、隱藏內(nèi)部實(shí)現(xiàn)細(xì)節(jié),還是實(shí)現(xiàn)端點(diǎn)遷移或負(fù)載均衡,這一強(qiáng)大的功能都可以發(fā)揮關(guān)鍵作用。

與之相呼應(yīng)的是 HTTPRouteRedirect 功能,賦予了 Traefik 重定向 HTTP 請求的能力。通過靈活的配置,我們可以根據(jù)各種條件(如路徑、主機(jī)名、請求方法等)來決定是否重定向,并指定重定向的目標(biāo) URL。這不僅有助于優(yōu)化用戶體驗(yàn),還可以用于實(shí)現(xiàn)安全策略、流量遷移等多種場景。

除了上述兩大亮點(diǎn),Traefik v3.1 還為 HTTPRoute 對象帶來了對請求方法和查詢參數(shù)匹配的支持。這意味著,我們現(xiàn)在可以根據(jù) HTTP 請求的方法(如 GET、POST 等)以及查詢參數(shù)來定義更精準(zhǔn)的路由規(guī)則,進(jìn)一步提高了流量控制的靈活性和準(zhǔn)確性。

當(dāng)然,除了 Gateway API 特性外,在 Traefik v3.1 中針對 WebAssembly(WASM) 的支持也進(jìn)行了優(yōu)化與改進(jìn)。通過優(yōu)化 WebAssembly 的支持,Traefik v3.1 現(xiàn)在允許用戶使用 WASM 編寫自定義中間件。這些中間件可以直接部署在 Traefik 實(shí)例中,從而實(shí)現(xiàn)對 HTTP 請求和響應(yīng)的細(xì)粒度處理和轉(zhuǎn)換。

想象一下,我們可以使用 WASM 來實(shí)現(xiàn)復(fù)雜的請求路由邏輯、內(nèi)容轉(zhuǎn)碼、安全檢查,甚至負(fù)載均衡等高級功能。由于 WebAssembly 的高性能和安全沙箱特性,這些自定義中間件將能夠以極高的效率和隔離性運(yùn)行,從而確保網(wǎng)關(guān)的穩(wěn)定性和可靠性。

這些創(chuàng)新功能的推出,再次彰顯了 Traefik 對用戶需求的高度重視,以及對技術(shù)創(chuàng)新的不懈追求。憑借出色的規(guī)范遵從性和領(lǐng)先的擴(kuò)展能力,Traefik 必將為用戶帶來前所未有的網(wǎng)關(guān)體驗(yàn),助力企業(yè)高枕無憂地馳騁于云端之上。

Reference :

  • [1] https://traefik.io/blog/announcing-traefik-proxy-v3-1/
  • [2] https://github.com/traefik/traefik/releases/tag/v3.1.0?ref=traefik.io
責(zé)任編輯:趙寧寧 來源: 架構(gòu)驛站
相關(guān)推薦

2024-02-19 08:04:58

網(wǎng)關(guān)云原生

2024-05-24 10:29:46

2017-05-04 20:29:12

HTTP服務(wù)器TCP

2023-12-22 19:59:15

2021-08-04 16:06:45

DataOps智領(lǐng)云

2024-12-23 06:10:00

2010-06-01 09:52:27

jQuery Tool

2023-05-20 17:58:31

低代碼軟件

2023-11-27 17:35:48

ComponentWeb外層

2022-10-20 08:01:23

2022-07-26 00:00:03

語言模型人工智能

2021-12-29 18:00:19

無損網(wǎng)絡(luò)網(wǎng)絡(luò)通信網(wǎng)絡(luò)

2022-07-05 06:30:54

云網(wǎng)絡(luò)網(wǎng)絡(luò)云原生

2022-12-01 17:23:45

2018-09-28 14:06:25

前端緩存后端

2022-09-22 09:00:46

CSS單位

2025-04-03 10:56:47

2022-11-06 21:14:02

數(shù)據(jù)驅(qū)動架構(gòu)數(shù)據(jù)

2022-07-20 11:47:18

數(shù)據(jù)

2021-09-09 11:00:15

微軟Windows 10Windows
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號