用Kong构建混合环境下的服务网络介绍

上传人:I*** 文档编号:157511465 上传时间:2020-12-24 格式:PPTX 页数:18 大小:724.84KB
返回 下载 相关 举报
用Kong构建混合环境下的服务网络介绍_第1页
第1页 / 共18页
用Kong构建混合环境下的服务网络介绍_第2页
第2页 / 共18页
用Kong构建混合环境下的服务网络介绍_第3页
第3页 / 共18页
用Kong构建混合环境下的服务网络介绍_第4页
第4页 / 共18页
用Kong构建混合环境下的服务网络介绍_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《用Kong构建混合环境下的服务网络介绍》由会员分享,可在线阅读,更多相关《用Kong构建混合环境下的服务网络介绍(18页珍藏版)》请在金锄头文库上搜索。

1、技术创新,变革未来用Kong构建混合环境下的服务网络,目录,分布式环境与服务网络 KongNginx家族小伙伴 基础的基础LBaaS 南北向与东西向流量 数据平面:sidecar与代理 控制平面:多租户、配置和缓存 部署环境:物理机、云、虚拟化、容器 跨微服务平台 监控与服务质量,引言 随着微服务架构的流行,服务之间流量的管理变成了新的问题和 话题。为了解决这类问题,以Istio为代表的开源软件提出了 service mesh的概念,第一次把这个领域的问题、功能、解决办 法做了汇总,完成了这个领域概念的标准化和体系化的工作。目 前大多数的service mesh解决的问题都是依赖或者绑定到微服

2、务 平台和框架上(比如Istio构建在K8s之上)。但是现实当中,使用 环境往往是复杂的,尤其是企业环境,一般都包含多个版本、多 种微服务平台(比如K8s,Dubbo,Spring Cloud等);同时部 署环境也涵盖了公有云、虚拟机、物理机、容器等;在地域上也 有着跨数据中心的需求。一起了解如何基于Kong来解决这些问题。,分布式环境与服务网络,问题: 开通全链路访问是一个繁琐、容易出错的过程 访问规则的管理复杂、冗余、过期配置大量存在 防火墙无法有效实现应用层访问控制 缺乏应用层的统一视图 跨集群的服务间依赖关系管理复杂,现状: 分布式从一种架构选择,变成一种客观存在 多平台:Spring

3、,Dubbo,K8S 多堆栈:Java,Node.js,PHP,Python 多中心:两地三中心 传统系统: Core Banking、ESB、CRM、ERP,“随着Service Mesh概念的提出和实践,分布式架构从 “功能导向”向“服务质量导向”演化。”,化繁为简,分而治之,数据中心-1,数据中心-2,统一数据中心的入口 统一数据中心的出口 统一集群的入口 统一集群的出口,应用层解决,框架层解决,协议层解决,更通用,更兼容,KongNginx家族小伙伴,春哥 Nginx家族: Nginx - OpenResty - Kong Lua开发,插件体系 采用数据库维护配置一致 高效、高速、高稳

4、定 GitHub 20K+ star,Marco,Kong,认证,授权,速控,流控,Nginx,Lua,DAO,Cache,软负载即服务,优良的LB是流量管理的基础 高吞吐、高可靠 扩容水平扩展 便捷的部署,REST 接口,基础设施可编程 配置同步,功能可扩展,Route/插件,Route/插件,Route/插件,Route/插件,协议转换,服务/插件,分支/插件,分支/插件,服务实例,服务实例,服务实例,服务实例,Tips: HTTP为REQ/RES提供了标准模型,与已有体系集成监控、日志、跟踪 充分利用HTTP Keep-Alive,根据网络条件使用HTTP短连接,南北流量: Ingres

5、s Egress,南北向和东西向流量,东西流量: 服务调用 条件路由 全局路由,服务管理:断路保护: 注册熔断 发现降级 发布(蓝绿/滚动)限速,Eureka Spring Cloud,ZK Dubbo,etcd K8s,DNS 传统应用,统一配置/网关级联,Tips: 通过请求信息匹配规则 匹配和规则区分开 复用东西/南北通用规则,Sidecar(istio): 两次代理 Iptables拦截,数据平面:Sidecar与代理,代理: HTTP Socks5,MS-A,MS-B,Envoy,Envoy,Mixer (Policy/Rule),容器? Linux?,物理机/容器/虚拟机 Linu

6、x/Windows,MS-A,MS-B,Kong/HTTP (Policy/Rule),BC/Socks5 (Policy/Rule),减少一次代理 配置同步更简单 无需iptables,Tips: 环境变量可以设置代理 Socks5支持域名和认证,控制平面:多租户、配置和缓存,Spring,Dubbo,K8s,Legacy,etcd,DNS,Eureka,Zookeeper,GUI,REST,CLI,Bot,DB,可视化 Grafana BI Tools,监控 Prometheus Zabbix,跟踪 Zipkin* SkyWalking,门户 Drupal Liferay,GW,GW,GW

7、,GW,控制平面,全局化配置:不再“铁路警察各管一段” 多租户与自服务:尽量授权给服务维护者 做配置变更 自动化:从服务配置中心获取配置 可视化:操作可视化,结果可视化 流程:加入必要的审批和review 版本化:配置的回溯能力 Tips: 配置用数据库 执行时用缓存 统一建模,部署方式: yum install ; systemctl start docker run kubectl -f ansible-playbook ,部署环境:物理机、云、虚拟化、容器,好处: 兼容既有的知识体系 配置不需要变成一门新的“语言” No *over* configuration 一致的方式,Tips:

8、Ansible具有很好的跨平台能力 脚本化、版本化、留日志,跨微服务平台:Spring,Dubbo,K8s,问题: 不同的配置中心,信息一致化的管理 私有网络内的互通,网络之间的互通 跨集群的访问控制 协议与数据格式 Tips: 全局规划内部域名 用域名,但是不用域名服务器 微服务注册信息-路由规则,Eureka,DNS,注册,/,发现,/,路由,统一模型,监控与服务质量,TIPS: Metrics的推拉结合处理 分层采集、分层处理 微缩的“边缘计算”,核心: 服务质量是*目的* 度量、监控、治理 微管理与宏观管理结合 海量指标、实时监控,MS-A,MS-B,网关采集与处理:实时/一次计算/生

9、成事件,Prometheus/时序数据库/告警,展示(Grafana/BI),QoS,规则配置,整体拓扑,服务集群,服务集群,服务集群,服务集群,网关 Kong + BC,网关 Kong + BC,网关 Kong + BC,网关 Kong + BC,统一调度/规则管理/集群间路由 Metrics汇总/事件管理,UI (REST / CLI / Portal),组件: Kong:HTTP流量管理 BC-PX:非HTTP流量管理 BC-MON:实时监控 BC:统一调度 BC-BOT:自动化配置 Prometheus:汇总监控 Grafana / BI:展示 Liferay / Drupal:门户

10、PostgreSQL:All-in-one DataStore,BC-* 应用流量管理套件,BC-*,Socks5 Server,Socks5 Client,Metrics实时计算,注册中心调度,C+,Lua/Node.js,RestQL,Cache,Kong Portal插件,全局调度器,$java Dhttp.proxyHost $java DsocksProxyHost $bc-px java ,安全Sec First,应用层安全的采集和实施点 全链路加密(如果需要) 字段加解密(如果需要) 每段链路的身份验证(如果需要) 每段链路的访问控制(如果需要) 安全事件识别与告警(暴力破解、薅

11、羊毛) 基于审批的工作流,性能 HTTP Keep-Alive:长连接有效保障了网关间数据传输效率 Socks5:多一次建立连接操作;连接建立后,性能无损耗 流式的格式转换 策略、路由和配置信息在网关内存缓存 无阻塞操作 非控制操作采用旁路处理 可以基于域名路由,但是不做域名解析,扩展与扩容,扩展: C+扩展模块 协议适配、编解码、格式 Lua脚本code snippet Node.js扩展API Directus Node.js呈现 Gatsby 监控集成 Prometheus Tracing集成 zipkin , jeager, skywalking Portal集成 Liferay, Drupal IDM集成 扩容: Ansible, 加节点,加集群,控制平面 Node.js,BC-Proxy C+/Lua,Kong Lua,UI层 Node.js、Portal插件、REST API,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > IT计算机/网络 > 云计算/并行计算

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号