美图:低成本全链路监控实战与SRE稳定性运营
如果无法正常显示,请先停止浏览器的去广告插件。
1. 围绕监控,浅谈SRE稳定性运营
演讲人:石鹏(东方德胜)@美图
全球敏捷运维峰会 广州站
2. About me.
• 石鹏(东方德胜)
• 9年工作经历,传统行业&互联网运维
• 2016年加入美图,目前负责产品SRE团队
• 擅长领域:运维架构、SRE、监控/日志系统
• 当前:专注于云原生、智能运维方向
全球敏捷运维峰会 广州站
3. About Meitu:美图公司业务体系
美图公司(1357.HK)成立于 2008 年 10 月,以“变美”为基因开发了一系列产品,
目前已经覆盖超过 100 个国家和地区,在全球拥有 22.2 亿用户。
我们的愿景是:整合变美生态链,帮助用户全方位变美。
ToC
面向用户
影像美化 美妆平台 皮肤管理
影像美化
图片视频编辑工具 高清试妆工具 专业测肤工具
颜值管家服务
印刷品服务 化妆品测评服务 皮肤档案服务
皮肤医生服务
消费者社区
ToB
面向行业
桌面版美图秀秀
影像行业解决方案
美妆行业营销
数据与技术服务
增值服务
全球敏捷运维峰会 广州站
行业测肤技术服务
化妆品功效检测服务
4. About Meitu:全球布局
面向用户
美图秀秀
日本
土耳其
VCUS
美妆相机
美拍
Pomelo
BeautyPlus
美图问医 美图定制
剪萌
韩国
巴基斯坦
孟加拉国
泰国
尼日利亚
AirBrush
美颜相机
面向行业
菲律宾
加拿大
美国
墨西哥
越南
马来西亚
美图AI开放平台
美图宜肤
美图品牌星球
美图云修
印度尼西亚
Meitu ADX
广告流量联盟
截至 2020 年 12月,海外月活跃用户数近 1 亿。
此外海外用户总数达8.85亿,业务覆盖超过100个国家和地区。
全球敏捷运维峰会 广州站
巴西
5. About Meitu:变美核心数据
2.61
月活跃用户数
亿
22.2
亿
独立设备数
60
亿
照片和视频
每月产生数
数据截至2020年12月
全球敏捷运维峰会 广州站
6. 美图SRE的核心工作职责
低成本全链路监控大盘实践
基于企业IM机器人的图文告警实践
基于监控体系的SRE稳定性运营实践
未来展望
7. 美图SRE的核心工作职责
全球敏捷运维峰会 广州站
8. 美图SRE的核心工作职责
l 岗位:产品SRE
l 职责:
稳定性
① 保障线上服务的
建设 工具/平台/基础设施 提升 效率
③ 用技术手段来控制、优化服务的 运行成本
②
l 愿景:做美图服务最稳的大后方
全球敏捷运维峰会 广州站
9. 如何平衡3个核心职责之间的关系
稳定性
效率
成本
全球敏捷运维峰会 广州站
10. 如何量化评估?
If you can’t measure it,
you can’t improve it.
如果你不能度量它,
你就无法改进它。
---- Peter Drucker
彼得.德鲁克
全球敏捷运维峰会 广州站
11. 如何量化评估?
稳定性/效率 成本
SLO/SLI 资源使用量
MTTR/MTBF 资源利用率
一套稳定可靠的监控系统 必不可少
全球敏捷运维峰会 广州站
12. 低成本全链路监控大盘实践
全球敏捷运维峰会 广州站
13. 美图监控体系建设:监控组件选型
eBPF
全球敏捷运维峰会 广州站
14. 美图监控体系建设:梳理归纳
用户端监控
•
•
•
•
•
•
•
•
•
网络质量&异常
内容&DNS劫持
崩溃&卡顿
返回码
响应时间
错误率
慢请求
请求吞吐量
组合分析
•
•
•
•
•
•
•
•
直播推流/拉流
点播拉流
主播监控
视频监控
直播/点播统计
CDN质量
CDN评分
CDN日志
服务监控
业务监控
流媒体监控
•
•
•
•
•
•
•
业务可用性
访问量/错误
Profile监控
分布耗时
Trace监控
A/B Test监控
日志中心
•
•
•
•
•
•
•
基础资源
DNS/ELB
七层负载均衡
进程/端口
后端资源
云PaaS服务
SLA体系
产品运营指标
•
•
•
•
•
•
•
第三方拨测 自研流媒体监控 InfluxDB套件 ElasticStack
自研APM 自研CDN监控 SkyWalking 大数据流式处理套件
用户端质量监控体系
云IaaS监控
硬件监控
网络监控
专线监控
TCP监控
容器监控
内核监控
OpenFalcon
服务端质量监控体系
eBPF
Prometheus
15. 美图监控体系建设:统一报表入口
结果:监控数据汇总到同一个平台,权限统一管控
全球敏捷运维峰会 广州站
16. 美图监控体系建设:报表收敛/规范
客户端
典型请求链路
中间链路
LB入口
服务端
周边依赖
痛点:数据散落在多个Dashboard
全球敏捷运维峰会 广州站
后端资源
17. 美图监控体系建设:报表收敛/规范
形成流程规范
• Grafana中各种资源的申请和使用约束
• 数据源的管理规范
• 权限管理规范
• Org/报表命名规范
结果:监控数据 汇总到同一张Dashboard
全球敏捷运维峰会 广州站
18. 美图监控体系建设:还可以更进一步么?
多个平台
• 覆盖全面
• 数据散落?
• 权限混乱?
一个平台
一个页面
• 数据集中
• 权限统一 • 多张图表
• 分层展示
• 多个页面?
• 缺乏层次? • 关联关系?
• 全局视角?
监控报表的演进过程
全球敏捷运维峰会 广州站
更进一步?
• How?
19. 基于FlowCharting的监控大盘实战
全球敏捷运维峰会 广州站
20. 基于FlowCharting的监控大盘实战 - Step By Step: 绘制大盘
全球敏捷运维峰会 广州站
21. 基于FlowCharting的监控大盘实战 - Step By Step: 绘制大盘
全球敏捷运维峰会 广州站
22. 基于FlowCharting的监控大盘实战 - Step By Step: 导入Grafana
全球敏捷运维峰会 广州站
23. 基于FlowCharting的监控大盘实战 - Step By Step: 导入Grafana
全球敏捷运维峰会 广州站
24. 基于FlowCharting的监控大盘实战 - Step By Step: 绑定数据源
全球敏捷运维峰会 广州站
25. 基于FlowCharting的监控大盘实战 - Step By Step: 配置展示规则
全球敏捷运维峰会 广州站
26. 基于FlowCharting的监控大盘实战 - Step By Step: 配置展示规则
全球敏捷运维峰会 广州站
27. 基于FlowCharting的监控大盘实战 - Step By Step: 关联图形
全球敏捷运维峰会 广州站
28. 基于FlowCharting的监控大盘实战 - Step By Step: 重复上述步骤
全球敏捷运维峰会 广州站
29. 基于FlowCharting的监控大盘实战:最终效果
全球敏捷运维峰会 广州站
30. 基于FlowCharting的监控大盘实战:总结
方案优点
• 容易操作
• 展示灵活
• 无需复杂
技术支持
方案局限性
• 监控数据
需要前置
• 数据关系
静态维护
• 推广的边
际成本高
全球敏捷运维峰会 广州站
注意事项
• 元素数限
制(可突破)
31. 基于企业IM机器人的
图文告警实践
全球敏捷运维峰会 广州站
32. 基于企业IM机器人的图文告警实战-核心目标
Ø 提高告警消息的信息密度 (一图胜千言)
Ø 快速感知服务整体状态 (上下游/周边依赖)
Ø 缩短故障定位时间, 降低MTTR, 提升服务稳定性
全球敏捷运维峰会 广州站
33. 基于企业IM机器人的图文告警实战-思路介绍
全球敏捷运维峰会 广州站
34. 基于企业IM机器人的图文告警实战-Step By Step: 创建群机器人&Grafana API Key
获取企业微信Webhook
获取Grafana Org API Key
全球敏捷运维峰会 广州站
35. 基于企业IM机器人的图文告警实战-Step By Step: 获取Grafana-Panel图形链接
全球敏捷运维峰会 广州站
36. 基于企业IM机器人的图文告警实战-Step By Step: 获取Grafana-Panel图形链接
全球敏捷运维峰会 广州站
37. 基于企业IM机器人的图文告警实战-Step By Step: 获取监控Panel渲染图API调试
全球敏捷运维峰会 广州站
38. 基于企业IM机器人的图文告警实战-Step By Step: 配置告警策略&实现告警扩展
全球敏捷运维峰会 广州站
39. 基于企业IM机器人的图文告警实战-Step By Step: 告警示例
全球敏捷运维峰会 广州站
40. 基于企业IM机器人的图文告警实战:注意事项
方案优点
• 容易操作
• 方案简单
• 无需复杂
技术支持
方案局限性
• 监控图表
需要前置
• 推广边际
成本中等
全球敏捷运维峰会 广州站
注意事项
• 渲染组件
性能瓶颈
• 多Org权
限管理
41. 基于监控体系的
SRE稳定性运营实践
全球敏捷运维峰会 广州站
42. SRE稳定性建设全景图
Pre-MTBF
MTTI
MTBF
MTTK
MTTF
MTTV
MTTR
Post-MTBF
MTBF
故障改进
故障预防 故障发现 故障定位 故障恢复 灾备预案 监控告警 日志分析 故障隔离 故障复盘
容量评估 常规巡检 监控分析 容灾切换 改进验收
架构设计 用户反馈 链路跟踪 服务限流 故障模拟
监控覆盖 舆情感知 场景复现 服务降级 混沌工程
持续交付 智能预测 根因定位 异常熔断 周边清查
建设/演练/OnCall
应急响应
复盘/改进/OnCall
43. SRE稳定性建设全景图
Pre-MTBF
MTTI
MTTK
MTBF
MTTF
MTTV
MTTR
MTBF
故障预防 故障发现 故障定位 故障恢复
灾备预案 监控告警 日志分析 恢复确认
容量评估 常规巡检 监控分析 架构设计 舆情感知 链路跟踪 监控覆盖 智能预测 根因定位
建设/演练/OnCall
应急响应
效率
支撑
Post-MTBF
故障改进
故障复盘
复盘/改进/OnCall
成本
44. SRE稳定性运营实践: 回归核心价值 看 我们可以做什么?
稳定性
成本
效率/支撑
Ø 监控/告警覆盖 Ø 业务理解 Ø 资源用量监控
Ø 大盘推广应用 Ø 个性化支撑 Ø 资源利用率监控
Ø 应急响应 Ø 服务周期巡检 Ø 容量规划
Ø 灾备体系建设 Ø 稳定性运营报告 Ø 成本分析
Ø 容量体系建设 Ø 业务架构优化
持续输出
定期复盘
量化结果
不断迭代
全球敏捷运维峰会 广州站
长期主义
45. SRE稳定性运营实践: 我们做了什么? 巡检/统计(各类机器人)
SLA巡检 / 网络巡检
全球敏捷运维峰会 广州站
每日资源统计
46. SRE稳定性运营实践: 我们做了什么? 稳定性运营报告
稳定性运营报告体系
全球敏捷运维峰会 广州站
假节日运营报告
47. SRE稳定性运营实践: 我们做了什么? 稳定性运营报告
报告结构
报告内容样例
全球敏捷运维峰会 广州站
48. SRE稳定性运营实践: 演进方向
数据化
• 量化评估
• 数据思维
• 数据意识
自动化
• 解放人力
• 提高效率
体系化
• 有点到面
• 全局视角
• 能力扩展
全球敏捷运维峰会 广州站
智能化
• 数据分析
• 智能预测
• 科技赋能
49. SRE稳定性运营实践:我们正在做什么? 稳定性运营平台
运营报告-自动化
•
•
•
•
•
更多运营活动覆盖
覆盖已有报告场景
通用报告需求支持
数据解读/报告审批
统一接入规范
开放配置/报告分发&订
阅
全球敏捷运维峰会 广州站
•
•
•
•
OnCall轮值
节假日值守
SRE权威消息发布
故障发现/报告生成
50. SRE稳定性运营实践:我们正在做什么? 稳定性运营平台
报告列表
全球敏捷运维峰会 广州站
51. SRE稳定性运营实践:我们正在做什么? 稳定性运营平台
报告模板
全球敏捷运维峰会 广州站
52. SRE稳定性运营实践:我们正在做什么? 稳定性运营平台
报告批注
全球敏捷运维峰会 广州站
53. SRE稳定性运营实践:我们正在做什么? 稳定性运营平台
报告样例
全球敏捷运维峰会 广州站
54. SRE稳定性运营实践:我们正在做什么? 由「监」到「控」
全球敏捷运维峰会 广州站
55. SRE稳定性运营实践:我们正在做什么? 由「监」到「控」
全球敏捷运维峰会 广州站
56. SRE稳定性运营实践:我们正在做什么? 关于成本管控
成本报表
审批流程
资源申请 资源监控
资源分配 持续优化
成本核算
资源分配
利用率监控
压测平台
账单分析
资源评估
配额调整
容器平台 成本中心
监控系统 利润中心
全球敏捷运维峰会 广州站
57. 内容回顾 / 未来展望
全球敏捷运维峰会 广州站
58. 内容回顾
SRE核心价值 2个实践案例
• 稳定性
• 效率/支撑
• 成本 • 监控大盘
• 图文告警
全球敏捷运维峰会 广州站
稳定性运营
• 回归价值
• 持续输出
• 能力扩展
59. 未来展望
拥抱变化 顺势而为
葆有价值 泰然自若
云原生
容器技术
微服务
服务网格
全球敏捷运维峰会 广州站
DevOps
60. 未来展望:坚定地看好AI
全球敏捷运维峰会 广州站
61. THANK YOU!
全球敏捷运维峰会 广州站