【编者按】 51CTO 2014 WOT全球软件技术峰会将在2014年7月25-26日在北京富力万丽酒店召开。从本周开始,我们将陆续公布会议内容,并针对即将参会的架构师访谈,以便大家进一步了解会议内容。会议详细议程见: http://wot.51cto.com/2014/。
本次访谈的对象是孔德亮。他是奇虎 360 WEB平台部高级技术经理,HULK私有云架构师,主要负责360私有云建设。在本次的WOT软件技术峰会中,孔德亮将在自动化运维专场分享《奇虎360的自动化运维升级之路》,着重介绍软件管理、配置管理、集群管理在360的演变过程。敬请期待!
【讲师简历】
孔德亮,2009年加入360,在一个不到20人的部门,作为唯一的运维工程师维护60多台服务器,随着360的发展,开始了内部创业之旅,通过逐步积累形成私有云平台,吸引更多部门使用,目前平台已经服务于90%的业务线。
孔德亮(@Randy素年锦时)
以下是访谈实录:
记者:您认为自动化运维是什么,奇虎360在实施自动化运维的过程中遇到了哪些困难?最终是如何克服的?
孔德亮:我认为实现运维自动化是每个运维人员的基本素养,即使是管理十台服务器也应该实施自动化。把复杂的、重复的工作变简单,节省出时间投入到更有意义的技术研究中去。
我经历了360从十几个项目到几百个项目;几十台服务器到上万台服务器的发展过程,360创业初期都是开发工程师兼职运维工作,各自为战,不规范、不统一,使自运维自动化遇到很大麻烦。我们从以下几点进行改进:
- 基于Puppet,将软件包、配置文件作为管理对象,形成集群配置管理系统。
- 采用开源的salt-stack作为命令系统的底层,上层封装业务逻辑层和命令调度层,形成命令执行系统。
- 以项目为中心,将域名、负载均衡、主机、配置文件、软件环境、数据库实例、通用基础服务等相关联,使得关联关系清晰可见,形成基础信息库。
记者:实施自动化运维后,在日志分析和性能监测等方面是不是也有了相对应的改进?主要用了哪些技术来实现?
孔德亮:在日志分析和性能监测方面确实做了很多改进。
1、日志分析方面,我们规约了用户日志的存储路径,日志收集采用Puppet+Scribe模式,通过Puppet确保Scribe的配置的强一致性以及确保服务的可用性,Scribe作为客户端的日志发送代理,将日志写入到Storm中,Storm分析后写入Hbase,这样不管是计算层还是存储层的扩张,都能够实现平滑扩容。
2、性能检测方面,我们不是单纯以服务器、核心软件纬度进行检测,而是结合基础信息库的关联关系,将项目中各模块检测数据进行汇总,进行综合评定,很像360安全卫士的体检功能。
记者:对于奇虎360当前的自动化运维架构而言,您认为还有哪些方面可以优化的?
孔德亮:在刚入行的时候看到一个前辈提到运维闭环体系,通过不断摸索,结合360环境希望在如下方面不断优化:
- 容量评估,辅助决策
- 硬件选型,机房建设
- 制定项目的运维架构方案
- 配置管理、包管理、集群管理
- 日常运维事务、故障处理
- 监控与分析
记者:作为HULK私有云平台架构师而言,谈谈它对于360以及你个人的意义。
孔德亮:初期因为运维自动化才有了HULK的雏形,时至今日运维自动化已仅仅是HULK的一部分。在我从事运维工作7年之痒的临界点,我做了件让自己感觉很酷的事情,每当想到自己的平台,能让运维、开发、产品、运营的同事通过友好的交互,点点鼠标完成以前复杂的事情,我就会变得异常兴奋,有了好的想法,我就马上用Axure画成原型图和团队的兄弟论证试错,不断改进。
HULK私有云目前主要意义总结为如下几点:
- 解决运维自动化的问题
- 提供通用基础服务,避免项目开发过程中重复造轮子
- 将各团队技术沉淀通过平台传播,维护技术共享的氛围
相信通过我和团队兄弟的持续努力,专注钻研,时间会给予我们丰厚的回报。(全文完)
阿里、百度、京东、淘宝、谷歌、Facebook、Tesla都到2014 WOT全球软件技术峰会了,你还等什么?这些顶级的公司将首次对外公开技术,涵盖八大主题,共有40+课程,部署实施、运维开发、大数据、Spark、敏捷开发一个都不少。除了第一手的经验之外,还有未来两三年的技术趋势,你会让自己错过这样的技术大会吗?