技术|阿里10年:一个普通技术人的成长之路( 二 )


工具PE的事情稳定后我又接到了一个事情,负责整个集团开发测试环境的资源管理,测试环境当时有好几万台服务器,但没有人知道哪些机器在用以及谁在用,而且每年还有数千台的物理机新增预算,成本浪费非常严重。我接手后首先建设了一个资源生命周期管理系统,使所有新资源的申请全部经过系统,并且对已有资源发起盘点和认领,所有资源设置有效期,到期后可以续租或释放,系统还会定期巡检资源的使用情况,再配合宕机回收、闲置降配等运营策略,最终将测试资源盘点的清清楚楚,不仅年度预算0新增,还将回收的几千台物理机在双十一时支援了生产环境。再后来继续尝试通过混部提升测试资源使用率,调研多个方案后选择了跟jstorm团队合作,但上线后经常出现jstorm任务把测试机资源占满,影响业务的日常测试引发投诉,受限于当时技术限制最终没能继续推进下去。
从参与一个跨团队项目到负责一个跨团队项目,再到做一个产品解决业务问题,这是我成长最快的两年。
3天基
关键词:StarAgent、Argus、云监控
2016年初我转岗到了产品技术团队做StarAgent,SA是一个非常重要的基础产品,核心功能是命令通道,几乎所有操作服务器的场景都强依赖它,但过去SA一直做的不太好,有很长一段时间只有半个人在兼职支持。我当时的想法也比较简单,就是想改变这样的局面。产品得不到重视的原因我觉得是命令功能过于单一,业务价值需要结合场景才能体现出来。所以做的第一件事是Portal,推动SA从后台往前台走,第一个功能是插件平台,提供将一个面向全网的发布能力,发布的对象可以是各种运维脚本或者agent,并且新扩容服务器也会自动安装。这样做的目的是希望将SA的最大优势全网覆盖能力开放出来,使上层系统可以将更多执行逻辑下放到机器,而不是都转换为命令频繁调用SA。
插件平台的主要用户群体是各个业务运维系统,但是一线开发和运维人员也经常需要登录服务器执行命令,为了能覆盖到这部分用户又推出了第二个功能WEB终端,人执行命令的场景又可以分为单机的交互操作和多机的批量操作,所以WEB终端又分为交互终端和批量终端两个子功能,WEB终端在保证安全的前提下解决了人操作服务器的效率问题。
插件平台统一全网类变更入口后,我们也看到全网类Agent越来越多,每台服务器都有N个运维类Agent,进一步梳理后发现监控类Agent是最多的,因此又发起监控Agent融合的项目,统一后的新Agent叫Argus,完成集团内的agent融合后继续走向公有云,目前公共云外部客户和阿里内部使用的监控Agent都是同一套代码。
在Argus完成集团内多套监控系统的Agent统一后,进一步分析会发现所有监控系统的采集实现都有类似性,Argus对接的上游是配置下游是通道,将配置、采集、通道三部分组合起来就是标准的数据采集,因此又与alimonitor团队合作,复用已有的配置和通道能力建设了一个覆盖全网的通用数据采集平台。随着在监控领域做的越来越深入,后来干脆专注于监控场景,将SA的事情全部交接了出去,目前我的主要职责是为业务上云提供一站式监控方案,包括云资源监控、主机监控、业务监控、链路监控等。
埋头做了好几年的产品,但是产品的深度都没有达到自己的预期。主要问题我觉得是过于关注产品技术本身,没有做到以业务价值驱动,导致未能获得持续的资源投入。
这三个阶段我会用三个词概括:做事情-->做项目-->做产品。
做事情和做项目的重点是“正确的做事”,区别是项目多了一层协作。做产品的重点是“做正确的事”,不仅需要关注当下结果,更重要的是如何持续走到未来。
三我的成长
“很傻很天真,又猛又持久。”我觉得这句话可以形容我的待人和做事风格,待人方面我会默认相信每一个人,做事方面因为比较笨就会比别人下更多功夫。这些年我始终坚持在一个领域,比别人投入更多的时间和精力,在经历一次又一次失败后,不断的吸取经验和教训使自己成长。期间也有过很多次想打退堂鼓,最艰难的时刻总能想到一句充满力量的阿里土话安慰自己。
1关于晋升
互联网行业招人时经常会说一句话,岗位对标阿里的P几,这一点足以说明在阿里级别的重要性,所以晋升对每个人来讲都很重要。但当我们把级别看的很重时也带来了问题,级别变成了每个人的第一标签,合作时首先看你的级别而不是负责什么,做事情首先想到的是晋升而非价值。今年公司在这方面已经有所调整包括隐藏职级等,希望可以让我们回归到用事情价值和成就感来驱动自己。