Traefik 發(fā)布控制面板 SaaS 服務(wù) Pilot
Traefik 在2.x版本過后提供了 TCP、UDP 的支持,提出了中間件的概念,但是目前中間件都是官方內(nèi)置的,在實際使用的過程中很多企業(yè)都有自己的實際需求,所以在社區(qū)版本中提到最多的功能也就是希望能夠支持自定義中間件,前面我們有介紹過通過修改源碼的方式來添加自定義中間件,但是這種方式比如侵入性太高,需要重新編譯源碼,所以并不推薦使用這種方式。

令人興奮的是 Traefik 近期在 v2.3.0-rc1 版本中發(fā)布了一個新的全局控制面板 SaaS 服務(wù):Traefik Pilot(https://pilot.traefik.io ),Pilot 可以擴(kuò)展 Traefik 的功能,為每個 Traefik 實例在一個統(tǒng)一的 Dashboard 頁面上提供強(qiáng)大的可觀測性和控制功能,此外 Pilot 還為 Traefik 引入了大家非常關(guān)心的插件功能,包括一個插件應(yīng)用中心,通過定制請求和響應(yīng)處理來擴(kuò)展 Traefik 中間件。
自定義中間件
新的插件系統(tǒng)構(gòu)建在 Yaegi 的基礎(chǔ)之上,提供了一種優(yōu)雅的、可擴(kuò)展和高性能的方式來增強(qiáng) Traefik 的功能,而無需修改或編譯 Traefik 的源代碼。
插件通過一個額外的包來對用戶的請求和響應(yīng)進(jìn)行轉(zhuǎn)換,這些請求和響應(yīng)都由 Traefik 來處理。以前給 Traefik 官方倉庫貢獻(xiàn)的插件由于各種原因可能無法被 Traefik 上游開發(fā)者接受,現(xiàn)在開發(fā)者完全不用擔(dān)心了,直接使用官方的插件開發(fā)工具開發(fā)插件即可,還可以與其他用戶共享插件,就像在 GitHub 上發(fā)布一樣的,新的插件引擎使社區(qū)能夠使用 Traefik Pilot 安裝他們的自定義中間件,而無需重新編譯代碼。

Pilot 現(xiàn)在的初始版本包括一個免費(fèi)使用的插件市場,通過直接從目錄中安裝中間件插件來擴(kuò)展 Traefik,當(dāng)然我們也可以很輕松地創(chuàng)建、發(fā)布和安裝自己的插件。
安全和可用性
以前我們要確保 Traefik 的健康、可用和安全,基本上都是通過部署額外的監(jiān)控系統(tǒng)來收集各種指標(biāo),然后通過報警系統(tǒng)來監(jiān)控?,F(xiàn)在 Pilot 就免費(fèi)提供了 Traefik 的安全性和可用性監(jiān)控的功能。
Traefik 注冊后,內(nèi)置的心跳機(jī)制將定期和 Pilot 進(jìn)行檢查,并報告 Traefik 實例的監(jiān)控和可用性情況,此外,Pilot 還將檢查適用于你的 Traefik 安裝和配置的常見漏洞(CVE)。可以在 Pilot 頁面上進(jìn)行報警設(shè)置,可以通過 email 或 webhook 來接收通知。

使用
使用 Traefik Pilot 非常簡單,首先通過頁面 https://pilot.traefik.io ?注冊并登錄 Pilot,然后會得到一個用于注冊 Traefik 實例到 Pilot 的 Token,然后將獲取的 Token 配置到 Traefik 的靜態(tài)配置中,如下所示:

配置成功后,正常我們的 Traefik 實例就會被注冊到 Pilot 頁面上了:

然后我們就可以在插件市場上選擇合適的插件,點(diǎn)擊 Install Plugin:

就會獲得安裝該插件的方法:

要開發(fā)一個自定義的插件可以參考官方的示例倉庫:https://github.com/containous/plugindemo。是不是非常興奮的功能呢?趕緊去試一試吧~
K8S進(jìn)階訓(xùn)練營,點(diǎn)擊下方圖片了解詳情

