当前位置: 首页 > 科技观察

WOT2016黄霁:小米运维发展的关键节点有哪些?_0

时间:2023-03-12 13:50:36 科技观察

小米的运维理念是NoOps,意思是将运维的日常工作尽可能自动化,减少人工运维操作。作为运维人员,没有人愿意每天重复那些繁琐的运维操作;没有人愿意每天都处于高度紧张的状态,随时准备应对线上故障。  小米运维系统借鉴开源软件,根据具体场景进行优化。同时也逐步开源一些常用的运维组件。目前,其发展已趋于成熟。本报记者特意采访了【WOT2016互联网运维与开发者峰会】小米运维特约讲师、高级工程师黄骥,分享小米运维发展中的关键节点以及未来对自动化发展的期待.  讲师介绍小米运维高级工程师黄骥  黄骥,目前在小米运维部负责主机资源虚拟化和业务部署自动化,搭建私有类PaaS平台,实现管理部分的业务部署和容量自动化,资源利用率优化;涉及业务部署与发布、容量管理与调度、资源虚拟化等。  小米运维一开始就提出了以NoOps作为工作开发核心的思想,因此高效、系统、高度自动化运维系统是运维工程师一直致力于和追求的目标。他们不断努力,努力将任何低效、高风险的人工管理转化为高效、可靠的自动化管理,提高运维效率和业务稳定性。  所谓NoOps,就是通过一个自动化的系统,完全管理和维护在线业务,自动完成发布上线、故障诊断、容量调整等工作。从简单到复杂的运维工作,都不需要运维介入。而这需要相当程度的业务标准化支持、众多的基础设施依赖和系统化的运维体系建设。因此,实现这一愿景任重而道远。  前期,小米运维工程师主要通过部署系统和服务树体系构建,集成业务编译、打包、发布、启停、自动维护宿主机对应关系,对线上业务进行规范标准化和商业计划。这可以说是重点之一,因为运维规范和标准化的抽象程度,不仅决定了部署/服务树系统实现的复杂度,也决定了是否有足够的发展和变更空间的业务架构。如果抽象不够,系统很可能无法覆盖业务变化,面临重新调整标准或重新设计系统的困境。小米运维在这方面花费了大量的投入。他们的部署和服务树系统实现方案目前管理和支撑着小米大部分的服务,同时在整合周边系统和提供其他自动化所需的数据方面发挥着至关重要的作用。  其次,小米监控系统是小米NoOps路上的一件大事。open-falcon是小米根据互联网公司的一些需求,在SRE、SA、DEVS的经验和反馈的基础上,结合业内一些大型互联网公司的思路,设计开发的一款监控,做监控使用监控。系统。本系统的目标是做最开放实用的互联网企业级监控产品。  目前open-falcon已经成为知名的开源版本,被超过50家互联网公司使用。本系统除了解决小米大规模业务/主机数据采集、监控、绘制等基础监控功能外,通过与服务树系统的集成,实现了监控-主机-业务关系的自动维护。传统的人工运维消耗了相当大的人力成本。  安装了falcon-agent的机器可以自动开始采集各种指标并主动上报,不需要用户在服务器上做任何配置(这一点和zabbix有很大区别),这样做的好处是用户维护方便和覆盖范围广。当然这样做会给服务器端带来很大的压力,但是open-falcon的服务器端组件单机性能足够高,并且可以水平扩展,所以自动收集足够的数据来解决SRE的问题和DEV事后追踪。  ***是容器化的引入和动态部署系统的构建。在提高资源利用率、节约时间和成本方面取得了初步成效。此次,黄总将在四月份的互联网运维与开发者峰会上发言,分享小米在业务自动发布和动态调度方面的一些实践经验,包括Docker/Mesos等开源软件在小米运营中的应用和维护体系,这是目前业界比较关心的。  目前小米的运维自动化主要集中在人-主-业务-监控的运维基础要素及其相互之间的交互管理。它仍处于不断发展和完善的过程中。未来,我们希望它不仅能实现自动化管理,还能智能地辅助人类完成某些决策,完成和处理一些复杂的问题。  另外,黄老师提到了他对优秀运维工程师的理解,即首先,优秀的运维工程师不保守,能折腾,敢于尝试,敢于改变;不到最后不放弃,达到目标的精神;本质是专业能力和素养,坚持和对技术的热爱。欢迎志同道合的同学加入小米,一起来NoOps吧!