点击空白处退出提示
作品详情
运维职责
运维平台
当前我司运维平台主要有3个:
持续集成和交付
①基于Jenkins持续构建
②支持容器化打包和部署
③发布平台,支持灰度发布,异常快速回滚
监控告警平台
①完善的监控体系:覆盖机器、网络、服务和客户设备维度
②快速的异常发现和告警
③灵活的告警通知方式:LCP、邮件、微信、电话
问题定位平台
①基于ELK实现日志采集、上报、告警
②采集软件平台所有组件的运行日志
③通过调用链分析和定位设备问题
平台运营情况
持续集成和交付
持续集成(CI),微服务组件全部改造成容器化部署,并通过K8S实现编排。
持续交付(CD),做一个版本发布平台:支持灰度、蓝绿发布、版本回滚。
监控平台
公司之前一直使用的是zabbix+grafana的监控方式,随着我们的微服务推行容器化后,k8s应用的监控需求增加,Prometheus会更适合容器的监控。另外,Prometheus用的就是自研的 TSDB,Zabbix 则用的是 MySQL 或 PostgreSQL,在高并发的情况下,时序型数据库读写性能是远高于关系型数据库的,同时还提供了很多内置的基于时间的处理函数,简化数据聚合的难度。因此我们现在也逐步将Zabbix迁移到Prometheus。目前监控平台采集覆盖基础资源38项,102个组件、9项业务监控。
问题定位平台
背景:线上用户反馈设备使用异常,研发或QA介入排查,经常出现问题定位时间太长,问题反馈不及时,客户体验较差。因此需要开发一个问题定位平台,聚合一些设备日志和监控数据进行分析,缩短研发定位时间。
模块涉及到主要概念
•Flow:表示处理问题的流程
•Action:表示Flow中需要执行的操作,是有序的,是在程序中封装好的对数据源的小粒度操作
•Situation:用户定义的问题场景,用于描述该问题场景下日志的分析规则
situation由用户创建,在查询时需要指定该参数,会根据situation中的规则分析出请求日志之间的顺序。
平台演示
后记
这三大运维平台用的都是开源系统,总共有12个系统,Sonar、Jenkins、Ranche、Consul、ELK、Admin-Service、Zabbix、Prometheus、Smokeping、Grafana、Skywalking、Jumpserver。后续会基于Jenkins开发一个Devops集成平台,将这些系统进行整合,以便更好地支持前端业务交付。
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
评论