跳至主要内容

博文

目前显示的是 八月, 2017的博文

开篇不谈无线路由,先从DevOps聊起

一个玩路由器玩 NAS 的,第一篇不讲无线路由,不讲NAS(网络附加存储),偏偏开篇讲DevOps?!搞笑呢?  对!先搞笑,再不搞笑就太搞笑了. 讲DevOps 因为和做路由器有很大关系,早期开发时就使用 Trac平台 [1],当时我还不知道这个概念,如果早知道,就会让当时购买我路由器的用户有更好的软件体验,所以计划写个路由+NAS系列,希望朋友们了解下 RTNAS 曾经走过的路,希望自己的经验能帮助到后面的人.无奈本人文笔奇差,很多词不达意,各位看官见谅. 言归正传, 什么是 DevOps? 如下图所示: [2] 图很清晰,Dev和QA大家都知道,单说 Operations(运维),这一项很多同学不够熟悉,是因为学校不教什么Linux,并且大部分公司很少去安排程序员做运维相关事情.  这里的运维指的不单单是安装个 Linux 以及 Tomcat 等服务,而是能融会贯通整个业务环境,知晓如何 CI ( 持续集成)以及 CD (持续部署). 回想2011年,做DDNAS(无线路由器项目名称)时使用一款叫 Trac 的开源项目管理工具,只用到 Wiki 和 Issue(ticket)管理 以及结合 svn 做代码浏览,开发过程就是提交代码,觉得应该测试了,然后自己去编译出固件,然后人工刷机和测试下,没有实现自动化.大部分时间都是浪费在等待编译以及测试上面,苦不堪言....随着 RTNAS 队伍的扩大,这种情况更加明显... 2013,我去了上海入职了盛大旗下的魔锤网络去做无线路由,CEO黄冬(现任芒果TV CTO)嫌我手工编译代码很土鳖,于是他带领大家实现了编译自动化,测试半自动化.但由于产品没卖上量及各种原因,就没精力去实现 CI,CD了...[3] 2016 年年中,我结识了几个大牛并加入了他们的团队,入职了一个纯技术团队,第一天,某大牛扔给我两本书,分别是《高效团队开发与方法》和《 Docker: 容器与容器云》,大牛喝着维他命水且斜着眼说 :赶紧看 ,以后DevOps的事情就交给你了! 然后过了几天,另一大牛来教我如何使用  GitLab  以及开发注意事项 ... 读这两本书和接受大牛们的教育让我茅塞顿开,意识到我之前的软件项目开发知识都是土的不要不要的 .