Istio控制平面组件原理解析
Istio控制平面组件原理解析 朱经惠 2018.08.25 Service Mesh Meetup #3 深圳站关于我 • 朱经惠,ETC车宝平台工程师。 • 喜欢开源,个人开源项目”Jaeger PHP Client”。 • 喜欢研究源码,对NSQ,Jaeger,Istio(控制平面)等go语言开源项目进行 过研究。 • 除了代码还喜欢爬山和第二天睡醒后全身酸疼的感觉。目录Pil uv1版本和v2版本之间的区别 u建立缓存配置 u触发配置生效方式v1版本和v2版本之间的区别 V1 HTTP1 REST JSON/YAML 弱类型 轮询 SDS/CDS/RDS/LDS 奠定控制平面基础 V2 HTTP2 GRPC Proto3 强类型 Push SDS/CDS/RDS/LDS/HDS/ADS/KDS 和Google强强联手 官方博客:The universal secretName: istio.default证书过期 üroot-cert.pem 实际有效期1年,没有找到更新方式,手动更新? ücert-chain.pem 和 key.pem 实际有效期90天,程序控制有效期45天 ü证书过期会被重新生成并挂载到/etc/certs ü触发envoy热启动ü方案一: • 把重新生成证书时间改为凌晨http://www.servicemesher.com0 码力 | 30 页 | 9.28 MB | 5 月前3TiDB中文技术文档
数据库、表、索引、列和别名 关键字和保留字 用户变量 表达式语法 注释语法 字符集和时区 字符集支持 字符集配置 时区 数据类型 日期和时间类型 基本数据类型 函数和操作符 函数和操作符概述 表达式求值的类型转换 操作符 控制流程函数 - 2 - 本文档使用 书栈(BookStack.CN) 构建 字符串函数 数值函数与操作符 日期和时间函数 位函数和操作符 Cast 函数和操作符 加密和压缩函数 信息函数 JSON 函数 数据库管理语句 Prepared SQL 语句语法 实用工具语句 JSON 支持 Connectors 和 API TiDB 事务隔离级别 错误码与故障诊断 与 MySQL 兼容性对比 TiDB 内存控制文档 Bit-value Literals Boolean Literals Date 和 Time 字面值 十六进制的字面值 NULL Values 数值字面值 字符串字面值 TiDB 用户文档 高级功能 中文技术文档 目录 README - 7 - 本文档使用 书栈(BookStack.CN) 构建 枚举类型 集合类型 数据类型默认值 函数和操作符 函数和操作符概述 表达式求值的类型转换 操作符 控制流程函数 字符串函数 数值函数与操作符 日期和时间函数 位函数和操作符 Cast 函数和操作符 加密和压缩函数 信息函数 JSON 函数 GROUP BY 聚合函数 其他函数 精度数学 SQL 语句语法0 码力 | 444 页 | 4.89 MB | 5 月前3蚂蚁金服网络代理演进之路
(Ant Global Network Accelarator) 网商 信用 保险 财富 支付 国际支付 小程序 微贷 科技开放 物联网 Spanner LVS(四层负载) DNS 网络控制面 LDC1 Spanner Spanner APP APP APP APP Keycenter HTTP1 TLS1.2 MMTP Mtls MQTT HTTP2 TLS1.3 QUIC 保证防重放攻击,因此要求应 用程序自己保证防重放攻击 Small Ticket • 自定义Session Ticket编码格式 • 160 byte -> 76 byte • Session Ticket扩展 用于会话复用,加速握手过程 • Cached-info扩展 缓存证书等服务端信息,避免 再次握手时重复传输数据 • ECDHE-keyshare扩展 将TLS1.3草案中的1-RTT机制通 过扩展的方式提前应用 Mesh 控制面 Galley Inspector Citadel Pilot Pod Dubbo 应用 SOFAMosn Pod SOFA 应用 SOFAMosn KMI Pod SOFA 应用 SOFAMosn Sigma TLS,国密 服务鉴权 流量控制 镜像中心 流量镜像 流量镜像 TLS,国密 服务鉴权 流量控制 TLS,国密 服务鉴权 流量控制蚂蚁金服率先大规模落地SOFAMesh0 码力 | 46 页 | 19.93 MB | 5 月前3Rust 程序设计语言 简体中文版 1.85.0
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 3.5. 控制流 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 6.2. match 控制流结构 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 6.3. if let 和 let else 简洁控制流 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 7.2. 定义模块来控制作用域与私有性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .0 码力 | 562 页 | 3.23 MB | 8 天前3严选 ServiceMesh 实践
• 数据面:cNginx • 控制面:Consul 管理后台5/24 服务治理能力 – 基于严选第一代ServiceMesh(cNginx) 类型 功能 能力提供方 服务调用方(Client) 服务提供方(Server) 服务注册与发现 注册发现:基于 Consul √ 调用控制 协议支持:HTTP 1.X/2.X,可扩展至 TCP √ 路由控制:提供简单的路由能力 √ 负载均衡:支持 Hash 等 √ 流量复制:不提供 × 故障转移:继承 Nginx 的 Failover 机制 √ 安全 访问控制:主要依靠中间件 × 中间件 治理控制 熔断降级:主要依靠中间件 中间件 限流:速率限制 √ 中间件 资源隔离:主要依靠中间件 中间件 故障注入:不提供 × 超时控制、重试、重写、重定向等:继承 Nginx 的 timeout 机制 √ 监控/故障诊断 链路追踪:主要依靠中间件 为多语言栈提供了服务治理能力7/24 持续演进的诉求 • 提供高质量的服务治理能力 • 增强流量管理能力 • 将更多治理特性(如限流、熔断、故障注入)与业务架构解耦 • 支持更多的协议 • 增强控制面 • 配合业务容器化上云及混合云架构8/24 行业技术演进 - 通用型 Service Mesh 出现 2017年1月23日 加入 CNCF 2017年4月25日 1.0Releases0 码力 | 25 页 | 2.07 MB | 5 月前3Service Mesh是下一代SDN吗:从通信角度看Service Mesh的发展
在实践中,服务网格通常实 现为一组轻量级网络代理,它们与应用程 序一起部署,但对应用程序透明。什么是Service Mesh?- by Istio 服务发现 负载均衡 流量控制 ... 黑白名单 限流 ... 身份认证 通信加密 权限控制 ... 调用追踪 指标收集 ...什么是Service Mesh?- 从网络的视角 Service Mesh关注点 网络视角: Service Mesh是一个主 Control Plane Programmable API APP ...... Data Plane Control Layer Application Layer通过Service Mesh控制面统一管理F5和Envoy https://aspenmesh.io/2019/03/expanding-service-mesh-without-envoy/ Control Plane Security 解决类似的问题:运维和通信的问题 • 相似的解决方案:数据面+控制面+应用 • 不同的协议层次:SDN 2-4层,Service Mesh 主要为7层 SDN对Service Mesh发展的启发: Ø 北向接口 • 面向业务和运维 • 具有较高的抽象层次,比较容易提取统一的控制面标准? • 主要面向layer 7及以上? • SMI能否统一控制面标准?如何避免成为最小公分母,扩展支持其它协议?0 码力 | 27 页 | 11.99 MB | 5 月前3CurveFs 用户权限系统调研
一、Curvefs测试 1. 启动curvefs 问题1:root用户无法访问挂载目录 测试 allow_root 测试allow_other 参考文献 问题2:本地文件系统挂载默认是共享的? 问题3:文件系统访问控制是在哪一层实现的? 二、文件系统权限管理 文件类型 文件权限 特殊权限(SUID, SGID, STICKY) 文件默认权限umask 用户&用户组 文件系统用户权限管理 对mode的管理 对ACL(Access fuse_client", MS_NOSUID|MS_NODEV, "allow_other,fd=9,rootmode=40000,"...) = 0 问题3:文件系统访问控制是在哪一层实现的? 测试curvefs,发现文件系统链路默认是没有做权限控制。(挂载点mode 777) # mountpoint wanghai01@pubbeta1-nostest2:/tmp$ ls -l | grep fsmount "world" >> file1 nbs@pubbeta1-nostest2:/tmp/fsmount$ cat file1 hello world 测试curvefs,发现文件系统链路默认是没有做权限控制。( 挂载点mode 755)© XXX Page 8 of 33 wanghai01@pubbeta1-nostest2:/tmp$ ls -l | grep fsmount drwxr-xr-x0 码力 | 33 页 | 732.13 KB | 5 月前3【周鸿祎清华演讲】DeepSeek给我们带来的创业机会-360周鸿祎-202502
工 序 模 型 导 图 原料 废钢 烧结 球团 焦化 炼铁 炼钢 精炼 连铸 热轧 冷轧 销售 • 料场环境实时监控 • 人员越界安全监测 • 回转窑窑况智能分 析 • 原料无人天车吊装 控制 • 生产现场运输状态 监控 • 现场路线智能调度 • 智能化能源调度 • 料场智能调度 • 燃料水分视觉分析 • 多角度废钢图像 采集 • 废钢智能定级 • 杂质识别 & 扣杂 烧结烟气 S02 排放在 线预测与控制 • 构建能源消耗预测 • 智能故障诊断 • 挡板位移检测 • 皮带划痕、 撕裂、 跑偏检测预警 • 1球团皮带智能监测 • 生球粒度分布在线 识别 • 球团1颗粒粒度检测 • 球团1现场生产安全 态势感知与预警 • 皮带机预测性维护 • 建立设备健康模型 • 焦化皮带智能监测 • 生产现场动作远程控制 • 焦化现场生产安全态势 感知与预警 炼焦煤分级调湿工艺稳 定协调控制 • 焦化皮带智能监测 • 生产现场动作远程控制 • 焦化现场生产安全态势 感知与预警 • 部署打滑预测分析 • 能源计划 • 炼焦煤分级调湿工艺稳 定协调控制 • 危险物识别 • 人员安全监测 • 高炉料面温度检测 • 高炉料面可视化监控 • 炉顶布料效果评定 • 远程换钎 • 中间产品无人天车吊装 控制 • 废品无人天车吊装控制 • 铁水质量预报 • 高炉温度分布0 码力 | 76 页 | 5.02 MB | 5 月前313 Istio 流量管理原理与协议扩展 赵化冰
可以无需关注分布式架构带来的通信相关问题,而专注于其业务价值。 流量控制:服务发现、请求路由、负载均衡、灰度发布、错误重试、 断路器、故障注入 可观察性:遥测数据、调用跟踪、服务拓扑 通信安全: 服务身份认证、访问鉴权、通信加密 Proxy Application Layer Service 1 Istio 流量管理 – 概览 • 控制面下发流量规则: Pilot • 数据面标准协议:xDS • 集群内Pod流量出入: Gateway(可选,在一个集中点对外部访问进行控制) • Service discovery • Load balancing • Time out • Retries • Circuit breaker • Routing • Auth • Telemetry collecting 外部流量出口 外部流量入口 Pilot 2 Istio 流量管理 – 控制面 两类数据: q 服务数据(Mesh com/istio-ecosystem/consul-mcp) v 通过CRD定义的服务数据 q 自定义流量规则(如何将请求路由到这些服务?) v 通过CRD定义的流量规则 服务数据 流量规则 3 Istio 流量管理 – 控制面 – 服务发现 • K8s Service : Pilot 直接支持 • ServiceEntry: 手动添加 Service 到 Pilot 内部注册表中 • WorkloadEntry:单独添加0 码力 | 20 页 | 11.31 MB | 5 月前322-云原生的缘起、云原生底座、PaaS 以及 Service Mesh 等之道-高磊
在多种新旧应用承 载诉求推动下,催 熟云计算架构的全 栈化和软硬一体化 带来更敏捷的体验 容器多样化 应用规模的剧增,成 本诉求越来越成为主 体,基于AI的自动化 将精益化资源管理, 带来更好的成本控制 高度自动化 应用上云,安全问题 凸现,在云原生新架 构下,需要打造端到 端的容器安全网 零信任 企业数字化转型急需高度自动化 的、面向应用的极简云体验 边缘计算场景正在极速拓展云 端的业务领域 将云能力延展到客户 警、APM、云监控、中间件纳管.... 管好云 数 采 数 算 数 用 云原生赋能平台 标准化能力-分布式操作系统核心-容器服务 向上提供抽象化自愈IT运营视角 高效稳定应用资源供给 价值主张 架构 云原生底座=控制器+调度器的组合+Docker=根据环境的变化而动+基于封装 一致性的大规模分发 服务编排基本原理: • 以度量为基础,以NodeSelector算法来 决定在哪儿部署容器服务 • 运行时以期望与实际的差别进行动态调 Resource(CR) Operator机制 Pod,Deployment, etc Spec (K8s Yaml) Custom Resource Spec (K8S yaml) 通过拓展实现自定义控制器来实现对非标准资源的纳 管,比如数据库的自动拓展能力或者自动化数据同步 能力等等。 标准化能力-分布式操作系统核心-容器服务-新发展 由于历史遗留或者软件形态所限制,不可能所有的软件都可以被微0 码力 | 42 页 | 11.17 MB | 5 月前3
共 58 条
- 1
- 2
- 3
- 4
- 5
- 6