Kong 網(wǎng)關(guān)是 Kong Konnect API 管理平臺(tái)的核心組件,因其高性能和可擴(kuò)展性而廣受歡迎。它提供了代理、路由、負(fù)載均衡、健康檢查、身份驗(yàn)證等功能,成為微服務(wù)和傳統(tǒng) API 流量管理的核心工具。
Kong Gateway 的一大優(yōu)勢在于其可擴(kuò)展性。通過插件機(jī)制,網(wǎng)關(guān)能夠卸載后端服務(wù)的復(fù)雜處理任務(wù),讓后端專注于業(yè)務(wù)邏輯,從而加速開發(fā)流程。以下是一些常用插件:
Kong Gateway 原生支持混合部署,能夠在多個(gè)平臺(tái)(如 Linux、Docker、Kubernetes)上運(yùn)行并保護(hù)工作負(fù)載。這種部署方式尤其適用于云遷移和現(xiàn)代化應(yīng)用場景。
下圖展示了典型的 Kong Gateway 混合部署架構(gòu):

在混合部署中,控制平面(CP)負(fù)責(zé)管理任務(wù),而數(shù)據(jù)平面(DP)則專注于 API 消費(fèi)者的請(qǐng)求處理。兩者運(yùn)行在完全獨(dú)立的環(huán)境中,這種分離設(shè)計(jì)增強(qiáng)了數(shù)據(jù)平面的彈性和吞吐量支持。
Kong 提供兩種控制平面選項(xiàng):Kong Konnect SaaS 和自托管控制平面。無論數(shù)據(jù)平面運(yùn)行于何處,都需要與控制平面保持連接。
為了展示 Kong Konnect 的能力,我們將通過 Amazon MSK(托管 Kafka 服務(wù))創(chuàng)建一個(gè)簡單的事件流平臺(tái),并結(jié)合 Kong 數(shù)據(jù)平面實(shí)現(xiàn)暴露與保護(hù)。
以下是部署架構(gòu)示意圖:
以下是創(chuàng)建 MSK 集群的主要步驟:
創(chuàng)建一個(gè)名為 cluster_config.txt 的文件并添加以下內(nèi)容:
auto.create.topics.enable=true
delete.topic.enable=true
log.retention.hours=8
使用以下命令推送配置:
aws kafka create-configuration --region us-east-2 --name "kong-msk" --kafka-versions "3.3.2" --server-properties fileb://cluster_config.txt
完成集群配置后,可以通過 Kafka CLI 工具測試連接。以下是一些常見測試:
kafka-topics.sh 列出主題。client_ssl.properties 文件后,使用 TLS/SSL 端點(diǎn)測試。在 MSK 集群準(zhǔn)備就緒后,我們將部署 Kong 數(shù)據(jù)平面。以下是主要步驟:
eksctl 創(chuàng)建 Amazon EKS 集群。在 Kong 數(shù)據(jù)平面中,我們通過 Kafka Upstream 插件實(shí)現(xiàn)與 MSK 集群的集成。以下是插件的關(guān)鍵配置:
配置完成后,插件將啟用并開始工作。
配置完成后,可以通過以下方式驗(yàn)證事件流處理的效果:
本文展示了如何利用 Kong Konnect 和 Amazon MSK 實(shí)現(xiàn)事件流平臺(tái)的 API 管理與保護(hù)。通過 Kong Gateway 的強(qiáng)大功能,企業(yè)可以輕松構(gòu)建高效、安全的事件流處理架構(gòu),從而提升服務(wù)連接平臺(tái)的可用性和智能化水平。
原文鏈接: https://konghq.com/blog/engineering/api-managed-event-streaming