03-基于Apache APISIX的全流量API网关-温铭
APACHE APISIX的全流量API网关 温铭, 来自一家在远程工作方式下商业化开源项目的创业公司(支流科技), 担任CEO&联合创始人, Apache 顶级项目APISIX的PMC主席, Skywalking开源项目的贡献者(commiter)。在创业之前, 在360做企业安全, 360开源委员会的发起人, 腾讯的TVP, TARS基金会的TOC成员, 在安全领域有四十多个专利, 最近三年全 毫秒 • 运维友好:Prometheus, SkyWalking,流量复制,故障注入等 技术架构 Apache APISIX 能做什么? • 处理 L4、L7 层流量:HTTP、HTTPS、TCP、UDP、MQTT、Dubbo、gRPC… • 替代 Nginx 处理南北向流量 • 替代 Envoy 处理服务间东西向流量 • k8s ingress controller • 借助 MQTT 性能(单核,开启两个限流和 prometheus插件) 18000 1700 支持流量量复制和故障 是 否 注⼊ 是 否 支持SkyWalking 是 否 插件热更新 新增、删除、更新插件不用 重载服务 无, 每次都需要重载 服务 二次开发 难度低 难度中等 本地技术支持 有, 1小时响应 无 定期巡检和培训 有 无 基于 Apache APISIX 的全流量网关 Nginx 遇到的挑战 • 社区不活跃:没有 github0 码力 | 11 页 | 6.56 MB | 6 月前3金卫-Apache APISIX 借助 Service Mesh 实现统一技术栈的全流量管理
Apache APISIX借助ServiceMesh 实现统一技术栈的全流量管理 金卫(API7 解决方案架构师) • 支流科技 - 解决方案架构师 • Apache APISIX PMC • Apache APISIX Ingress Controller Founder • Apache skywalking committer • Github: https://github.com/gxthrj 将通用能力下沉 应用专注于业务逻辑 注册发现 流量管理 可观测性 安全防护 服务网格的痛点 方案众多,各有缺陷 与基础设施整合成本高 性能损耗 资源的额外消耗 扩展难度高 理想的服务网格应该是什么样? 易于扩展 理想的服务网格 业务无感知 落地成本低 动态且增量配置 安全管控 可观测 流量精细化管理 跨集群部署 性能损耗低 资源消耗低 按需下发配置 com/api7/amesh 下一个版本发布时间 12 月 未来展望 概览 APISIX Ingress处理南北向入口流量 APISIX Service Mesh处理东西向流量 APISIX专用插件配置等通过Amesh 下发 APISIX 全流量代理的价值 节约成本 统一技术栈 统一管理 复用技术经验 未来 结合APISIX xRPC实现 原生异构多协议支持0 码力 | 34 页 | 3.50 MB | 6 月前3API7 ⽹关技术⽩⽪书
API⽹关作为微服务架构中重要组件,是流量的核⼼出⼊⼝,⽤于统⼀处理和业务相关的请求,可有 效解决海量请求、恶意访问等问题,以保障业务安全性与稳定性。 图1-1API7架构图 上图为API7产品中控制平⾯(简称CP)与数据平⾯(简称DP)的架构⽰意图,并包含了3个部分: API⽹关 1. ⽤于承载并处理业务流量,管理员在配置路由规则后,⽹关将根据预设规则将请求转发⾄上游服务。 求转发⾄上游服务。 此外,借助API7内置的50多种插件,可实现⾝份验证、安全防护、流量控制、分析监控、请求/响应 转换等常⻅业务需求;若内置插件⽆法满⾜需求,我们也⽀持使⽤Lua、Java、Go、Python语⾔⾃ 定义插件,可作⽤于请求进⼊、上游响应各个阶段。 ManagerAPI 2. ⽤于管理API⽹关,通过访问其暴露的RESTfulAPI接⼝以实现对路由、上游、证书、全局插件、消 控制⾯板 3. 为了简化⽹关管理,管理员可以通过Dashboard控制⾯板以可视化形式操作⽹关,⽀持监控分析、⽇ 志审计、多租⼾管理、多集群切换、多⼯作分区等能⼒。 1.1技术架构 数据平⾯ 1. 数据平⾯⽤于接收并处理调⽤⽅请求,使⽤Lua与Nginx动态控制请求流量。当请求进⼊时,将根据 预设路由规则进⾏匹配,匹配到的请求将被⽹关转发⾄对应上游服务。在此过程中,⽹关有能⼒根据0 码力 | 19 页 | 1.12 MB | 1 年前3Apache APISIX 在安信 PaaS 平台的应用
04 下一步 CONTENT 网关选型 需求、场景与匹配度 01 安信技术平台演进 O U R B E G I N N I N G S 技术平台室成立 服务化平台建设(脚手架、 链路、监控、配置中心) 容器云建设 DevOps平台建设 2 0 1 9 2 0 2 0 容器云、服务化平台与 Devops推广,覆盖全部自研 系统 O U R B E G I N N I N upms IAM skywalking prometheus kafka-logger ... APISIX在安信PaaS平台的应用 1、路由转发 2、认证 3、鉴权 4、链路 5、监控 6、日志 CAS 与 casbin 2、用户状态支持本地存储 3、用户状态支持redis存储 4、casbin 兼容 RBAC with domain 1、认证鉴权功能从业务代码剥离 APISIX helm模板 APISIX 插件模板 APISIX upstream&API 应用模板 应用发布 安信PaaS平台如何管理APISIX 版本、节点数、资源、配置文件 链路、监控、日志、认证、流控 APISIX 告警模板 对接内部告警平台 初始化 upstream 和 API service1 service2 service3 service1/* service2/*0 码力 | 14 页 | 621.17 KB | 1 年前3有了 NGINX 和 Kong,为什么还需要 Apache APISIX-王院生
州 站 APISIX:全流量数据⾯ • LB: APISIX • 南北 API ⽹关:APISIX • K8s ingress:APISIX Ingress • Java ⽹关:Java plugin runner • 服务⽹格 Sidecar:APISIX Mesh 云 原 ⽣ 社 区 M e e t u p 第 四 期 · ⼴ 州 站 APISIX:全流量数据⾯ • 统⼀数据⾯基础设施 统⼀数据⾯基础设施 • 降低开发成本 • 运维成本 • 监控、告警等周边设施⽆缝共 享 云 原 ⽣ 社 区 M e e t u p 第 四 期 · ⼴ 州 站 Q&A yuansheng@api7.ai 王院⽣0 码力 | 34 页 | 25.78 MB | 6 月前3APISEVEN 和Kong EE 的性能评测
发展速度。 API管理解决⽅案不能成为性能瓶颈。许多公司都在寻找跨多个API端点的负载均衡和⾼交易量吞吐的 解决⽅案。如果业务每秒有1000个交易,⼀个⽉内就会有30亿次API调⽤。拥有⼤流量的公司通常每 ⽉API调⽤次数超过100亿次。因此,在选择API管理解决⽅案时,性能是⼀个关键因素。 在本⽂中,我们展⽰了使⽤2个全⽣命周期API管理平台完成的性能测试结果:API7和Kong企业版 ⽀流科技有限公司维护。ApacheAPISIX是⼀个动 态、实时、⾼性能的API⽹关。APISIX提供丰富的流量管理功能,如负载平衡、动态上游、灰度发 布、熔断、认证、可观测等。你可以使⽤ApacheAPISIX来处理传统的南北流量,以及服务之间的东 西向流量。它也可以作为⼀个k8singresscontroller。 API7是APISIX的企业版,其功能包括 件公司,拥有API⽹关、k8s⼊⼝控制器和服务⽹格等微服务和实时流量处理的产品和解决⽅案。我们 致⼒于为全球企业管理和可视化业务关键流量,如API和微服务,通过⼤数据和⼈⼯智能(AI)加速 业务决策并推动数字化转型。 API7的底层是APISIX,它是由深圳⽀流科技捐赠给Apache软件基⾦会的。它是新⼀代的云原⽣API⽹ 关,提供丰富的流量管理功能,如负载均衡、动态上游、灰度发布、服务熔断、⾝份验证、可观察性0 码力 | 14 页 | 1.11 MB | 1 年前3从Apache APISIX 来看API 网关的演进
• 动态上游、动态路由、插件热加载 快速的成长 • 6 月 6 号开源 • 7 月被纳入 CNCF 全景图 • 8 月首家付费央企 • 9 月贝壳找房上生成环境,每日处理近 3 亿流量 • 10 月进入 Apache 孵化器,国内唯一由初创公司贡献的项目 • 11 月全面支持 ARM64 平台,并推出 apisix-ingress-controller • 12 月:即将推出新一代微服务架构方案 能做什么? • 处理 L4、L7 层流量:HTTP、HTTPS、TCP、UDP、MQTT、Dubbo、gRPC… • 替代 Nginx 处理南北向流量 • 替代 Envoy 处理服务间东西向流量 • k8s ingress controller • 借助 MQTT 插件作为 IoT 网关 • 借助 IdP 插件成为零信任网关 愿景:快速处理所有业务流量 微服务的演进史 1. 从单体到微服务 • Service Mesh 想做为基础设施下沉 • Istio + Envoy:控制面和数据面 Service Mesh 不是银弹 • 每个微服务都要带 sidecar • 多次的流量转发,不适合对性能要求高的场景 • 不如 Nginx 稳定 下一代微服务会是怎样? • 分久必合,抛弃 sidecar • 走向中心节点或者集群的模式 • 也就是下一代网关:全动态、全协议支持、高性能、云原生友好0 码力 | 24 页 | 1.36 MB | 1 年前3基于 Apache APISIX 的下一代微服务架构 -- 从 0 到 1:APISIX 的 Apache 之路
• 动态上游、动态路由、插件热加载 快速的成长 • 6 月 6 号开源 • 7 月被纳入 CNCF 全景图 • 8 月首家付费央企 • 9 月贝壳找房上生成环境,每日处理近 3 亿流量 • 10 月进入 Apache 孵化器,国内唯一由初创公司贡献的项目 • 11 月全面支持 ARM64 平台,并推出 apisix-ingress-controller • 12 月:即将推出新一代微服务架构方案 能做什么? • 处理 L4、L7 层流量:HTTP、HTTPS、TCP、UDP、MQTT、Dubbo、gRPC… • 替代 Nginx 处理南北向流量 • 替代 Envoy 处理服务间东西向流量 • k8s ingress controller • 借助 MQTT 插件作为 IoT 网关 • 借助 IdP 插件成为零信任网关 愿景:快速处理所有业务流量 微服务的演进史 1. 从单体到微服务 • Service Mesh 想做为基础设施下沉 • Istio + Envoy:控制面和数据面 Service Mesh 不是银弹 • 每个微服务都要带 sidecar • 多次的流量转发,不适合对性能要求高的场景 • 不如 Nginx 稳定 下一代微服务会是怎样? • 分久必合,抛弃 sidecar • 走向中心节点或者集群的模式 • 也就是下一代网关:全动态、全协议支持、高性能、云原生友好0 码力 | 33 页 | 1.55 MB | 1 年前3Apache APISIX Roadmap
CTO What we did in APISIX V2 02 • 丰富插件 • 70+ 生态丰富 • 开箱即用 • 生态丰富 • 全平台支持 • 裸金属、虚拟、容器、K8s • 全流量 • 开发者友好 • 多语言 Runner • Wasm 插件 • 全球最活跃 API 网关 • 每月一个版本 • 全球最活跃 API 网关 • 每月一个版本 • APISIX Way • 稳定 • 高性能 • 动态 • 社区活跃 • 云原生架构 • 多语言 • 插件编排 • Loadbalancer • API 网关 • K8s Ingress • 服务网格 全流量 • 多种配置中心 • 智能诊断 易用 全生命周期生态 感谢聆听 THANKS0 码力 | 26 页 | 2.68 MB | 1 年前3Apache APISIX 在金山办公的开发和落地实践
S o m e t h i n g a b o u t 前情回顾 & 增补 01 About •金山办公云原生应用组流量网关 Lead Developer •金山办公作为 Apache APISIX 较早的受益者,使用Apache APISIX 承载百万QPS流量,对 Apache APISIX 做了比较深 入的定制开发 W r i t e h e r e S o m e t h0 码力 | 27 页 | 4.88 MB | 1 年前3
共 10 条
- 1