1.3 MOSN 在云原生的探索及实践• 支持 Ingress 和 Gateway • 推动 UDPA 多协议建 设 核心能力 微服务 性能优化 MOSN 网络层扩展思考和选型 MOE 背景介绍 — 什么是 MOE 处理性能高 (C++) 研发效能高 (GoLang、生态) 高性能、高研发效能、生态打通 MOE = MOSN + Envoy 相互融合,各取所长 在 Service Mesh 领域,Envoy 社区生态粘性 MOE Envoy 和 GoLong 生态打通 维护成本高、可扩展性弱 MoE 背景介绍 — 方案调研 方案名称 优势 劣势 Lua Extension Lua 编写简单业务处理方便 Lua 脚本语言,开发复杂功能不 方便;支持的库(SDK)相对较 少 WASM Extension 跨语言语言支持 (C/C++/Rust)、隔离性、安 全性、敏捷性 处于试验阶段,性能损耗较大; Extension 高 较高 低 活跃 对比:MOE 相比 ext-proc 无需跨进程 gRPC,性能高,易管理; 相比 WASM 无需网络 IO 操作转换成本;相比 Lua 生态好、能 复用现有的 SDK,对于处理上层业务更合适 扩展方案评估 Envoy 社区讨论 MOE 背景介绍 — 方案评估 结论 综合稳定性、性能、成本、社区生态等因素评估,MOE 解决方案无论在当前阶段还是未来都具备一定优势 NanoVisor0 码力 | 36 页 | 35.61 MB | 1 年前3
 01. MOSN 高性能网络扩展实践 - 王发康MoE 方案介绍 02 MoE 实践效果 03 MoE Roadmap 04 MoE 背景介绍 MoE 是什么 为什么做 MoE 方案调研与分析 MoE 背景介绍 — 什么是 MoE 处理性能高 (C++) 研发效能高 (GoLang、生态) 高性能、高研发效能、生态打通 MoE = MOSN + Envoy 相互融合,各取所长 在 Service Mesh 领域,Envoy 社区生态粘性 MoE Envoy 和 GoLong 生态打通 维护成本高、可扩展性弱 MoE 背景介绍 — 方案调研 方案名称 优势 劣势 Lua Extension Lua 编写简单业务处理方便 Lua 脚本语言,开发复杂功能不方便 支持的库(SDK)相对较少 WASM Extension 跨语言语言支持(C/C++/Rust)、 隔离性、安全性、敏捷性 处于试验阶段,性能损耗较大; Extension 高 较高 低 活跃 对比:MoE 相比 ext-proc 无需跨进程 gRPC,性能高;相比 WASM 无需 网络 IO 操作转换成本;相比 Lua 生态好、能复用现有的 SDK,对于上层 业务处理更合适 扩展方案评估 Envoy 社区讨论 MoE 背景介绍 — 方案分析 结论 综合稳定性、性能、成本、社区生态等因素评估,MoE 解决方案无论在当前阶段还是未来都具备一定优势 NanoVisor0 码力 | 29 页 | 2.80 MB | 1 年前3
 基于Consul的多Beats接入管控与多ES搜索编排全网重启filebeat 检测数据是否上报 传统Beats接入流程 配置更改 现网配置是否全部一致? 日志上报是否有延时? Filebeat是否资源消耗过多? Filebeat异常退出如 何处理? 如何做上报性能调优? 6 系统架构 云Kafka Api-server2 Consul 云ES Agent-1 Agent-N Agent-1 Agent-N 数据流 配置UI化标准化 • 配置变更实时感知 • 部署全自动化 • 多Beats支持 • Beats运行时cpu/mem可控 • Agent监控视图 • 离线/容量/延时监控 • 分布式集群管理 • 异常快速定位 • 关联公司CMDB • 资源权限管理 • 配置灰度控制发布 • 配置一致性检测 • 日志覆盖率 12 案例:如何管控整个日志数据流相关资源性能与容量? 资源限制 cgroup 界面提交核心参数并结合延时图对比分析 Filebeat性能管控 日志量太大Cpu飙升影响业务 精准控制资源消耗防止异常减少抖动 Es写入性能调优 修改配置文件不断观察数据情况 基于ES压测报告给出专家级es参数优化建议 参数优化体验 修改配置文件、参数调优相对麻烦 全UI化、一站式处理 14 配置UI化 配置UI化开发思路 嵌套式表单 大表单套小表单,所有表单都是以angular组 件形式开发,保证代码的可复用性与质量0 码力 | 23 页 | 6.65 MB | 1 年前3
 云原生安全威胁分析与能力建设白皮书(来源:中国联通研究院)好的代码,自动准备好相应的计算资源,完成运算并输出结果,从而大幅简化开 发运维过程。无服务器计算作为事件驱动架构,将工作负载分解成多个无缝隔离 的执行环境,每个执行环境都承载着一个特定任务并负责处理一个单独事件,在 时间与空间中各自运行。例如,基于 Knative[21]实现的 Serverless 架构将无服 务抽象为三个关键的组件,分别为构建应用的 build 组件、提供流量的 serving 可能是无法确认其来源的,对于来源未知且不可控的事件都是一种潜在的事件注 入威胁。 通常情况下,攻击者将可以控制的信息作为事件的一部分传递给可调用单元, 可调用单元在得到事件后未对事件做合理的筛选和过滤,就直接对事件进行处理, 此时就有可能产生数据注入风险,攻击者利用注入事件所携带的信息控制主机或 造成数据泄露等。举例来说,可调用单元的事件还可能来自受攻击者控制的 Web 请求。假设可调用单元直接使用事件携带的信息作为数据库访问请求的一 。 3.1 镜像投毒攻击 3.1.1 攻击场景介绍 脏牛漏洞(CVE-2016–5195)[23]是 Linux 的一个本地提权漏洞,该漏洞的 原因是 get_user_page 内核函数在处理 COW 的过程中,可能产出条件竞争造 成 COW 过程被破坏,导致出现写数据到进程地址空间内只读内存区域的机会, 攻击者即可利用该漏洞可以实现提权的目的。 在容器环境下,攻击者通过利用含有脏牛漏洞的二进制程序,构建恶意镜像,0 码力 | 72 页 | 2.44 MB | 1 年前3
 中国移动磐舟DevSecOps平台云原生安全实践源代码审计针对源代码缺陷进行静态分析检测。它在对目标软件代码进行语法、语义分析的技术上,辅以数据流 分析、控制流分析和特有的缺陷分析算法等高级静态分析手段,能够高效的检测出软件源代码中的可能导致严重 缺陷漏洞和系统运行异常的安全问题和程序缺陷,并准确定位告警,从而有效的帮助开发人员消除代码中的缺陷、 培养安全开发意识,提高安全开发水平、减少不必要的软件补丁升级,为软件的信息安全保驾护航。 发起工程检 测 查看工程缺 对测试环境性能有一定影响 优点 缺点 污点变量1 污点变量a 污点变量4 污点变量b 变量c 污点变量2 变量1 | 污点标记 无害处理 识别污点源 污点传播 污点汇聚点 污点传播阶段 污染过程 处理过程 变量2 污点变量3 如果程序在对输入变 量处理过程中,没有做 好过滤和验证措施,就 有可能导致有害的输入 被传入sink点执行 污点数据是指来自程 序外部的数据,污点数 据有可能包含恶意的攻 击数据 安全测试-镜像扫描 由于云原生“不可变基础设施”的特点,对容器风险的修复必须从镜像上处理才是最有效的。 因此对镜像的安全扫描变得尤其重要。 强大的漏洞扫描 支持双料漏洞库,可检测 的漏洞数大于17w条,提 供 对 容器镜像的扫描能力 ,可扫描发现CNNVD、 CVE等漏洞信息 , 提 供 详 细的漏洞分析能力联动。 安全风险发现 针对容器镜像内Webshell0 码力 | 22 页 | 5.47 MB | 1 年前3
 23-云原生观察性、自动化交付和 IaC 等之道-高磊是指在多个连 续的时间周期 内用于度量的 KPI数值 Tracing 通过TraceId来 标识记录并还 原发生一次分 布式调用的完 整过程和细节 Logging 通过日志记录 执行过程、代 码调试、错误 异常微观信息 数据之间存在很多关联,通过 关联性数据分析可获得故障的 快速界定与定位,辅助人的决 策就会更加精确 根据运维场景和关注点的不同,以不同图表或者曲 线图来表示整体分布式应用的各维度情况,使得开 背后的原因在于特定环境依赖或者运维规范问题渗透到了PaaS本身, 或者大家常说的定制化场景,如果不进行解耦就会有长期存在的矛盾。 • 为了应付定制化,客户需要等待平台研发的排期,因为平台研发需要定制 化处理定制化场景下的软件、运维工具或者规范等等,并需要不断的测试。 • 为了应付各类的环境的问题,势必要求交付人员的能力非常强,也是成本 居高不下的原因之一。 在K8s这种环境中,存在两种定制化的手段:其一是Deployment 如何 被安装、运维都无能为力!就像是从房子里面去搭建一个整体房子一样困难。 事实是这正是传 统运维工作的领 域,但是我们需 要提升抽象程度 来简化传统运维 传统的基础设施管理方法是人工的手动处理模式,不仅仅效率低下,而且还有很 多人为操作的风险,比如误操作。同时,对基础设施的配置更改需要文档记录, 如果没有做好配置更改记录,可能带来另外一些重复性操作的风险。另外,随着 虚拟化和云平台的引入0 码力 | 24 页 | 5.96 MB | 6 月前3
 构建统一的云原生应用 可观测性数据平台什么关联吗? ④ 看云网更清晰 Simplify the growing complexity. 数据打通并不简单 ⑤「非Request scope」的Log与Trace之间 例如:系统日志异常与Request时延增大是否有关联 ⑤ 看云网更清晰 Simplify the growing complexity. 数据打通并不简单 ⑥ 应用、系统、网络的Trace之间 例如:访问一个服务的耗时究竟有哪些部分组成? 落地及推广思路:让开发团队尝到甜头 • 引导开发团队使用标准化的标签标记机制 • 服务上线时,在K8s depoyment中标记丰富label • * 服务注册时,向服务注册中心中注册丰富的信息 • * 处理请求时,在标准协议的Header中增加标签 • 逐步减少需要直接在观测数据中注入的标签 • 减少重复的、不标准的标准注入 • 让每个标签只在一个地方注入 • 让尽量多的标签自动化注入 100+0 码力 | 35 页 | 6.75 MB | 1 年前3
 14-Chaos Mesh 在网易伏羲私有云自动化故障注入实践-张慧 Chaos Mesh在网易伏羲的实践 Chaos Mesh在网易伏羲的实践 Chaos Mesh在网易伏羲的实践 比如:节点异常 定时触发宕机 chmod u+x chaos-node.sh 比如:static pod 异常 定时 mv statics-pod.yaml Chaos Mesh在网易伏羲的实践 提前暴露30+风险问题 Chaos Mesh在网易伏羲的实践0 码力 | 25 页 | 3.33 MB | 6 月前3
 25-云原生应用可观测性实践-向阳������� ������� � �� ����� ����� ����� � �� ����� ������ ���� � 应用故障? 网络故障? 系统故障? 当网络建连失败时,现有的APM能监控到异常吗?当容器Service导致高时延时,现有APM能知晓原因吗? © 2021, YUNSHAN Networks Technology Co., Ltd. All rights reserved.0 码力 | 39 页 | 8.44 MB | 6 月前3
 36-云原生监控体系建设-秦晓辉ion_seconds 请求 apiserver 的耗时分布,histogram类型,按 照 url + verb 统计 • workqueue_adds_total 各个 controller 已处理的任务总数 • workqueue_depth 各个 controller 的队列深度,表示一个 controller 中的任务的数量,值越大表示越繁忙 • process_cpu_seconds_total 业务应用的监控 Pod内的业务应用的监控 - 两种埋点方式 • Pod 内的业务应用,有两种典型的埋点方案,statsd 和 prometheus sdk,当然,也可以用日志的方式,但是成 本比价高,处理起来比较麻烦,如果业务程序是自己研发团队写的,可控,尽量就别用日志来暴露监控指标 • statsd 出现的时间比较久了,各个语言都有 sdk,很完善,业务程序内嵌 statsd 的 sdk,截获请求之后通过 容器 agent mtail • 指标数据是性价比最高的数据 类型,传输存储成本相对较低 • 日志的处理和存储成本最高, 能用指标解决的尽量就用指标 解决,不要用日志 • 如果是从第三方采购的产品, 我们也尽量要求供应商统一暴 露 prometheus 接口,也别去 处理日志 业务应用依赖的中间件 的监控 业务应用依赖的中间件的监控 • 典型的监控方案分3类,一类是 sidecar0 码力 | 32 页 | 3.27 MB | 6 月前3
共 18 条
- 1
 - 2
 













