1、PPTV系统平台建设实践,2014-11-10,演讲人:陈文春,自我介绍陈文春,1998-2002 中国 复旦大学(FuDan Univ)理学学士(B.S),2011-now PPTV技术产品部-系统平台部2007-2011 eBay 中国运营中心(COC)2004-2007 EbaoTech 全球第一大保险IT解决方案提供商2002-2004 金仕达卫宁 国内最大医疗IT系统提供商,PPTV的生产环境规模,?TB视频CDN带宽,100GB 网页CDN带宽,10k服务器,400台 网络设备,200个 CDN节点,10 个 核心IDC节点,60次/周自动化上线,10K计算云CPU core,15
2、0万个 监控点,40万个 告警点,10GB核心机房带宽,4k计算云节点,20亿次/天 单个服务池访问量,421个 核心IDC服务池,10TB 分布式缓存服务,10PB 分布式存储服务,Virtualization Servers、IDC servers(CloudStack、Zabbix、Puppet、ControlTier、LVS、Racktable)业界领先的运维系统平台:标准化,自动化,平台化,服务化,底层运维,产品技术体系,挑战与特点,大中型互联网系统的特点:高并发,高流量高可用海量数据用户分布广泛,网络情况复杂需求快速变更、发布频繁快速扩张业务调用复杂,容易产生级联风暴,目标,可伸缩
3、性(Scalability)弹性伸缩可用性(Availability)服务拆分多数据中心、灾备机房Canary预警敏捷性(Agility)持续部署自助服务和管理基础组件服务化(应用开发关注应用逻辑实现,底层组件服务化、组件化)效率(Efficiency)资源池容量规划替代容量预测、可监控性自动监控注册健康告警,路线,硬件资源系统应用程序技术栈,配置管理应用部署监控告警资产管理,基础服务平台技术解决方案,服务资源池快速响应、按需分配容量规划,数据化,web服务技术架构抽象,IaaS&PaaS计算云(Cloudstack)分布式缓存服务(Cache As A Service)存储云(Opensta
4、ck Swift,GlusterFS,HDFS)分布式消息队列服务(MQ As A Service)PPKeeper(Zookeeper As A Service)分布式日志收集服务(Events As A Service),总览,Iaas&PaaS负载均衡服务,Iaas&PaaS负载均衡服务,标准化、批量配置水平扩容API调用接口发布系统计算节点onlineoffline权重,Iaas&PaaSCloudstack计算云,非标准化,质量不可控流程长,路径依赖多,人力成本高缺乏弹性,Iaas&PaaSCloudstack计算云,基于CloudStack的部署管道演进,Iaas&PaaSClou
5、dstack计算云,基于CloudStack的部署管道演进,基于CloudStack的部署架构在PPTV,Iaas&PaaSCloudstack计算云,Iaas带来益处,自助服务知识和技能可以通过工具和系统转移替代解决路径依赖问题、缩短环节管理自动化降低手动操作和犯错的机会减少40%基础服务管理流程标准化和效率10倍应用部署效率提升确保应用部署一致性及质量敏捷和弹性 弹性化更好地为计划外停机时间做好准备 减少故障发现和恢复时间基于资源池的容量规划,Iaas&PaaSCloudstack计算云,跨IDC分布式全局缓存服务数据分区(Consistent Hash)集群成员维护和失败检测高可用弹性容
6、量管理简化的应用调用和配置,Iaas&PaaS缓存服务,Iaas&PaaS缓存服务,缓存服务-HASH模式,Redis Instance,HAPROXY,twemproxy,LVS,twemproxy,Redis Instance,Redis Instance,Consistent Hash,Shard 1,Shard 2,Shard n,HASH模式提供缓存服务,非持久化存储集群提供自动数据分片单个Redis实例宕机只影响部分数据动态扩容,Iaas&PaaS缓存服务,缓存服务HASH+HA模式,Redis Master,HAPROXY,twemproxy,LVS,twemproxy,Redi
7、sAgent,Redis Slave,Redis Master,Redis Slave,Redis Master,Redis Slave,Consistent Hash,Shard 1,Shard 2,Shard n,Redis Sentinel,HASH+HA适用于有存储需求的业务在Hash模式基础上增加单实例镜像基于Redis Sentinel实现单实例故障自动主从切换支持动态扩容,Redis Master,Iaas&PaaS缓存服务,Iaas&PaaS缓存服务,读写分离的缓存服务多机高可用故障节点自动下线权重控制在线水平扩容,基于OpenStack Swift 对象存储云部署架构,Sit
8、e-to-Site VPN,Auth,L3 Core Switch,Top of Rack Switch,BGP/多线 IDC(Primary),Storage Nodes,Proxy Nodes,Zone1,zone2,zone3,zoneN,Load Balancer,Internet,Download from Single Node,Upload Requires Quorum,电信 IDC(offsite),3 replicas are written in primary IDCasynchronous replication to offsite IDCTwo copies in
9、 primary IDC,one copy in offsite IDC,Iaas&PaaS分布式对象存储,OpenStack Swift 部署最佳实践,主节点部署在多线或者BGP机房Swift 使用DR集群模式构建2份数据存储在主节点,1份数据存储在DR节点主节点IDC故障,服务降级切换到DR站点只读模式负载均衡使用LVS DR模式使用OSPFLinux 内核调优Network buffer中断均衡借鉴和引入TaoBao Kernel调优经验Swift Proxy Node使用10G网络单个Container存储数据量小于100w使用SSD在Account和Container server所
10、有日志发送到远程存储,避免使用本地syslog方式收集日志(Python Bug),Iaas&PaaS分布式对象存储,Iaas&PaaS分布式文件存储,GlusterFS分布式文件系统多点挂载写入图片等静态资源的CDN源站,分布式消息队列服务(MQ As A Service),RabbitMQ部署模式单机房部署,集中式管理镜像模式:提供高可用直接路由模式:提供高性能统一MQ管理平台MQ实例快速部署监控容量管理,Iaas&PaaS消息队列服务,PPKeeper(Zookeeper As A Service),PPKeeperZookeeper3.4.5Java Client:Curator服务端
11、管理:ExhibitorZnode可视化管理在线扩容、备份和恢复分布式锁命名服务集群管理数据发布与订阅,Iaas&PaaSPPKeeper服务,分布式日志收集管道(Events As A Service),SDK,FLM-Agent,App Cluster,SDK,FLM-Agent,App Cluster,SDK,FLM-Agent,App Cluster,Avro Source,Channel1,Channel2,Channel3,HDFS SINK,Flume-NG Collector Cluster,File Sink,KafkaSink,Hadoop,Disk,events,even
12、ts,events,Iaas&PaaS日志收集服务,分布式日志收集服务(Events As A Service),事件传输和捕获:Flume-NG扩展SDK添加业务相关属性,简化app端配置和部署每个App Server启用两个Flume agent,分别提供APP层和系统安全日志传输基于avro 压缩传输到Flume集群会聚和路由,部分敏感日志使用加密传输Sinks:Kafka,HDFS,File SystemData Bus:Apache Kafka流处理(Storm):实时访问统计、Security和系统告警、DNS、防火墙日志实时索引和搜索(ElasticSearch):APP日志分析
13、查询、QOS统计分析可视化展现(Kibana)HDFS:M/R 离线计算;长期数据存储,Iaas&PaaS日志收集服务,MaaS(Management As A Service)Racktable数据中心管理自动化服务器安装平台配置管理平台监控和告警管理平台计算层自动化管理平台自动化发布系统权限及消息订阅系统,总览,MaaS RackTable数据中心管理,IDC机房管理机柜位置服务器信息网络连接拓扑,MaaS自动化服务器安装平台,高效率:安装100台服务器,只需1个人花10分钟标准化:无论谁安装,系统都统一线上标准,MaaS磁盘管理平台,磁盘信息状态直观展现故障磁盘自动屏蔽/上线通知/记录/
14、报表,监控告警,触发事件,自动下线,故障修复,自动上线,硬件层监控物理硬件健康状况系统层监控OS级别相关监控安全应用层监控应用相关健康状况监控容量监控和规划告警服务监控信息订阅,MaaS监控和告警服务,MaaS监控和告警服务,网络质量监控系统,IDC网络质量=【外部质量+内部质量】=互联网业务的基石,Nightwatch-外部网络质量监控系统,smokeping-内部网络质量监控系统,直观:颜色反映质量,一目了然全覆盖:核心网+CDN+内网VPN自动报警:邮件+短信历史查询:任意时间追溯,MaaS配置管理平台,MaaS计算层自动化管理,计算层自动化管理(服务池),负载均衡系统,Cloudsta
15、ck系统,监控&告警,CMDB资产管理,配置管理,自动部署,MaaS计算层自动化管理,MaaS自动化部署系统,多服务池类型支持JAVA/PHP/NodeJS/软件包机房串并行控制灰度发布集成负载均衡自动化管理离线,发布,验证,上线一体化集成权限及消息订阅系统通知到服务池相关测试、产品、研发集成监控告警系统自动屏蔽发布过程中产生的误告警集成计算层管理系统自动加入、删除计算节点,MaaS权限及消息订阅系统,分业务及服务池进行权限管理自动发布系统权限服务器登录LDAP账号管理生产环境消息订阅(告警、发布、变更),体会和经验高内聚,松耦合的多系统松散结构小步快跑,快速迭代80:20原则紧跟时代潮流,新技术提前预研Next Step平台化服务化数据化,Q&A,Q&A,谢谢!,
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1