第4章 Kong 的基本功能
路由转发,负载均衡,灰度发布,蓝绿部署,正则路由,https跳转,混合模式,tcp流代理。
4.1 路由转发
创建一个名为 helloworld 的路由转发服务,效果是请求到 example.com,会打开 helloworld.com。
4.1.1 配置服务
curl -i -X POST --url http://localhost:8001/services/ --data 'name=example-service' --data 'url=http://helloworld.com'
4.1.2 配置路由
curl -i -X POST --url http://localhost:8001/services/example-service/routes --data 'hosts[]=example.com'
4.1.3 测试转发请求
curl -i -X GET --url http://localhost --header 'Host:example.com'
4.2 负载均衡
4.2.1 案例准备
4.2.2 配置服务
4.2.3 配置路由
4.2.4 配置上游
4.2.5 添加目标节点
4.2.6 验证结果
4.3 灰度发布
灰度发布是介于黑与白之间,能够平滑过渡的一种发布方式,灰度发布又称金丝雀。
灰度发布是指在生产环境中划分出一部分节点作为灰度节点,当准备上新版本的时候,先把这些灰度节点部署至灰度环境,并且切换一部分流量过来,以测试
新版本的功能,性能和稳定性。经过以上流程,如果有问题,就可以尽早发现,及时解决。当灰度环境的版本没有问题时,再将所有旧版本都更新为新版本。
4.4 蓝绿部署
蓝绿部署是一种可预测的方式发布服务的技术,其目的是减少发布过程中服务停止的时间。对于当前生产环境来说,v1版本的微服务为绿色,再部署的新版本(v2)
为蓝色,测试时,先将流量全部切换到蓝色环境v2,如果测试没有问题,就直接使用蓝色环境v2;如果测试出了问题,则可以通过负载均衡器快速回滚切换到绿色环境v1。
4.5 正则路由
4.6 HTTPS 跳转
4.7 混合模式
混合模式不仅可以应用于公有云,私有云,还可以应用于混合云,它允许一部分kong节点以控制平面的角色运行,而另外一部分以数据平面的角色运行。控制平面
主要用于管理,注册整个服务网格的配置,数据平面主要用于代理网络流量。控制平面节点会将最新的配置信息实时传递给数据平面节点,数据平面节点运行时所需的
数据全部缓存在内存中,并且本地磁盘上持久保存着配置的副本,以保持高性能访问或在控制平面节点出现问题的情况下,数据平面节点也可以正常运行。
控制平面与数据平面的通信采用 websocket 长连接的全双工双向通信机制,实时且无延时的发送或接收数据,以此来达到控制整个服务网格的目的。
最上方的控制平面节点kong将会管控整个集群范围内所有的数据平面节点,通过下发指令并推送给所有数据平面节点来控制其流量和行为,所有微服务之间通过
数据平面节点进行通信。
4.7.1 案例准备
4.7.2 部署网格集群
4.7.3 验证网格集群
4.7.4 配置路由及限速
4.7.5 验证
4.8 TCP 流代理
4.Kong入门与实战 基于Nginx和OpenResty的云原生微服务网关 --- Kong 的基本功能
最新推荐文章于 2022-07-28 17:06:31 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)