构建高效的研发与自动化运维.docx
- 文档编号:14616414
- 上传时间:2023-06-25
- 格式:DOCX
- 页数:11
- 大小:1.15MB
构建高效的研发与自动化运维.docx
《构建高效的研发与自动化运维.docx》由会员分享,可在线阅读,更多相关《构建高效的研发与自动化运维.docx(11页珍藏版)》请在冰点文库上搜索。
构建高效的研发与自动化运维
构建高效的研发与自动化运维
所谓IT运维管理的自动化是指通过将日常IT运维中大量的重复性工作,小到简单的日常检查、配置变更和软件安装,大到整个变更流程的组织调度,由过去的手工执行转为自动化操作,从而减少乃至消除运维中的延迟,实现“零延时”的IT运维。
简单的说,IT运维自动化是指基于流程化的框架,将事件与IT流程相关联,一旦被监控系统发生性能超标或宕机,会触发相关事件以及事先定义好的流程,可自动启动故障响应和恢复机制。
自动化工作平台还可帮助IT运维人员完成日常的重复性工作(如备份,杀毒等),提高IT运维效率。
同时,IT运维的自动化还要求能够预测故障、在故障发生前能够报警,让IT运维人员把故障消除在发生前,将所产生损失减到最低。
运维应包括如下:
∙环境定义:
开发环境、测试环境、类生产环境、生产环境等。
∙部署:
能够将部署包有效的部署到不同的环境。
∙监控:
能够监控部署后的系统和应用。
∙告警:
出现问题时的响应和处理机制。
∙性能优化:
系统各个服务如Nginx/Java/PHP/DB/网络的优化。
∙SLA保障:
通常要和业务相关部门讨论确定。
服务治理、任务调度、集群协同、调用链分析、接口质量、SQL质量、实时日志等
打包、自动化测试、检测、灰度发布、分区上线、运维自动化、配置标准化、指令标准化等
分布式框架、存储&缓存中间件、自动化测试、云搜索、开放平台、营销平台等基础设施
自建技术基础设施(开源+自研)
•自动化发布系统——灰度发布、分区发布
•运维配置自动化系统——运维系统自动发现、标准化配置
•原子指令系统——支持数百台服务器、数百个原子脚本操作
•搜索平台——支持数百个索引、上亿条数据
•推荐计算平台——支持数亿用户数据计算
•API自动化测试系统、Mock模拟测试系统——支持接口的自动化测试、模拟测试、Web自动化测试
•API放水系统、SQL防水系统——治理系统不合理调用
•实时日志系统——支持Nginx、Tomcat、BI实时日志和离线跟踪
•分布式开发框架——统一分布式通信
•配置分发系统——支持配置项、集群服务发现
•MQ分布式消息中间件(推模式IDP、拉模式Kafka)——1500w/周一~周五,600w/周六日
•KV分布式缓存系统中间件(Memcached、Redis、Tair)——亿级数据缓存、95%命中率
•LPFS分布式文件中间件(MongoDB)——MongoDB、图片、文件
•DB数据库分库分表中间件(MySQL)——无限数据量扩展
•分布式任务调度中间件(Schedule)——支持100+服务、200+/日个分布式任务调度
•Push统一消息推送平台——每日100w+推送量,推送至Android、iOS、Email、SMS、微信、Comet
依赖开源的技术栈
•语言:
Java(Tomcat/Spring)Shell(运维)Nodejs(前端) AndroidiOS
•分布式:
ActiveMQKafkaZookeeperRouter服务发现Cat
•存储:
MysqlMongodbTairMemcachedRedis
•计算:
SolrElasticSearchHadoopHBaseStormSpark
•运维:
LinuxNginxPuppetZabbixOpenStack
•项目管理:
EclipseGitMaven构建Hudson持续集成Confluence知识分享 DMS项目管理
开发阶段Code/build
•开发框架
•|-web开发框架Swift
•|-nodejs前端开发框架
•|-ios移动开发框架
•|-android开发框架
•|-shell脚本自动化
•分布式中间件
•|-分布式调用RPC
•|-实时推送comet
•|-推消息队列IDP
•|-拉消息队列Kafka
•|-配置系统Zookeeper
•|-调度系统Scheduler
•存储中间件
•|-关系存储mysql
•|-文件存储mongodb
•|-KV存储tair
•|-二级缓存redis
•|-一级缓存memcached
•计算平台
•|-云搜索
•|-推荐
•|-大数据计算
•|-网页解析
•|-文本解析
•|-Word预览
测试阶段Test/ci
•|-API自动化测试
•|-API模拟测试Mock
•|-Web自动化测试Selenium
•|-微信测试WXTest
•|-Open测试KATest
•|-测试环境发布
上线阶段Release/deploy
•|-发布系统
•|-运维系统
•|-代码检测Builder运维阶段
运维系统Monitor
•|-自动化系统
•|-监控系统Zabbix
•|-雷达日志系统
•|-Puppet/Mco
服务治理Service
•|-API放水系统APIWater
•|-SQL放水系统MonyogSQL
•|-Router服务中心
•|-配置分发系统
•|-调度系统Scheduler
•|-调用链系统Cat运营阶段
•开放平台
•|-微信平台Weixin
•|-微博平台Weibo
•|-电话平台Jiya
•|-支付平台Pay
•|-开放平台API
•|-SEO平台Resource
•运营平台Channel
•|-推送平台Push
•|-短信平台Push
•|-邮件平台Mail
•|-微信平台Open
•|-私信平台MessageCode
1、分布式服务架构
服务发现、通信、控制
分布式注册中心Router:
•同步调用RPC
•服务协议:
HTTP协议/心跳检测
•服务发现:
集群信息统一文件Router.conf
•负载均衡
•异步调用MQ
•推模式:
开发快、稳定、实时快
•拉模式:
可回溯、日志收集、数据同步
•分布式任务调度
•Schedule调度系统
•分布式事务控制
•Swift开发框架:
交易型事务的一致性
2、运维研发的自动化体系
运维配置标准化3大层次
•2.1、硬件标准化:
•-机器标准化:
机房、机架位、交换机、机器
•-资源标准化:
IP、DNS
•-配置标准化:
机器配置自动化采集、标准化检测,KVM化
•2.2、软件标准化:
•-软件安装标准化:
tomcatjdkmemcachedredis...
•-Nginx标准化:
域名、配置、发布
•2.3、项目标准化:
•-项目配置标准化:
S区、A区、B区、C区
•-支持多种项目:
tomcat、java、nodejs、Python、ios\Android
2.1、硬件标准化—自动化采集
2.2、软件标准化—统一软件规格
2.2、软件标准化—自动化安装卸载
2.2、软件标准化—服务自动管理
2.2、Nginx标准化—自动配置300域名
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 构建 高效 研发 自动化
![提示](https://static.bingdoc.com/images/bang_tan.gif)