微博广告系统全景运维大法

微博现在日活达到了 2 亿 , 微博广告是微博最重要且稳定的收入来源 , 没有之一 , 所以微博广告系统的稳定性是我们广告运维所有工作中的重中之重 。

微博广告系统全景运维大法

文章插图
微博广告的运维主要负责资产管理、服务稳定性维护、故障应急处理以及成本控制等多个责任 。
微博广告运维发展经历了如下阶段:从早期小规模的手工运维到工具化运维 , 随着服务器数量的发展 , 业务模型日渐发展 , 开发、运营、QA 都参与到产品的生命周期中 , 我们现在也进入了自动化运维的阶段 , 在新的虚拟化技术、算法技术的驱动下 , 我们也在朝着 AIOps 的方向努力 。
微博广告系统全景运维大法

文章插图
在整个运维过程中 , 我们遇到了很多痛点 , 幸福的人生都是一样的 , 不幸的人生各有各的不幸 , 各家的运维都各有各的痛点 。
我们的服务器在 3000 台以上 , 业务线及辅助资源各种各样 , 产品迭代非常快 , 且依赖关系复杂 , 流量变更 , 切换损失不可接受 。
微博广告系统全景运维大法

文章插图
在这种情况下 , 我们面临资产管理困难、环境不统一、上线难度大、运维成本高的问题 。
微博广告系统全景运维大法

文章插图
基于这些问题 , 微博广告运维工作主要集中在以下四个方面:
  • 运维自动化
  • 弹性计算
  • 智能监控
  • 服务治理
运维自动化
微博广告系统全景运维大法

文章插图
一个健全的自动化运维平台必须要具备如下几个功能:
  • 基础监控
  • 资源管理
  • 事件集中分析
  • 配置管理
  • 批量运维工具
  • 持续集成和发布
基于这些功能和需求 , 我们广告运维自主研发了 Kunkka 平台(微博广告运维自主研发的自动化运维平台)、资产管理、自动化上线等运维平台 。
微博广告系统全景运维大法

文章插图
资产管理是基于公司 CMDB(公司级别的资产管理系统)获取到主机云服务器 , 针对微博广告对资源的管理需求自建定制化的资产管理平台 。
配置中心包括服务注册、服务配置等功能;自动化上线涵盖了开发在上线过程中所需要的节点和流程 。
自主终端是行业变化的功能实现 , 大家可以通过页面完成文件或命令下发、日志审计等各种工作 。
Kunkka 基于主机和容器 , 通过 Salt 作为传输层进行命令下发 , 组件层包含开源软件 , 操作层将命令页面化 , 通过页面进行日常工作和管理 。
微博广告系统全景运维大法

文章插图
这样的自动化运维平台基本上满足了运维的日常操作需求 , 在 Kunkka 平台中还有自动扩缩容的功能 , 我们针对这个功能进行延伸 。
在自动扩所容的基础上 , 根据时间段 , 流量进行动态判断 , 自动决策的扩所容够功能 。
弹性计算
为什么需要弹性计算
微博广告系统全景运维大法

文章插图
首先 , 在产品方面 , 我们的产品线很多 , 依赖关系比较复杂 。
微博广告相当于一个桥梁 , 左边连接的是广告主 , 右边连接的是客户 , 需要将广告主的广告计划转化为用户的需求 , 让用户看到自己想要看的广告 。
为了满足两边不同的需求 , 产品的变更和发布非常重要且频繁 。
其次 , 在运营方面 , 很多有推广需求计划的大型活动都有临时扩容需要 , 比如 618 跟双十一 , 对于我们而言这两个活动带来了很大的冲击 。
在 618 和双十一大促之前 , 为了加大自己的影响力 , 各个广告主会增加广告计划 , 微博广告这边再针对广告主的行为加大我们的曝光量 , 实现广告主广告计划的转化 。
在 618 和双十一大促之前 , 为了加大自己的影响力 , 各个广告主会增加广告计划 , 微博广告这边再针对广告主的行为加大我们的曝光量 , 实现广告主广告计划的转化 。


推荐阅读