本文根据孙燕老师在《2019DAMS中国数据智能管理峰会》现场演讲内容整理而成。
讲师介绍
孙燕,微博广告基础运维负责人,2009年入职新浪,任职10年间参与博客、图片、视频、微博平台监控、微博广告多个产品运维,致力于运维自动化、产品架构优化、服务治理、智能监控及以监控为依托的服务容灾建设。
图片来源于:DBAplus社群
前言
微博现在日活达到了2亿,微博广告是微博最重要且稳定的收入来源,没有之一,所以微博广告系统的稳定性是我们广告运维所有工作中的重中之重。
微博广告的运维主要负责资产管理、服务稳定性维护、故障应急处理以及成本控制等多个责任。
微博广告运维发展经历了如下阶段:从早期小规模的手工运维到工具化运维,随着服务器数量的发展,业务模型日渐发展,开发、运营、QA都参与到产品的生命周期中,我们现在也进入了自动化运维的阶段,在新的虚拟化技术、算法技术的驱动下,我们也在朝着AIOps的方向努力。
图片来源于:《2019DAMS中国数据智能管理峰会》PPT
在整个运维过程中,我们遇到了很多痛点,幸福的人生都是一样的,不幸的人生各有各的不幸,各家的运维都各有各的痛点。
我们的服务器在3000台以上,业务线及辅助资源各种各样,产品迭代非常快,且依赖关系复杂,流量变更,切换损失不可接受。
在这种情况下,我们面临资产管理困难、环境不统一、上线难度大、运维成本高的问题。
图片来源于:《2019DAMS中国数据智能管理峰会》PPT
基于这些问题,微博广告运维工作主要集中在以下四个方面:运维自动化平台建设、弹性计算、智能监控、服务治理。
图片来源于:《2019DAMS中国数据智能管理峰会》PPT
运维自动化
一个健全的自动化运维平台必须要具备如下几个功能:基础监控、资源管理、事件集中分析、配置管理、批量运维工具、持续集成和发布。
图片来源于:《2019DAMS中国数据智能管理峰会》PPT
基于这些功能和需求,我们广告运维自主研发了Kunkka平台(微博广告运维自主研发的自动化运维平台)、资产管理、自动化上线等运维平台。
资产管理是基于公司CMDB(公司级别的资产管理系统)获取到主机云服务器,针对微博广告对资源的管理需求自建定制化的资产管理平台;配置中心包括服务注册、服务配置等功能;自动化上线涵盖了开发在上线过程中所需要的节点和流程;自主终端是行业变化的功能实现,大家可以通过页面完成文件或命令下发、日志审计等各种工作。
图片来源于:《2019DAMS中国数据智能管理峰会》PPT
Kunkka基于主机和容器,通过Salt作为传输层进行命令下发,组件层包含开源软件,操作层将命令页面化,通过页面进行日常工作和管理。
图片来源于:《2019DAMS中国数据智能管理峰会》PPT
这样的自动化运维平台基本上满足了运维的日常操作需求,在Kunkka平台中还有自动扩缩容的功能,我们针对这个功能进行延伸。在自动扩所容的基础上,根据时间段,流量进行动态判断,自动决策的扩所容够功能。