API管理平台Kong 1.0正式版发布,支持gRPC等新功能

开源API管理平台Kong在9月时宣布版本改名并进入1.0版本,而现在发布1.0正式版,除了正式承诺向后兼容支持之外,还加入了许多重要功能,除了服务网格以及新的搬迁框架,还包括支持gRPC以及更新插件开发套件等。

Kong在进入1.0的时候,有两项主要功能更新,包括支持服务网格(Service Mesh)以及新的搬迁框架数据库抽象对象(Database Abstraction Object,DAO)。在1.0中,用户可以将Kong部局为独立的服务网格,通过侧车代理服务器(Sidecar Proxy)提供服务更高的可见性、安全性和弹性,服务网格可以帮助解决微服务所面临的挑战。

新加入的搬迁框架数据库抽象对象可以简化搬迁数据库架构的程序,并且过程完全不需停机,新的数据库抽象对象让用户可以一次升级Kong集群,而不用手动干预升级每个节点。

另外,现在Kong 1.0还支持新的交互TLS(Mutual Transport Layer Security)和TCP。 Kong通过在执行实例之间加入交互TLS,以及修正插件执行循环来支持服务网格,这些更新允许Kong与每一个服务执行实例一同部局,在服务之间传播消息,并且自动扩展服务的规模。 Kong集群会创建一个凭证颁发中心,Kong的节点可以用以互相创建交互TLS。

由于支持新的交互TLS,Kong的核心路由器具有路由原始TCP流量的能力,这代表用户现在可以使用Kong平衡来自邮件服务器和其他基于TCP的应用程序流量。

而且Kong 1.0使用新型的网络架构,分离了数据平面(Data Plane)以及控制平面(Control Plane)。 Kong 1.0允许用户在其他Kong配置中,指定独立的控制和数据平面。过去,用户需要单独配置每个集群的数据和控制平面,而现在用户可以集中的进行修改。分离了数据平面以及控制平面配置,让用户更容易控制大规模部局,而且也让部局更加安全,用户可以利用防火墙保护Kong的配置,并且仅暴露数据平面。

除了REST,Kong 1.0现在还支持基于HTTP/2实例的gRPC协议。支持gRPC让用户低成本与低延迟的链接方式,提供有别于REST的另一种选择,官方提到,gRPC对于要在混合的环境中,激活更多网格部局特别有用。

官方提到,之所以要将这个Kong版本标记为1.0,原因之一就是插件开发工具包。通过插件来扩展Kong功能的设计,一开始就在官方开发团队的发展蓝图中,插件开发工具包帮助开发者安全且容易的构建插件,尽管在0.14版本就已经发布,但1.0的实例更新,提供了插件够高的兼容性。

插件开发工具包是一组Lua函数和变量,让用户可于Kong上实例自己的逻辑,而且比起从头开发差件,插件开发工具包赋给插件标准化、可用性和兼容性。所有Kong插件都需要一套标准功能,而PDK提供开箱即用的功能,不只节省了插件开发人员的时间,又保证编写的插件行为相似易于使用。插件开发工具包提供的开发接口更为友善,且允许用户将诸如日志记录或缓存等插件操作,与其他插件分离。最后一个特点,插件开发工具包具语义版本特性,能保证向后兼容,套件可以被锁定与依赖在特定版本的插件开发工具包。