![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
kong
文章平均质量分 87
Zz罗伯特
厚积薄发,方能一鸣惊人
展开
-
kong笔记——kong的权限认证插件选择参考
kong可提供的权限认证场景Basic auth基本介绍基本认证是一种用来允许Web浏览器或其他客户端程序在请求时提供用户名和口令形式的身份凭证的一种登录验证方式,通常用户名和密码会通过HTTP头传递。在发送之前是以用户名追加一个冒号然后串接上密码,并将得出的结果字符串再用Base64算法编码。eg:提供的用户名是:admin口令是:123456拼接后的结果是:admin:123456,然后再将其用Base64编码的字符串为:YWRtaW46MTIzNDU2最终将Base64编码的字符原创 2022-02-25 16:09:08 · 2652 阅读 · 0 评论 -
Kong插件 consumer设置
前言在Konga管理页面添加插件,第一个字段都是消费者。理论上这里配置的是插件的schema,但是在插件的官方文档中以及源码中,其schema没有消费者id字段,那么这个地方是干什么用的呢?什么时候应该设置?插件需要配置消费者?为什么填写上之后会导致一些插件不生效了?原因查找官方文档admin api中增加插件的文档,描述如下:其实在这里设置消费者的id ,本质上和先创建一个消费者,再给这个消费者绑定插件是一样的,就是把插件附加在这个消费者上使用。基础知识在官方文档中,消费者的概念出现在认证章转载 2022-02-25 16:05:09 · 1372 阅读 · 0 评论 -
kong笔记——使用hmac auth
hmac简述hmac是Hashing for Message Authentication的简写,可以用来保证数据的完整,客户端把内容通过散列/哈希算法算出一个摘要,并把算法和内容以及摘要传送给服务端,服务端按照这个算法也算一遍,和摘要比一下如果一样就认为内容是完整的,如果不一样就认为内容被篡改了。关于Kong的hmac说几点Clock Skew使用Kong的hmac后,请求必须带有Date和x-date请求头,这个是防止重放攻击(Replay Attacks),默认的情况下,客户端传过来的时间和转载 2022-02-25 14:11:09 · 2059 阅读 · 0 评论 -
Kong 集成 Jwt 插件
Kong 集成 Jwt 插件上一篇文章使用 Kong 完成了负载均衡的配置,本文介绍下在此基础上如何集成 jwt 插件来保护内部服务的安全。前置知识点:Jwt 基础概念。推荐阅读:通俗易懂地介绍 Jwt https://blog.leapoahead.com/2015/09/06/understanding-jwt/Jwt 的官网 https://jwt.io/为 Kong 安装 Jwt 插件Kong 官方提供了 Jwt 插件,可以对 某个 service 或者 route 添加 Jwt 认证,我转载 2022-02-22 16:30:08 · 741 阅读 · 0 评论 -
kong的结构和原理
Kong 结构图很多人刚接触 kong 的人,对kong 的结构感到困惑;自己也花了点功夫才搞明白,画了个图,帮助大家理解下;转载 2022-01-24 16:01:53 · 616 阅读 · 0 评论 -
测试用例报告——模板
测试背景为了解 kong-config-ads服务 在并发访问下的性能表现,本次选取了2个接口调用来实施并发性能测试。发现并解决(或规避)系统的性能缺陷,为系统良好运行提供质量保障。测试目的测试系统在并发请求下的性能表现是否满足性能需求。在大并发时有无出错信息产生。考察指标有:并发数、响应时间、RPS、资源状况等。检查系统在高负载压力下是否会出现如:应用异常终止、数据丢失、内存泄露等问题。术语定义术语解释最大并发最大并发操作的虚拟用户数正常返回如设置了检查点,检原创 2022-01-24 15:54:40 · 2337 阅读 · 0 评论 -
kong笔记——kong、nginx性能压测对比
简述kong笔记 目录导航前面介绍了kong的基本使用以及相关原理,那么接下来,我们需要对kong的性能做一个简单的了解。性能压测测试环境机器类别及IP地址硬件配置操作系统软件配置网络环境kong服务1核2G/2核2G/2核4G/4核2G/4核4GAlpine Linux 3.13kong:2.5.0阿里云ack环境测试机CPU:4CPU8G带宽:1M资源组:1台4CPU8G,1台2CPU4GVUM:100wEuler OS系统v1.19.10-r0原创 2022-01-24 15:49:59 · 6114 阅读 · 2 评论 -
kong笔记——自定义插件开发
本文通过一个自定义插件的编写,来了解Kong的插件机制插件功能:原本返回百度首页,在添加插件之后,返回插件自定义的内容;前提使用kong代理百度的接口,配置route路径;了解kong 插件的目录结构及部署(上一篇说到的)实战上一篇我们学到,一个插件必须包含两个文件:handler.luaschema.luahandler.lua主要负责业务逻辑功能编写,schema.lua主要负责插件参数定制,类似将handler.lua中写死的变量抽出来写到schema.lua中,变为动原创 2022-01-13 15:41:01 · 4482 阅读 · 0 评论 -
Kong 插件加载机制源码解析
前言我曾经在前面的文章中系统性的描述了下 Kong 的插件加载机制,这篇我将通过源码解析的方式呈现其数据走向。剔除掉第三方依赖,Kong 的核心代码结构如下:kong/├── api/├── cluster_events/├── cmd/├── core/├── dao/├── plugins/├── templates/├── tools/├── vendor/│├── cache.lua├── cluster_events.lua├── conf_loader.lua├─转载 2022-01-12 11:29:49 · 1223 阅读 · 0 评论 -
kong笔记 目录导航
官方文档官方网站:https://konghq.com官方文档:https://docs.konghq.com项目地址:https://github.com/Kong/kong中文文档:https://github.com/wanglongsxr/kong-docs-cn 基于1.1.x版本认识篇kong笔记——认识kong环境篇kong笔记——kong/konga的搭建使用篇kong笔记——Service、Route路由功能高级篇kong笔记——自定义 n原创 2022-01-12 11:24:02 · 1758 阅读 · 0 评论 -
Kong 源码分析
本文最初于 2020 年 9 月在公司内部发表,现整理并增加部分批注公开发布。最开始加入公司 Infrastructure 团队时,迷茫的我接到的的一个任务就是学习 Lua 和 OpenResty,当时收到了两本书籍的 PDF 文件,要求尽快理解学习,能够掌握 Kong,并且具有研发能力。当时我还没有怎么接触开源社区,能力只停留在 Git Clone,大概花了 2 周时间,我学习 Lua 基本语法后,开始阅读 Kong 项目的源码,并找到几个切入点梳理了源码分析文档,也应该正是这个成果让组长认同了我,这转载 2022-01-12 11:21:24 · 1992 阅读 · 0 评论 -
kong笔记——自定义插件 目录及部署
简述本文目标:了解kong插件的基本信息手动部署自定义插件目录结构基本插件模块两个必须的文件:simple-plugin├── handler.lua└── schema.lua高级插件的模块:除了handler.lua、schema.lua外,还包含:complete-plugin├── api.lua├── daos.lua├── handler.lua├── migrations│ ├── cassandra.lua│ └── postgres.lua原创 2021-10-08 11:13:50 · 2165 阅读 · 1 评论 -
kong笔记——使用oauth2插件
Kong API网关是目前市面上最受欢迎的API网关之一。我在之前的文章中简略介绍过如何使用Traefik来部署Kong和Konga。今天这篇博文是应B站网友的留言,给大家讲讲 Kong Oauth2插件的使用。网络上有太多的文章讲解Oauth2的原理,我的文章风格还是以实际操作为主,尽量把每一步都呈现出来让大家可以照着做,今天的这一片也是如此。阅读本文前提:一个安装好的使用数据库的Kong。Oauth2插件不支持Hybrid和DBless模式。可以使用Kong Admin API,我的范例中Ad转载 2021-09-28 19:14:32 · 1756 阅读 · 3 评论 -
kong笔记——自定义 nginx模板/日志格式
简述自定义nginx模板官方文档至于为什么要单拉出来来讲这个模块,以及这个模块的作用,目标是什么,理由如下:场景:开发者对nginx的性能调优 或者 一些自定义的nginx功能。目标:使用kong完全替代nginx代理。需求程度:注入kong已集成的nginx参数;注入nginx指令包含的文件;自定义nginx模板;准备工作:可运行的kong、konga环境实战场景:自定义kong的日志格式kong已集成的nginx参数场景:设置单个nginx命令(ko原创 2021-09-26 10:33:00 · 1196 阅读 · 0 评论 -
kong笔记——Service、Route路由功能
在上两篇文章,我们主要介绍了kong的概念以及kong的部署,相信大家对kong已经有了基本认识,那么我们该如何使用它呢?定义service服务就是我们自己定义的上游服务,通过Kong匹配到相应的请求要转发的地方, Service 可以与下面的Route进行关联,一个Service可以有很多Route,匹配到的Route就会转发到Service中, 当然中间也会通过Plugin的处理,增加或者减少一些相应的Header或者其他信息。可以理解为nginx 配置文件中serverroute路由原创 2021-09-22 10:13:45 · 5984 阅读 · 3 评论 -
kong笔记——kong/konga的搭建
经过上篇的介绍,大家可能对kong有一个简单的了解,如果不了解的同学,可以看看这篇kong笔记——认识kong(一)本篇及以后的此系列文章皆为实战篇版本介绍(重点,重点,一定要观察版本,防止不兼容情况!!):kong 2.5.0konga 0.14.9pgsql 9.6linux centos 7简述对于kong的搭建,官网提供的方式有很多,感兴趣的自己可以看看:[kong官方文档](Install Kong Gateway (Enterprise) - v2.5.x | Kong D原创 2021-09-19 17:46:03 · 6642 阅读 · 4 评论 -
kong笔记——认识kong
背景最近公司打算重构API网关,给定的硬性条件是支持lua脚本,kubernetes可部署,可解析lua,另外需要支持身份认证,IP黑白名单,限流,负载均衡等一些功能,为此,在技术选型上锁定了kong以及APISIX,最终选择了kong。(原因:稳定性第一,性能第二,拓展性第三,社区未来发展第四)为什么选择kong其实抛开lua的支持,kong的一些功能点还是很吸引我的,比如天生支持API网关的基本特性(权限控制,安全,负载均衡,请求分发,监控等等),即开箱即用。如果我们选择了zuul,当需要为应原创 2021-07-14 17:44:47 · 1940 阅读 · 2 评论