新聞中心
使用 Traefik Hub 輕松暴露本地 Kubernetes 集群服務
作者:陽明 2022-07-05 08:10:25
云計算
云原生 Traefik Hub 將完全托管于你的基礎架構之上,并與你安裝在每個集群中的代理進行連接。代理附加到入口實例。它們充當你的每項服務的網關,該平臺向每個代理發(fā)送指令并從其接收關鍵指標。Traefik Hub 適用于 Kubernetes 或 Docker 集群。

Traefik Hub 是一個云原生網絡平臺,可幫助你即時在邊緣發(fā)布、保護和擴展容器。它提供了從用戶到容器的端到端連接以及進入每個服務的網關。它是用于在分布式系統(tǒng)中連接多個集群的統(tǒng)一解決方案,它通過一個簡單易用的儀表板整合了網絡堆棧的多個層。Traefik Hub 是一種開箱即用的解決方案,易于學習,甚至更易于實施,開發(fā)團隊只需單擊一下即可將應用程序發(fā)布到 Internet,并自動配置重要的安全實踐。
Traefik Hub 將完全托管于你的基礎架構之上,并與你安裝在每個集群中的代理進行連接。代理附加到入口實例。它們充當你的每項服務的網關,該平臺向每個代理發(fā)送指令并從其接收關鍵指標。Traefik Hub 適用于 Kubernetes 或 Docker 集群。
特性
一鍵服務發(fā)布
Traefik Hub 使發(fā)布和暴露任何應用程序到互聯(lián)網變得容易。在集群中安裝 Hub 代理,選擇端口和訪問控制策略(或允許 Traefik Hub 為你自動檢測),然后單擊“暴露服務”。就這么簡單。在幾秒鐘內,你的服務就可以與朋友或同事共享的 DNS 名稱直接暴露在互聯(lián)網上。
容器的高級安全性
使用 Traefik Hub,你的容器在發(fā)布和訪問時都是安全的。該平臺通過私有加密隧道與代理連接,允許你發(fā)布服務而無需擔心公共 IP 或 NAT 配置。你還可以選擇靈活訪問和自動證書管理,因為 Traefik Hub 支持 JSON Web 令牌 (JWT) 和基本身份驗證。證書管理是云原生安全的另一個關鍵組件,它在 Traefik Hub 中實現(xiàn)了自動化 Traefik Hub 請求、更新和傳播 ACME 證書以保持一致的安全配置。DNS、路由規(guī)則、訪問控制和 NAT 是自動化的,因此可擴展且不易出現(xiàn)人為錯誤。
靈活自動擴展到多個集群
集中且易于使用的 Hub 平臺可讓你將部署無縫擴展到多個集群。你可能對已發(fā)布集群的配置、入站流量和運行狀況有任何疑問,可以在儀表板中找到。每秒請求數、平均響應時間和每秒請求錯誤等重要指標都可以輕松訪問。作為一個簡單而統(tǒng)一的網絡工具,Traefik Hub 可讓您在部署的同時擴展網絡。
使用
Traefik Hub 很容易上手,我們只需要前往網站 http://hub.traefik.io/ 創(chuàng)建一個帳戶,然后按照提示操作即可,如下所示。
點擊 Install my first Traefik Hub Agent 按鈕開始安裝 Hub 代理即可,這樣就可以讓 Hub 發(fā)現(xiàn)我們平臺上的服務,然后選擇要發(fā)布的服務即可。
比如我們這里準備安裝代理在 Kubernetes 集群上,可以選擇該平臺即可出現(xiàn)對應的安裝教程。
按照上面的提示在我們的 Kubernetes 集群中安裝 Traefik 和代理程序,安裝后代理程序就會分析我們的集群信息并將服務發(fā)送到 Traefik Hub 上去,正常情況下會在集群中安裝一個 Traefik 應用和代理程序,如下所示:
$ kubectl get pods -n hub-agent
NAME READY STATUS RESTARTS AGE
hub-agent-auth-server-855f9c788f-jct9w 1/1 Running 0 19m
hub-agent-auth-server-855f9c788f-lcwh6 1/1 Running 0 19m
hub-agent-auth-server-855f9c788f-vhhlw 1/1 Running 0 19m
hub-agent-controller-5f7b7b48c7-nfz5s 1/1 Running 0 19m
hub-agent-tunnel-54b589f5bf-mlpnr 1/1 Running 0 19m
traefik-hub-57fb857fff-sm8f5 1/1 Running 0 20m
$ kubectl get pods
NAME READY STATUS RESTARTS AGE
traefik-84786bd774-t9p47 1/1 Running 0 21m
安裝完成后在 Traefik Hub 的網站上就可以看到我們集群中的 Services 信息,如下圖所示:
在暴露這些服務時,我們還可以使用 JWT、BasicAuth(以及更多即將推出的)認證方式來保護它們。只需要在頁面上面點擊 Create a Policy 按鈕創(chuàng)建一個訪問控制策略,比如我們這里添加一個名為 basic-auth-jenkins 的訪問策略,如下圖所示:
現(xiàn)在我們來將集群中的 jenkins 服務直接發(fā)布到外網中去,在 Traefik Hub 的 Dashboard 中找到該服務。
我們就可以直接來發(fā)布該服務了,點擊 Publish the service 按鈕,選擇我們需要暴露的 Service 端口,如果想限制訪問也可以選擇前面我們創(chuàng)建的訪問策略。
然后點擊 Save and Publish 即可,稍等一段時間后我們的服務就會被發(fā)布在了 Traefik Hub 上了。
比如我們這里生成的外網地址為 https://distinguished-urial-cwk8f9.fzqj46yl.traefikhub.io,通過該 URL 就可以訪問到我們的 Jenkins 服務了。
然后就和正常使用 Jenkins 沒任何區(qū)別了。
當通過上面的 URL 訪問我們的應用的時候,在 Traefik Hub 上還可以看到該應用的相關性能指標信息。
在 Dashboard 的首頁可以看到我們的 Traefik Hub 的當前統(tǒng)計信息。
不過目前 Traefik Hub 還處于 Beta 狀態(tài),在使用過程中還有一些 BUG,比如上面我們關聯(lián)了一個 Basic Auth 的訪問策略,但是在實際測試的過程中發(fā)現(xiàn)并沒有生效。但是整體上我們可以感受到 Treafik Hub 的強大功能以及發(fā)布和保護我們的服務是多么簡單。
網站題目:使用TraefikHub輕松暴露本地Kubernetes集群服務
URL鏈接:http://m.fisionsoft.com.cn/article/dpjoijp.html


咨詢
建站咨詢
