簡述 Kong API Gateway Control Plane 與 Data Plane 設置同步機制
我喜歡在文章裡面放張圖,雖然現在 AI 生圖很方便,但還是喜歡放自然一點的,不論是自己拍的或是網路上看到的(from unsplash) 前言 在 Kong API Gateway 的日常維運中,Control plane 與 Data plane 的同步機制是個蠻值得關注的概念。最近在檢視公司架構圖時,我發現到 Control plane 與 Data plane 之間的 policy sync 方向標示為 Data plane 向 Control plane「拉取」最新設置。 簡單畫,公司實際架構圖沒這麼醜 在看到公司架構圖標示 Data plane 會「拉取」設定時,其實我一開始沒有多想,且防火牆確實只開了 Data plane 到 Control plane 的 8005 port。 但後來仔細思考,覺得這種設計有點奇怪——如果是 Data plane 不斷輪詢 Control plane 是否有設定變更,那輪詢頻率要怎麼抓?萬一設定異動很頻繁,會不會造成不必要的流量和效能浪費?而且從系統設計的角度來看,應該是由管理端(Control plane)主動通知執行端(Data plane)有異動才比較合理。這讓我開始思考,究竟同步機制的實際運作方式是什麼? 這些疑問促使我去查官方文件,才發現實際上是 Control plane 主動推送設定(如下圖),和我原本的認知有落差。 Control plane 與 Data plane 先簡單說明一下這兩個東西是什麼。 Kong Gateway 在 hybrid mode 下,有兩個重要的角色,分別為 Controle plane 與 Data plane,其功能分別為: ...