可视化运维实施微服务 - opentalk-blog.b0.upaiyun.com · 全程服务治理平台(grpc)...
TRANSCRIPT
欢迎来到明日银行 Welcome to Bank of Tomorrow
运维可视化的目的
通过可视化来表达,可视化后的自动化才能让所有人理解一致、执行一致、结果一致
除了上帝,一切人都必须用数据说话
欢迎来到明日银行 Welcome to Bank of Tomorrow
微服务实施所需运维系统
1. 服务治理平台2. 网关规则管理3. 分布式Trace服务平台4. 各种第三方组件的运维可视化平台
1:RabbitMq的Ops管理2:缓存的Ops管理
欢迎来到明日银行 Welcome to Bank of Tomorrow
点融服务治理平台(Spring Cloud)
已有:Ø 服务列表展示(读取配置中心)Ø API鉴权(Access Id和Access Key)Ø Health Check检查 (Health接口Ping)Ø Swagger文档库(Swagger测试)Ø 服务依赖梳理(服务调用链数据计算)缺失:Ø 动态路由
欢迎来到明日银行 Welcome to Bank of Tomorrow
全程服务治理平台(Grpc)已有:Ø 服务列表展示(读取配置中心)Ø Http2.0Ø Health Check检查 (Health接口Ping)Ø 自建服务测试文档Ø 服务依赖梳理(Monitor埋点)Ø 动态路由Ø API性能计算(Monitor埋点)缺失:Ø 流控
欢迎来到明日银行 Welcome to Bank of Tomorrow
Zuul网关管理
Ø 路由规则配置可视化1:动态Groovy Filter可视化配置2:自定义Filter规则可视化配置
Ø 路由规则配置第三方存储
欢迎来到明日银行 Welcome to Bank of Tomorrow
Zuul规则配置第三方存储
https://github.com/jmnarloch/zuul-route-cassandra-spring-cloud-starter
欢迎来到明日银行 Welcome to Bank of Tomorrow
分布式Trace服务平台(Pinpoint)
追踪每个请求的完整调用链路,收集调用链路上每个服务的性能数据,方便工程师能够快速定位问题
欢迎来到明日银行 Welcome to Bank of Tomorrow
Pinpoint的优点
Ø 对代码的零侵入,运用JavaAgent字节码增强技术,只需要加启动参数即可
Ø 基于UDP直接往Collector发送数据1:Spring cloud sleuth对比少去了配置Logback等以
logstash的繁琐2:准实时,logstash不会成为瓶颈3:UDP传输不会对应用的网络造成网络拥堵
Ø 丰富的Plugin库及良好的Plugin扩展
欢迎来到明日银行 Welcome to Bank of Tomorrow
Pinpoint的缺点
Ø 统计与分析功能的缺失Ø 依赖于Jdk1.6、Jdk1.7
剥离Jdk1.6及1.7的依赖https://github.com/linking12/pinpoint
欢迎来到明日银行 Welcome to Bank of Tomorrow
Pinpoint的插件列表插件开发文档https://github.com/naver/pinpoint/wiki/Pinpoint-Plugin-Developer-Guide
欢迎来到明日银行 Welcome to Bank of Tomorrow
RabbitMq的Ops系统目标Ø 规范化RabbitMQ的Exchange、RouteKey、Queue的使用,将创建和
使用剥离分开,能够将相应的Exchange、RouteKey、Queue找到相应的责任人
Ø 可视化运维,对业务开发人员要足够友好,消息轨迹可查询,消息可回朔、消息丢失后可寻回
Ø 消息定制化场景的支持重复消息的预防重试队列延迟队列不断线支持服务端数据的恢复
欢迎来到明日银行 Welcome to Bank of Tomorrow
缓存的Ops系统目标Ø 提供二级缓存,为分布式缓存减负Ø SDK支持spring cacheØ 在缓存穿透、雪崩、击穿上统一处理Ø 提供管理API让开发人员可以动态缓存重新加载、缓存失效Ø 可视化运维,让开发人员可以查看缓存中存放的数据,提供缓存hint、
miss的查看