kong/konga使用

kong

基本特征

Cloud-Native:与平台无关,Kong可以从裸机运行到Kubernetes。
动态负载平衡:在多个上游服务之间平衡流量。
基于哈希的负载平衡:具有一致的哈希/粘性会话的负载平衡。
断路器:智能跟踪不健康的上游服务。
运行状况检查:主动和被动监视上游服务。
服务发现:在第三方DNS解析器(例如Consul)中解析SRV记录。
无服务器:直接从Kong调用和保护AWS Lambda或OpenWhisk功能。
WebSockets:通过WebSockets与您的上游服务进行通信。
gRPC:与gRPC服务进行通信,并通过日志记录和可观察性插件观察流量
OAuth2.0:轻松将OAuth2.0身份验证添加到您的API。
日志记录:通过HTTP,TCP,UDP或磁盘记录对系统的请求和响应。
安全性:ACL,僵尸程序检测,白名单/黑名单IP等。
Syslog:登录到系统日志。
SSL:为基础服务或API设置特定的SSL证书。
监视:实时监视提供关键的负载和性能服务器指标。
转发代理:使Kong连接到透明的中介HTTP代理。
认证:HMAC,JWT,Basic等。
速率限制:基于许多变量的阻止和限制请求。
转换:添加,删除或处理HTTP请求和响应。
缓存:在代理层缓存并提供响应。
CLI:从命令行控制Kong群集。
REST API:Kong可以使用其RESTful API进行操作,以实现最大的灵活性。
地理复制:跨不同区域的配置始终是最新的。
故障检测和恢复:如果您的Cassandra节点之一发生故障,则 Kong不会受到影响。
群集:所有Kong节点自动加入群集,并在各个节点之间更新其配置。
可伸缩性:Kong本质上分布,只需添加节点即可水平扩展。
性能:Kong通过扩展和使用NGINX作为核心轻松处理负载。
插件:可扩展的体系结构,用于向Kong和API添加功能。

系统架构

image.png

kong依赖数据库,一般使用postgres,默认端口为
接受客户端流程端口

  • 8000:http
  • 8443:https

Admin Api端口:

  • 8001:http
  • 8444:https
    kong的配置信息都是通过API接口控制
    信息获取使用: GET
    创建:POST
    更新:PATCH
    删除:DELETE

功能api使用

route: client请求入口
server: 后端服务的抽象层,维护route与upstream之间的映射关系,
upstream: 托管后端服务器
plugin: 作用整个流量代理周期

服务

kong:8001/services
官网文档

新增

/services

curl -i -X POST http://10.10.203.230:8001/services/ \
-d 'name=jintest' \
-d 'url=http://jintest-server:8000'

删除

curl -i -X DELETE http://10.10.203.230:8001/services/jintest

路由

通过paths,mathods,hosts来匹配客户请求。

新增

curl -i -X POST http://10.10.203.230:8001/services/jintest/routes \
-d 'hosts[]=10.10.203.230' \
-d 'paths[]=/webtest&paths[]=/webtest/' \
-d 'preserve_host=true'
-d 'strip_path=false'
-d 'service.id=86df56be-3a9e-4df2-bba0-5a616aa8cd3d'
重要变量说明
url

相当于protocol, host, port and path的组合,一个快捷命令
该指令相当于proxy_pass http://jintest-server

strip_path

值:false,true 默认true
是否把匹配成功的paths删除后在转发后端服务器.
该指令相当于proxy_pass http://jintest-server/

preserve_host

值:false,true 默认false
转发后端是否带host参数,默认不带。
该指令相当于proxy_set_header Host $host;

更新

curl -X PATCH -i http://10.10.203.230:8001/routes/403dcc8b-2941-494a-a8c7-f8a5e7cd083c \
-d 'id=403dcc8b-2941-494a-a8c7-f8a5e7cd083c' \
-d 'strip_path=false' \
-d 'preserve_host=true'

删除

curl -X DELETE -i http://10.10.203.230:8001/routes/403dcc8b-2941-494a-a8c7-f8a5e7cd083c

upstream/garget

新增

新增upstream
curl -i -X POST http://10.10.203.230:8001/upstreams \
-d 'name=jintest-server'
新增garget
curl -i -X POST http://10.10.203.230:8001/upstreams/jintest-server/targets \
-d 'target=10.10.203.169:32574'

删除

通过DELETE方法,请求API

删除upstram

curl -i -X DELETE http://10.10.203.230:8001/upstreams/jintest123

删除garget

garget没有更新,只有新增/删除,设置weight=0就是删除。

curl -i -X POST http://10.10.203.230:8001/upstreams/jintest123/targets \
-d 'target=10.10.203.169:32574' \
-d 'weight=0'

konga

一款开源的kong UI程序

常用功能

添加kong服务地址

image.png

服务

image.png

路由

image.png

upstream

image.png

garget

image.png

更新

通过调整garget后端服务的weight来控制请求量的比例

蓝绿部署

image.png

金丝雀部署

网上案例文章

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,214评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,307评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,543评论 0 341
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,221评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,224评论 5 371
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,007评论 1 284
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,313评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,956评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,441评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,925评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,018评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,685评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,234评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,240评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,464评论 1 261
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,467评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,762评论 2 345

推荐阅读更多精彩内容

  • API网关,即API Gateway,是大型分布式系统中,为了保护内部服务而设计的一道屏障,可以提供高性能、高可用...
    Aolus阅读 3,025评论 0 1
  • 简介 在这篇文档中,我们会通过详细介绍Kong的路由功能和内部工作原理来涵盖其代理功能,Kong通过两个配置项对外...
    fossilman阅读 5,107评论 0 1
  • 1. 需求分析 ​ 无论是单体应用,SOA和微服务框架下,网关的存在是很必要。网关作为一个内网开发的入口。一些...
    haishuiaa阅读 4,457评论 2 3
  • kong简介 Kong 是在客户端和(微)服务间转发API通信的API网关,通过插件扩展功能。Kong 有两个主要...
    pingforever阅读 11,559评论 0 10
  • 你还很年轻,将来你还会遇上很多人,经历很多事,得到很多,也会失去很多,但无论如何,有两样东西你不能丢弃,一个叫良心...
    难熬的不是狂风阅读 991评论 2 5