Extending service mesh capabilities using a streamlined way based on WASM and ORAS它是一种有效的可移植二进制指令格式,提供了可嵌入和隔离的执行环境。 6 使用Wasm for Proxy ● Pros ○ 敏捷性:过滤器可以动态加载到正在运行的Envoy进程中,而无需停止或重新编译。 ○ 可维护性:不必更改Envoy自身基础代码库即可扩展其功能。 ○ 多样性:可以将流行的编程语言(例如C/C++和Rust)编译为WASM,因此开发人员可 以选择实现过滤器的编程语言。 ○ 可靠性和隔离性:过滤器会被部署 可靠性和隔离性:过滤器会被部署到VM沙箱中,因此与Envoy进程本身是隔离的;即使 当WASM Filter出现问题导致崩溃时,它也不会影响Envoy进程。 ○ 安全性:过滤器通过预定义API与Envoy代理进行通信,因此它们可以访问并只能修改有 限数量的连接或请求属性。 ● Cons ○ 性能约为C++编写的原生静态编译的Filter的70%; ○ 由于需要启动一个或多个WASM虚拟机,因此会消耗一定的内存使用量; ○ The nfig.json --type=kubernetes.io/dockerconfigjson 16 ��������� ������������� ASMFilter Deployment 资源对象 Controller (Watch & Reconcile) Istio EnvoyFilter CR wasm filter二进 制文件 服务网格ASM Pod K8s集群 Proxy0 码力 | 23 页 | 2.67 MB | 1 年前3
SolarMesh 基于Istio构建的流量监管平台流量观测 超时重试 服务网格 流量安全 SolarMesh Copyright © 2021 Cloud To Go •轻量 核心组件少安装简单,轻量的架构赋予SolarMesh极低的资源占用以及极低的维护成本 •规范 标准的istio规范操作,实时反映真实集群状态,告别terminal。 •便捷 一键安装,UI操作,流量策略模板复用,批量设置 •多集群支持,零成本接入 •Grafana,为SolarMesh提供流量的实时仪表盘 •SLO,为SolarMesh提供服务质量检测的能力 SolarMesh的特点 Copyright © 2021 Cloud To Go 控制端与业务端隔离 控制面与数据面隔离 solarmesh坏了,istio还在,业务不会中断 istiod坏了,envoy还在,业务也不会中断 Copyright © 2021 Cloud To Go 无需重启 秒级切换0 码力 | 20 页 | 1.29 MB | 1 年前3
Istio 与 Knative 踩坑实录FAAS实践进展7/25 Faas(函数即服务)基础设施 FAAS实践进展8/25 Istio 的价值和问题 /02 酷家乐在使用 Istio 作为服务网格解决方案时的相关实践和经验9/25 隔离中间件 Istio 的价值和问题10/25 服务网格带来自由 Istio 的价值和问题 • 语言和技术栈的自由 • 中间件升级和切换的自由 • 不被供应商绑定的自由11/25 兼容新旧服务体系 吞吐量提升 5 %15/25 Pilot、Mixer 性能瓶颈 Istio 的价值和问题16/25 总结 Istio 的价值和问题 • 已经可以稳定用在生产环境 • 工程架构收益 >> 性能资源损耗 • 根据组织和业务情况推广或改造,新旧体系可并存 • 超大规模应用,几个架构问题有待社区或业界解决17/25 分享主题:字号 Knative 的实践和瓶颈 /03 酷家乐在使用 Knative 踩过的坑/问题 FAAS 实践进展 • 镜像源问题 • RevisionUnkown 状态(0.8版本) • Queue-proxy 内存增长(0.8版本) • Activator 重复创建并占用大量资源22/25 Knative 当前瓶颈 FAAS 实践进展 • 还未发布 Production-ready 版本 • Queue-proxy 过重 • 冷启动时间亟待优化 • 支持代码级更新?23/250 码力 | 26 页 | 1.35 MB | 6 月前3
全栈服务网格 - Aeraki 助你在
Istio 服务网格中管理任何七层流量可观测性:七层(请求级别)Metrics ○ 安全:基于 Interface/Method 的服务访问 控制 #IstioCon Aeraki Demo: 用户请求和批处理任务隔离(Dubbo) 场景:隔离处理用户请求和批处理任务的服务实例,为用户请求留出足够的处理能 力,避免批处理任务的压力影响到用户体验。 ● 将服务端划分为两个服务实例组,分别用于处理批处理任务和用户请 求。 ● b=false表示该 请求来自于用户请求。 ● 运维人员设置请求路由规则,将不同来源的请求路由到不同的服务实例 组进行处理。 #IstioCon Aeraki Demo: 用户请求和批处理任务隔离(Dubbo) 1. 在 dubbo: application 配置中为 Provider 增加 service_group 自定义属性 2. 通过 Provider 的 deployment 设置0 码力 | 29 页 | 2.11 MB | 1 年前3
百度APP基于Istio实现基础架构升级 - lightning talk - MichaelXu服务发现实现透明流量劫持。 Ø 自建配置中心,产品化封装。 l 关键技术 Ø 内核劫持,使用Loopback IP 与 服务发现一一对应。 Ø RPC劫持,构建可快速扩展标准方案。 Ø 自身稳定性,降级(兜底)、隔离、监控多种方式保证。 ①bns, 百度内部基础设施层,服务发现。 ②bns-agent,服务发现接入层。 ㊟ 内核劫持:Loopback方案 Ø loopback地址的管理和分配。 Ø 需要打通业务和loopback之间的映射管0 码力 | 9 页 | 2.20 MB | 1 年前3
Istio + MOSN 在 Dubbo 场景下的探索之路Sink: • Source 是资源提供方(server),资源变化了推送给订阅者(Pilot),Istio 1.5 之前这个 角色就是 Galley 或者自定义 MCP Server; • Sink 资源的订阅者(client),在 Istio1.5 之前这个角色就是 Pilot 和 Mixer,都是订阅 Galley 或者自定义 MCP Server 的资源;8/23 MCP mcpserver nsole) 获取一些资源(Kubernetes 中使用 Informer 机制获取 Node、Endpoint、 Service、Pod 变化) • 根据用户的配置(CR、MCP 推送,文件) 触发推送流程 推送流程 • 记录变化的资源类型 • 根据变化的资源类型整理本地数据 • 根据变化的资源类型判断需要下发的 xDS资源 • 构建 xDS 资源,下发到连接的 Sidecar10/23 通过动态获取服务信息,对服务的发现 API 被称为 xDS。 • 协议部分(ADS、控制发送的顺序以及返回的确认数据) • 数据部分(CDS、EDS、LDS、RDS、SDS)11/23 资源变化 资源名称 CDS EDS LDS RDS Virtualservices ✔ Gateways Serviceentries Destinationrules Envoyfilters0 码力 | 25 页 | 3.71 MB | 6 月前3
在网格的边缘试探:企业 Istio 试水指南不能做什么 • Istio 能做什么 • 现阶段 Istio 有什么问题 • 那Istio还用不用 • 如何安全的试用 Istio目标听众 • 我 • 乙方 • 给大型企业开发某某管理系统 • 系统资源好像没缺过 • 手上有各个时代的应用 • 没有能力/不想维护Istio源码 • 业务负载不算大Istio不能做什么 • 提高代码质量 • 增强负载能力 • 改善交付流程 • 客户充满 Love • • 集群环境申请:版本、开关、资源等。 • 功能性需求:本次试用中Istio需要提供的功能,再次强调:No Freestyle • 非功能需求:并发、成功率、响应时间等服务质量参数。 • 故障处理需求:故障预案。 • 影响范围分析。 • 选定测试版本:研读开放Issue以及Release Notes。测试方案部署 • Istio部署 • 复查集群环境 • 调整资源参数 • 调整亲和性参数 • 根据功能需求,编写和部署 Istio相关功能YAML • 监控和告警部署 • 连接Alertmanager/… • 指标输出方案测试 • 根据性能和功能测试方案完成测试。 • 如果性能下滑,可以尝试扩张资源。 • 如果无法达成测试目标,建议取消——无侵入的好处就是可以撤 退。 • 评估关联服务的工作情况——尤其是重试、超时特性的应用切换演练 • 在测试版本和后备版本之间根据预案进行切换。 • 验证相关服务的工作状况。0 码力 | 19 页 | 11.41 MB | 6 月前3
Kubernetes容器应用基于Istio的灰度发布实践Controller实现ServcieDiscovery 若干服务发现的接口定义 2. Controller List/Watch KubeAPIserver上service、 endpoint等资源对象 3. DiscvoeryServer使用 ServcieDiscovery接口上的服务发 现方法和用户配置的规则构造xDS 4. Envoy从Discovery获取xDS,动态 更新 Kubernetes Service Version Version Service Deployment Deployment Label selector Istio Istio几种重要资源对象 • 入口资源对象 • VirtualService • DestinationRule • 重要属性 • HTTPRoute • HTTPMatchRequest • TCPRoute • DestinationWeight0 码力 | 38 页 | 14.93 MB | 1 年前3
Kubernetes容器应用基于Istio的灰度发布实践Controller实现ServcieDiscovery 若干服务发现的接口定义 2. Controller List/Watch KubeAPIserver上service、 endpoint等资源对象 3. DiscvoeryServer使用 ServcieDiscovery接口上的服务发 现方法和用户配置的规则构造xDS 4. Envoy从Discovery获取xDS,动态 更新 Kubernet Service Version Version Service Deployment Deployment Label selector Istio25 Istio几种重要资源对象 • 入口资源对象 – VirtualService – DestinationRule • 重要属性 • HTTPRoute • HTTPMatchRequest • TCPRoute • DestinationWeight260 码力 | 34 页 | 2.64 MB | 6 月前3
Envoy原理介绍及线上问题踩坑Ltd. All rights reserved. Page 28 Istio数据面发展趋势 • 现状问题: • 引入透明Sidecar模式,导致端到端时延增加、并随着集群规模增加导致系统资源消耗上升,对大规模 Istio集群的实际使用造成影响。 • 运维难度增加,透明代理模式无法针对不同业务本身的特点定制监控能力,同时只能从业务容器外面收 集应用的运行状态。 • 演进方式: • 从Envoy自身I/O及线程模型、容器网络协议栈优化提升端到端性能,降低tp90网络时延。 • 通过运行时拉取集群依赖服务及POD实例配置信息,同时考虑配置信息共享的方式,降低每Envoy资源 消耗。 • 增加更多运维监控维度及探测点,收集更全面的观测信息。同时支持对出现问题的Envoy进行旁路处 理。 Copyright © Huawei Technologies Co., Ltd. All0 码力 | 30 页 | 2.67 MB | 1 年前3
共 11 条
- 1
- 2













