从Apache APISIX 来看API 网关的演进
从 Apache APISIX 来看 API 网关的演进 温铭 wenming@apache.org 关于我 • Apache APISIX PPMC • 深圳支流科技创始人 • 《OpenResty 从入门到实战》极客时间专栏作者 • 曾在奇虎 360 担任企业安全架构师,开源委员会发起人、委员 • 40 多项安全方面的专利 大纲 • Apache APISIX 是什么? 是什么? • Apache APISIX 能解决什么问题? • API 网关的演进 • 微服务是如何演进到 Service Mesh 的? • 下一代微服务架构是什么? Apache APISIX 是什么? • 云原生微服务 API 网关 • 基于 Nginx 和 etcd 实现 • 集成了控制面和数据面 • 提供灵活的插件机制 • 动态上游、动态路由、插件热加载 孵化器,国内唯一由初创公司贡献的项目 • 11 月全面支持 ARM64 平台,并推出 apisix-ingress-controller • 12 月:即将推出新一代微服务架构方案 NASA 也在使用 API 网关的传统功能 • 让 API 请求更安全、更高效的得到处理 • 覆盖 Nginx 的所有功能:反向代理、负载均衡 • 动态上游、动态 SSL 证书、动态限流限速 • 主动/被动健康检查、服务熔断0 码力 | 24 页 | 1.36 MB | 1 年前303-基于Apache APISIX的全流量API网关-温铭
APACHE APISIX的全流量API网关 温铭, 来自一家在远程工作方式下商业化开源项目的创业公司(支流科技), 担任CEO&联合创始人, Apache 顶级项目APISIX的PMC主席, Skywalking开源项目的贡献者(commiter)。在创业之前, 在360做企业安全, 360开源委员会的发起人, 腾讯的TVP, TARS基金会的TOC成员, 在安全领域有四十多个专利, 最近三年全 等问题, 加速了技术落地。新的时代中每个公司的技术都是非常重要的组成部分, 在一个商业竞争激烈的 时代, 公司愈早的占据技术顶峰愈是能够占据商业顶峰。网关作为云原生入口, 是掌握云原生的一个必经 之地, 是开启"财富"的密钥。 微服务和 API 网关的演进 从2014-2015年, 谷歌搜索引擎上"微服务"关键字的搜索趋势直线上 升 在单体架构上, 任一请求都会负载到整个的单体服务集群上 务之 间隔离、降低故障率 但是同样的带来的一些问题: 接口之间通用的功能重复开发、膨胀的 服务数量、难以管理 使用API网关模式 使用API网关进行API聚合 使用API网关实现灰度发布 使用API网关实现服务熔断 与传统API网关的功能 • 让 API 请求更安全、更高效的得到处理 • 覆盖 Nginx 的所有功能:反向代理、负载均衡 • 动态上游、动态0 码力 | 11 页 | 6.56 MB | 5 月前3OpenShift Container Platform 4.8 Service Mesh
1.2.2.2.2. 复制路由标签 在这个版本中,除了复制注解外,您还可以为 OpenShift 路由复制特定的标签。Red Hat OpenShift Service Mesh 将 Istio 网关资源中存在的所有标签和注解(从 kubectl.kubernetes.io 开始的注解除外)复 制到受管 OpenShift Route 资源中。 1.2.2.3. Red Hat OpenShift Proxyless Service Mesh 是一个技术预览功能。 Telemetry API 是一个技术预览功能。 发现选择器功能不受支持。 外部 control plane 不受支持。 网关注入不受支持。 1.2.2.4.8. Kubernetes Gateway API Kubernetes Gateway API 是一个技术预览功能,默认为禁用。 要启用这个功能,请在 Ser rating service mesh)。服务网格可以整合 到同一集群中或跨不同的 OpenShift 集群。这些新资源包括: ServiceMeshPeer - 使用单独的服务网格定义联邦,包括网关配置、root 信任证书配置和状态字 段。在一对联邦网格中,每个网格将定义自己的独立 ServiceMeshPeer 资源。 ExportedServiceMeshSet - 定义给定 ServiceMeshPeshPeer0 码力 | 344 页 | 3.04 MB | 1 年前3OpenShift Container Platform 4.8 Web 控制台
并重新创建它以执行 sidecar 注入操作。 MAISTRA-193 当为 citadel 启用了健康检查功能时,会出现预期外的控制台信息。 MAISTRA-158 应用指向同一主机名的多个网关时,会导致所有网关停止工作。 MAISTRA-806 被逐出的 Istio Operator Pod 会导致 mesh 和 CNI 不能被部署。 如果在部署 control pane 时 istio-operator 之外的 ingress 网关访问 TCP 或 HTTPS 服务。AWS 负载均衡器有一个健康检查,它可验证服务端点中的端口 80 是否活 跃。如果服务没有在端口 80 中运行,负载均衡器健康检查就会失败。 MAISTRA-348 OpenShift 4 Beta on AWS 不支持端口 80 或 443 之外的 ingress 网关流量。如果 您将 ingress 网关配置为使用 80 或 443 求率、延迟甚至流量图等功 能。Kiali 提供了从应用程序到服务以及负载等不同级别的组件的了解,并可显示与所选图形节点或边缘的 上下文信息和图表的交互。Kiali 还提供了验证 Istio 配置(如网关、目的规则、虚拟服务、网格策略等 等)的功能。Kiali 提供了详细的指标数据,并可使用基本的 Grafana 集成来进行高级查询。通过将 Jaeger 集成到 Kiali 控制台来提供分布式追踪。0 码力 | 87 页 | 1.58 MB | 1 年前3OpenShift Container Platform 4.12 容器镜像仓库(Registry)
region: 第 第 3 章 章 设 设置和配置 置和配置 REGISTRY 13 注意 注意 当 regionEndpoint 参数的值配置为 Rados 网关的 URL 时,必须指定显式端口。例如: 3.2. 为 GCP 用户置备的基础架构配置 REGISTRY 3.2.1. 为 Image Registry Operator 配置一个 secret Ceph、共享和分布式文件系 、共享和分布式文件系统 统以及内部 以及内部对 对象存 象存储 储 NooBaa 提供多云 提供多云对 对象网关 象网关 本文档概述了将 本文档概述了将镜 镜像 像 registry 配置 配置为 为使用 使用 Ceph RGW 存 存储 储的步 的步骤 骤。 。 先决条件 Ceph、共享和分布式文件系 、共享和分布式文件系统 统以及内部 以及内部对 对象存 象存储 储 NooBaa 提供多云 提供多云对 对象网关 象网关 本文档概述了将 本文档概述了将镜 镜像 像 registry 配置 配置为 为使用 使用 Noobaa 存 存储 储的步 的步骤 骤。 。 $ oc 0 码力 | 75 页 | 652.51 KB | 1 年前322-云原生的缘起、云原生底座、PaaS 以及 Service Mesh 等之道-高磊
真得能够实现运行态稳定性管理, 就必须集成容器服务底座、服务治理和DevOps才能实现。容器服务底座和DevOps前面也都讲过,这里不在重述。 Token Zuul 网关 Hystrix 熔断限流 Service A Service B Service C Nacos Config 熔断监控 Turbine Zipkin EFK prometheus 署,并保留各自的优点和克服了 前面所分析的缺点。 SM 控 制 面 Service A Service B Enovoy Enovoy Token Zuul 网关 Hystrix 熔断限流 Nacos Config 熔断监控 Turbine Zipkin EFK prometheus SM 控 制 面 Service A Service 简化运维:中心化后,只需要管理服务器就可以了 • 业务异步化 缺点: 单点故障,需要提供高可用方案,如Broker部署在K8S中,HPA控 制器可以保证其高可用性,因为它本身无状态。 标准化能力-API网关 Web应用 移动应用 第三方应用 Gateway (如K8S的 Ingress) Catalog服务 REST Recom服务 TCP Catalog服务 gRPC Web应用 移动应用0 码力 | 42 页 | 11.17 MB | 6 月前38 安翔 Python助力物联网项目开发
感知和控制,是物联网的最底 层。 典型 IoT 项目剖析 •典型 IoT 项目剖析 – 常用网络结构 共享单车: • 终端设备开发 • 服务端程序开发 智能家居系统: • 终端设备开发 • 网关程序开发 • 服务端程序开发 •典型 IoT 项目剖析 – 智能家居系统 •典型 IoT 项目剖析 – 智能家居系统 – 技术栈 • 单片机程序开发 • 使用多种硬件接口 • 驱动各种外设 • 网络通信 • Web程序开发 • 数据存储 • 数据可视化 Python 各个击破 IoT 技术栈 • MicroPython 开发 IoT 终端 • Python 开发 IoT 网关 • Python 开发 IoT 服务端 •Python 各个击破 IoT 技术栈 -- MicroPython 开发 IoT 终端 • MicroPython 支持数十种单片机 • 支持多种硬件接口:GPIO、I2C、SPI、 开发便捷: 直接通过文件系统编写和运行程 序, 无需烧写器 • 相比传统单片机开发模式,减少了对IC厂家 资源的依赖 •Python 各个击破 IoT 技术栈 -- Python 开发 IoT 网关 • 构建Python环境:很多IC厂商的BSP已经对 Python有了很好的支持,若没有则自主移植 • 支持多种硬件接口: pyserail等,如果没有 通过C语言开发 • 支持多种数据库:sqlite、mysql…0 码力 | 22 页 | 5.00 MB | 1 年前3Apache APISIX 微服务⽹关性能架构解析
Apache APISIX 微服务⽹网关性能架构解析 --by Yuansheng 王院⽣生 通过写书开始交朋友 《OpenResty 最佳实践》 今年年 3 ⽉月和温铭创办深圳⽀支流科 技,专注微服务的开源技术公司。 Apache APISIX PPMC 成员。 公司刚起步,希望⼤大家⽀支持。 开源,开⼼心 开源,开⼼心 理理想主义者,想活的有理理想 Yuansheng sushuai supermario1990 orangle linsir forging2012 onlytiancai brileyhe 开源,开⼼心 什什么是 API ⽹网关 微服务 API ⽹网关 重复造轮⼦子 why? ⾏行行业⽼老老⼤大:⼤大多基于 Java + JS,性能差,不不⽀支持⼆二 次开发。⽐比如 Apigee、3Scale、Amazon 等。 ⾏行行业远⻅见者:多基于 OpenResty / Tengine • 极致性能 jsonschema • ASF 第⼀一个 API ⽹网关项⽬目 微服务 API ⽹网关部署 client API Gateway Service Service Service Service 微服务 API ⽹网关部署 client API Gateway Service Service Service Service0 码力 | 41 页 | 15.62 MB | 1 年前3Nacos架构&原理
多年双十⼀考验,经历过多次断网,节点全挂,存储不可用各种故障,因此充分面 对失败设计,沉淀了非常多的经验。 全局高可用 Nacos 部署架构上是单 Region 封闭,Region 间独立,跨 Region 通过网关或者 Nacos-sync 完 成服务互通。从而降低 Region 间网络故障风险。 当然用户也可以跨 Region 组 Nacos 集群,但是这样会带来服务跨 Region 互调,真正发生网络 tes 平台,但整个业务系统依赖的配置中心、注册中心、网关、消息队列、认证鉴权、可观测等服 务治理组件并不能被 Kubernetes 生态完全替代。⼀方面,这些传统的中间件经历了时间和历史的 重重考验,沉淀出高性能、高可用和高扩展的经验是毋容置疑的;另⼀方面,Kubernetes 对于应用 依赖平台之上的能力的支持度是不够的,比如服务治理、网关、认证鉴权,可观测,等等。⼀时间, 围绕 Kubernetes 现正是为了弥补 K8s 在服务治理上的不足,它定义⼀套标准 API 来定义常见的治理策略。 从我的角度和理解来看,K8s 与 Istio 呈互补关系,共同决定了业务应用的部署、发布以及运行时 的行为。 网关处于集群的边缘,控制着集群的出入流量,可以看做是 Envoy 代理的独立部署,代理的是整个 集群。 Istio 的基本架构 Istio 项目是基于 Kubernetes 运维平台构建的云原生新⼀代的服务治理框架,其架构图如下,摘自0 码力 | 326 页 | 12.83 MB | 9 月前3云原生微服务最佳实践
Dubbo/Spring-Cloud-Alibaba/Envoy 服务框架+服务⽹格 用户容器 用户容器 最佳实践 • 微服务最佳实践 • 服务治理最佳实践 • 日常环境隔离最佳实践 • 网关最佳实践 微服务最佳实践 MSE微服务引擎 Nacos/Zookeeper/Eureka 注册中⼼+配置中⼼ Dubbo/Spring-Cloud-Alibaba/Envoy 服务框架+服务⽹格 Agent mse-tag:gray 网关 base 购物车 Agent 库存中心 Agent mse-tag:base mse:gray mse-tag:base mse-tag:base gray base base mse-tag:gray 网关最佳实践 K8s(API-Server) App3(服务网格) VPC2 云原生网关 VPC1 Nacos(业务域1) App2(微服务) 云原生网关 1、网络不通 2、业务边缘部署 3、协议不同 4、安全域不同 5、跨region 云原生网关 云原生网关 Fuction(Serverless) App1(单体应用) 证书管理 认证登录 三方认证 WAF防护 限流熔断 风险预警 统一接入 流量调度 用户故事 • 来电 微服务治理全链路灰度最佳实践 • 斯凯奇 云原生网关最佳实践 来电 微服务治理全链路灰度最佳实践0 码力 | 20 页 | 6.76 MB | 1 年前3
共 248 条
- 1
- 2
- 3
- 4
- 5
- 6
- 25