Apache Pulsar在科大讯飞SRE的实践-定版

如果无法正常显示,请先停止浏览器的去广告插件。
分享至:
1. Apache Pulsar 在科大讯飞SRE的探索与实践 主讲人:刘侃
2. 目录 业务简介 Apache Pulsar在讯飞的演进 服务保障体系 未来规划
3. 01 PRAT 01 业务简介
4. 业务简介  为讯飞内部使用PaaS平台业务提 供高吞吐、低延迟服务  十亿级数据/天  跨多可用区数据同步
5. 服务保障难点及高效SRE的迫切性 服务保障难点 高效SRE的迫切性 • 业务流量近十几倍的上涨,偶现 • 接入MQ业务线的增多服务的梯级 现网集群流量洪峰时的不稳定 • 集群扩容业务的感知和数据在新 老节点平衡问题 保障(50+业务线) • 端对端消息写入及数据同步的延迟 • 业务接入MQ的流程化及规范化 • 跨可用区数据同步时延及幂等性 • 持续服务业务的能力 • 维护多套集群,tickets复杂度 • 降本增效
6. 02 PRAT 02 Apache Pulsar在讯飞的演进
7. 选择Apache Pulsar  业务收敛,将多个小的集群的流量聚合至Pulsar  减少运维工作量,提高生产效率,让业务聚焦于数据  集群服务存算分离,扩展性高,计算节点的无状态性  多租户的友好支持,便于服务通过租户对业务进行隔离  高效率的Geo-replication数据同步能力  提供多个语言的SDK,接入度及社区活跃度高
8. Apache Pulsar在科大讯飞演进 2021.09 2022.03 Apache Pulsar Apache Apache Pulsar Apache Pulsar 调研综述 Pulsar压测 性能调优 上线 2021.07 2022.02
9. 03 PRAT 03 服务保障体系
10. 服务分级保障
11. SRE保障体系
12. 架构设计
13. 容量规划及流量评估  根据业务增长的规模(50+业务线)进行规划  根据现有接入业务线申请总流量进行评估
14. 容量模型
15. 容量模型实践  场景一:只生产不消费,异步刷盘,journal和ledger盘单独挂载,持续时间30min
16. 容量模型实践  场景二:只生产不消费,同步刷盘,journal和ledger盘单独挂载,持续时间30min
17. 硬件规划建议  物理机,48C256G,万兆网卡  每台机器规划六块SSD磁盘  ZooKeeper的log、datalogs盘独立SSD,保障ZooKeeper读写低延迟  Bookie的journalDirectories独立挂载两块SSD,提高journal写盘及刷内存表并发能力  Bookie的ledgerDirectories独立挂载三块SSD,减少ledger在切换期间时延
18. Pulsar监控告警链路  多可用区互监控  基础信息多可用区同步  集群信息自动同步  默认告警策略自动添加  默认告警规则自动下发  告警策略规则自由定义  支持短信、邮件和微信  秒级延迟  月、周、天报表
19. 核心指标  Broker端指标监控topic 流量,用以调整broker端 负载的均衡  Bookie端指标监控 journal及ledger数据刷盘 情况,排查数据读写问 题  ZooKeeper端指标监控 兜底监控整个集群元数 据读写延迟状态
20. 监控展示
21. 告警策略
22. 服务限流  根据业务提供的申请表内容评估峰值流量,调整生产者流量限制  限流能更好的利用集群磁盘及网卡的资源,保障集群稳定
23. 遇到的问题  问题1:在特定业务需要写入单条消息容量较大情况下,bookie出现readOnly模式? 原因: broker服务与bookie服务限制消息大小不一致,客户端发送的消息在broker端正 常,发送到bookie端被bookie拒绝,触发broker重试机制。 解决:配置参数调整dispatcherMaxReadSizeBytes, nettyMaxFrameSizeBytes。
24. 遇到的问题  问题2:zk的data,datalog盘与bookie的journal及ledger盘混用,读写性能,集群稳定? 原因:bookie的jorunal及ledger盘读写IO会出现高水位情况,导致zk的读写延迟升高 解决:将zk的数据盘与bookie读写数据盘进行物理隔离,专盘专责。
25. 遇到的问题  问题3:集群中某些broker节点流量不均衡,造成集群内其他机器较为繁忙? 原因:现阶段broker触发load-balancer的策略,目前是统计单台节点heap,direct- heap,cpu,bindwithIn,bindWithOut的使用比例取其中一个最大值跟默认阈值85%对比 解决:基于权重的负载均衡策略,修改loadBalancerLoadSheddingStrategy  问题4:在高吞吐业务场景环境下,遇到broker-direct-memory-OOM,进程down? 原因: 底层bookie写入变慢,导致大量消息堆积在broker的堆外内存,直至OOM。 解决: 生产环境下,不能保证底层bookie始终写入低延迟,在Broker层针对特定 namespaces或topics开启限流策略  问题5:业务提出是否可以提供统一IP供客户端访问? 原因:serviceUrl配置列表太长,扩容broker节点,业务需要同步修改配置文件 解决:结合业界成熟的VIP方案,搭建keepalived+haproxy高可用架构
26. 04 PRAT 04 未来规划
27. 未来规划  Apache Pulsar服务的认证授权,进一步提高系统安全性  同城双中心,保障集团更多的业务接入Apache Pulsar更加高效稳定  尝试与更多例如:Apache Flink,Apache Spark等大数据组件结合,完善生态  Kubernetes应用Apache Pulsar探索,做到开箱即用,降低部署难度
28. 谢谢! Q&A

Home - Wiki
Copyright © 2011-2024 iteam. Current version is 2.137.1. UTC+08:00, 2024-11-17 04:24
浙ICP备14020137号-1 $Map of visitor$