ASP.NET Core on K8S学习之旅(13)Ocelot API网关接入
本篇已加入《 .NET Core on K8S学习实践系列文章索引 》,可以点击查看更多容器化技术相关系列文章。 上一篇 介绍了Ingress的基本概念和Nginx Ingress的基本配置和使用,考虑到很多团队都在使用Ocelot作为API网关(包括我司)做了很多限流和鉴权的工作,因此本篇介绍一下如何使用Ocelot接入替代Nginx Ingress作为统一入口。 一、准备工作 我们仍然以上一篇的两个ASP.NET Core WebAPI示例作为K8s集群中的后端服务示例,这里我们来快速地准备一个基于Ocelot的API网关服务。 至于怎么创建Ocelot API网关,已经有很多文章介绍了,这里就不再赘述。需要注意的步骤有以下几点: (1)根据Ocelot的版本引入匹配的K8s Provider: 可以看到,这个Provider包是 张队 写的,目前已经支持.NET Core 3.1,最新版本是15.0.6。这里我选择的是13.5.2,因为我的API网关服务还是.NET Core 2.2的版本。 KubeClient是kubernetes 的C#语言客户端简单易用,KubeClient是.NET Core(目标netstandard1.4)的可扩展Kubernetes API客户端, github地址 点击这里