DevOps 这个词在去年参加红帽全球用户大会的时候就深深吸引了我,实际上哪个会上 Docker 容器的概念要比 DevOps 还火爆。Docker/openshift 相关的 session 都尝尝是爆满的。从那里开始我逐渐感觉到了开源容器技术的强大和吸引力。
从红帽开始 OpenShift 的考试就是我在完成 RHCA 红帽认证架构师之后的一个心结,至今也没有完成。不过这根草我早晚是要拔掉的。主要是由于 OpenShift 是 Docker + kubernetes 的组合;是如今企业级 PaaS 容器平台的主要技术路线。总之离开红帽是如此的仓促,说实话这也是我职业生涯中的一个不小的遗憾。当时确实觉得 kubernetes 的命令行操作不是很方便,而且在 OpenShift 并没有降低这个门槛,也即是说在 OpenShift 里面还是要有一定的工作量和技能的要求在编写 kubernetes 的 yml 文件上。在这一点上,及时我熟练掌握了 Rancher 之后,同样发现编写 compose file 也是难以逃避的。在推广一步,大部分 Docker PaaS 平台也都是这样,很多产品也是在界面上提供一个文本输入框,让人输入容器服务定义文件的内容。
在最近的半年中,我的所有技术研究都集中在 Docker 和其服务编排技术上。与很多用户做过技术交流,PoC 测试,有些单子也落地。总结后,有些结果让我感叹。国内的所有企业不区分规模和行业,其实他们对国内原生的创业公司是欢迎的,由于这些公司提供的是国产软件和技术服务。在 Docker 这个火热的领域中,已经有 20 多家国内创业公司,我想所有的公司也都已经接受到了这一点的福利了。外国软件通常给人的感觉是:不是国产软件(不要小看国内公司对国产软件的诉求),纯英文操作界面和文档,可能的水土不服,高昂的软件价格和服务费,如果技术太新的化很可能厂商也不具备足够的技术实力和服务力量。
经过了一些 Docker 容器项目之后,可以断言的是容器市场的火爆和它的技术优势是直接相关的。容器化之后的应用可以通过服务编排工具快速地部署/更新、弹性地伸缩和使用资源,优化其传统应用运维的若干缺陷。容器的轻量和 just enough 的隔离技术让资源池的管理更加简单,利用率大幅度提升,这对研发部门的环境管理是不小的提升,使 CI 的过程更加高效和经济。Docker 对微服务的支持也深深地诱惑了所有开发者,做系统微服务实施开发者能想到的实施技术大多数会是容器。
以上容器的优势和特性使得国内的这些项目落地和实施的可能性进一步提高,甚至很多项目的速度远远超预期;按照我多年的经验看,一个软件技术型的项目,用户纠结半年到一年以上是很正常的。可能也跟国内企业包容本土化软件公司,追捧新潮技术直接相关;我观察到的一些项目,在 2 ~ 4 个月内落单的屡见不鲜。有些试点的 DevOps 咨询项目也落地很快。
这些项目都殊途同归地指向了 DevOps 这个关键词,这让我不得不从去年开始就关注和学习这个最佳实践。当然,我对 DevOps 的前途非常看好,因此当我听说业内出现了相关认证考试之后,我毫不犹豫地报名参加了。经过 2 个多月的缜密的准备,我终于幸运地一次通过了这个考试。考试获得了两个证书。
DevOps Master
DevOps Master 认证自由讲师
我参加的是讲师认证培训 TTT,很高兴能成为 Exin 在国内的首批 5 个认证人员之一。在准备这个考试的过程中我学习了一些书籍,现在还在深度学习的书有两本。
我完成了这本黑皮书的读书笔记,很遗憾的是,我发现它的最新版,把封面改成了白底的了,我不能在叫它黑皮书/黑宝书了。这本书我起码看了两遍;目前正在调试它的书中的代码,代码中的营养还是很高的,计划尽快把所有代码调试通过;从而完成我许下多次的线上分享本书的诺言。
这本书被我称为 CD 红皮书/红宝书。本书早在 10 年就出版了,也就是说比 Docker 早好多年。他给我最大的印象就是,作者每一页上似乎都在介绍这做事情的原则和规矩是什么?我一点也不夸张,他对 CD 的介绍,就是通过讲解一系列在项目上的经验总结。对作者这种级别的经验,和写书的房子只能用一个词总结“服”。这本书太干,我至今还没有消化完。他让我看到了解决发布和变更风险的终极解决方案,没有一次性解决问题的部署/配置/发布工具,有的是历练和打磨了千万次的持续部署流水线;隐约地觉得没用入手的企业都会慢慢跟上的。
以上是我对 DevOps 的阶段性总结,跨度有半年之久。这半年中我逐渐看清了我的主要兴趣点,抛除所有其他主题,目前剩下的就是:云计算和 DevOps。一方面觉得年纪不饶人,不能可能在和年轻人拼精力、体力和创意;我的背景和经验都让我感觉,在这两个话题上,我还是有很多年的经验和技术积累和总结的。云计算是(公有云+私有云)未来企业 IT 基础架构的走向;DevOps 是目前看比较正确的运作实践。一个便技术,一个便管理,正好完整覆盖了我的经验;在其对应的开源技术这个分支里,我想它们都还有这很多的为探索和研究的项目。