可视化运维实施微服务 - opentalk-blog.b0.upaiyun.com · 全程服务治理平台(grpc)...

29
欢迎来到明日银行 Welcome to Bank of Tomorrow 可视化运维实施微服务 [email protected] 2017-10-14

Upload: others

Post on 22-May-2020

52 views

Category:

Documents


0 download

TRANSCRIPT

欢迎来到明日银行 Welcome to Bank of Tomorrow

可视化运维实施微服务

[email protected]

欢迎来到明日银行 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

微服务架构

欢迎来到明日银行 Welcome to Bank of Tomorrow

微服务开发流程

Ø 服务治理平台

欢迎来到明日银行 Welcome to Bank of Tomorrow

服务治理内容

欢迎来到明日银行 Welcome to Bank of Tomorrow

点融服务治理平台(Spring Cloud)

已有:Ø 服务列表展示(读取配置中心)Ø API鉴权(Access Id和Access Key)Ø Health Check检查 (Health接口Ping)Ø Swagger文档库(Swagger测试)Ø 服务依赖梳理(服务调用链数据计算)缺失:Ø 动态路由

欢迎来到明日银行 Welcome to Bank of Tomorrow

点融服务治理平台(Spring Cloud)

欢迎来到明日银行 Welcome to Bank of Tomorrow

全程服务治理平台(Grpc)已有:Ø 服务列表展示(读取配置中心)Ø Http2.0Ø Health Check检查 (Health接口Ping)Ø 自建服务测试文档Ø 服务依赖梳理(Monitor埋点)Ø 动态路由Ø API性能计算(Monitor埋点)缺失:Ø 流控

欢迎来到明日银行 Welcome to Bank of Tomorrow

全程服务治理平台(Grpc)

欢迎来到明日银行 Welcome to Bank of Tomorrow

Zuul网关管理

Ø 路由规则配置可视化1:动态Groovy Filter可视化配置2:自定义Filter规则可视化配置

Ø 路由规则配置第三方存储

欢迎来到明日银行 Welcome to Bank of Tomorrow

自定义Filter规则配置

Ø 黑白名单规则配置Ø 限流规则配置Ø 认证规则配置Ø 跨域规则配置

欢迎来到明日银行 Welcome to Bank of Tomorrow

动态Groovy 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架构

欢迎来到明日银行 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

Pinpoint的界面展示

欢迎来到明日银行 Welcome to Bank of Tomorrow

RabbitMq的Ops系统目标Ø 规范化RabbitMQ的Exchange、RouteKey、Queue的使用,将创建和

使用剥离分开,能够将相应的Exchange、RouteKey、Queue找到相应的责任人

Ø 可视化运维,对业务开发人员要足够友好,消息轨迹可查询,消息可回朔、消息丢失后可寻回

Ø 消息定制化场景的支持重复消息的预防重试队列延迟队列不断线支持服务端数据的恢复

欢迎来到明日银行 Welcome to Bank of Tomorrow

RabbitMq的Ops系统架构

欢迎来到明日银行 Welcome to Bank of Tomorrow

RabbitMq的Ops系统功能Ø Exchange维护Ø Queue维护Ø Routing维护Ø 消息轨迹的查询

欢迎来到明日银行 Welcome to Bank of Tomorrow

RabbitMq的Ops系统功能

欢迎来到明日银行 Welcome to Bank of Tomorrow

缓存的Ops系统目标Ø 提供二级缓存,为分布式缓存减负Ø SDK支持spring cacheØ 在缓存穿透、雪崩、击穿上统一处理Ø 提供管理API让开发人员可以动态缓存重新加载、缓存失效Ø 可视化运维,让开发人员可以查看缓存中存放的数据,提供缓存hint、

miss的查看

欢迎来到明日银行 Welcome to Bank of Tomorrow

缓存的Ops系统架构

欢迎来到明日银行 Welcome to Bank of Tomorrow

缓存的Ops系统功能

欢迎来到明日银行 Welcome to Bank of Tomorrow

Q&A

欢迎来到明日银行 Welcome to Bank of Tomorrow

THANK YOUwww.dianrong.com