day24 : kong api gateway(上)

到今天为止介绍了不少应用於k8s上的服务,并且大部分都可以透过operator的方式进行同性质的服务的布署,那麽如果同性质的服务想要提供给外部存取就会控管上的问题,因此多了一道api gateway的服务出现了,api gateway提供给外部存取者k8s上服务的service discovery、权限控管、限流等等功能,并且让外部可以透过一个统一入口进入。

有很多种实现api gateway的方法,实际上istio也可以做到大部分的功能,不过今天会以kong api gateway这个专案来实作,kong在实作上主要依赖四个核心项目的定义来运作,分别是upstream、target、service、route,其中有几个名词是对应的像是upstream会对应1到多个target,route则是一对一个service,将需要透过kong进入的服务注册後就可以让kong提供给外部使用了,同时kong做为api gateway的解决方案也提供了相当多的功能如下。
https://ithelp.ithome.com.tw/upload/images/20210924/20139661Jw3VuLQqdM.png

引入api gateway後其实对外的服务最大的优势就是可以透过单一入口,或是某些已经设计过的入口(多组api gateway service)进来,并且由kong plugin去告诉controller每个kong的服务要如何管理流量配置,但是在加入api gateway的架构中会发现入口到底要从原本的istio ingress 还是kong ingress呢?这时可以透过两种方法解决,其一是透过kong 进入然後由istio进行服务的转送,概念会如下图,或是改走kong mesh的做法,由kong所提供的service mesh做内部的服务转送。
https://ithelp.ithome.com.tw/upload/images/20210924/20139661IKdqpSCdQm.png


<<:  30天学会C语言: Day 8-无限执行篇

>>:  C# .Net 使用 ADO.NET 连接资料库

Day12-Webhook 实作(一)LINEBot Channel 申请、SDK 安装

大家好~ 接下来就用 LINEBot 当我们 Webhook 的实作练习吧! Channel 申请 ...

Day 17 ( 中级 ) 立体空间 ( 三度空间 )

立体空间 ( 三度空间 ) 教学原文参考:立体空间 ( 三度空间 ) 这篇文章会介绍,如何在 Scr...

Day 12 MSW实战

MSW实战 今天我们来实战一个msw的使用,首先我们先随意建立一个component,我是建立一个U...

第15章:管理与设定网路介绍(三)

前言 在这一章节中,主要展示如何使用网路管理之指令介面来设定网路介面,即nmcli指令来设定网路介面...

Day 09:递回(2)

上一回我们看到,同样的跨年倒数任务,可以用回圈或递回的方式完成。 用回圈通常可以看到某个变数(例如i...