英语专业女技术架构师:云平台上的CI/CD落地实践及应避免的坑

2016年8月12日-13日,由CSDN重磅打造的互联网应用架构实战峰会、运维技术与实战峰会将在成都举行。

这是继SDCC 2016架构技术峰会(上海站,官网、图文直播、架构峰会PPT、数据库峰会PPT)和SDCC 2016架构技术峰会(深圳站,官网、图文直播、架构峰会PPT、数据库峰会PPT)圆满收官后的再一次相聚。本次峰会已邀请到来自于百度、阿里、腾讯、京东、华为、小米、乐视、美团、聚美优品、当当网、中国电信、云霁科技、亚信、YY互娱、ThoughtWorks等公司的技术骨干,与大家相聚在安逸舒适、充满麻辣诱惑的成都,在盛享技术大餐之余,还可以大饱一下口服。

离大会还有不足两个星期的时间,很荣幸会前采访到了本次峰会讲师、北京亚信智慧数据有限公司大数据云平台CI/CD技术架构师孟静,请她聊聊其对运维行业的独到见解及在云平台CI/CD上的探索实践。大会期间她将带来《使用Drone在OpenShift环境中做持续集成与持续发布》主题演讲,将更深入披露云平台进行CI/CD实践的所有细节。

受访嘉宾介绍

英语专业女技术架构师:云平台上的CI/CD落地实践及应避免的坑_第1张图片

北京亚信智慧数据有限公司大数据云平台CI/CD技术架构师孟静

孟静,亚信数据敏捷教练,亚信数据DataFoundry大数据云平台CI/CD技术架构师,有丰富的自动化测试工作经验及研发工作经验。专注于研究Docker技术及其生态圈,主要负责DataFoundry云平台搭建、DevOps相关工作。目前专注于如何在Kubernetes上进行持续集成与持续部署的研究,研发,应用和推广。

CSDN:请您首先介绍一下自己,及目前在公司主要负责的工作。
孟静:我是来自亚信智慧数据LDP部门云平台组的孟静。从自己研究Docker到实践Docker相关技术有一年左右的时间,对Docker及Docker生态圈有浓厚的兴趣。云平台组主要负责PaaS平台DataFoundry的维护和架构工作。目前我主要负责DataFoundry平台CI/CD的架构及实施,应用编排实现,新技术的试用和研究以及平台稳定性的维护,相关技术的培训和推广等工作。我们是一个创业型的团队,有时候干的活可能并没有明显的界限,不留神就开发、测试、运维领域都会参与一下。

CSDN:目前IT企业在推进运维自动化的过程中,仍存在哪些问题?
孟静:我们平时经常会接触到的运维自动化是将一些日常的手工重复性的过程自动化,广义上我认为我们也可以将运维自动化理解为将一堆静态的设备转化为根据IT服务需求动态弹性的进行响应的策略。随着IT技术的发展,运维自动化早已经迫在眉睫,大多数企业也都陆续投入到了运维自动化的改革,不过大多数企业并没有完全实现运维的自动化,在运维自动化的过程中,其实有很多坑要踩,面临的问题还是不少的。

我这边接触的运维自动化是在PaaS平台基础上的运维自动化,下面就我们的经验谈一下运维自动化过程中遇到和解决过的一些问题。首先,传统运维人员的技术需要提升。Docker在运维自动化过程中发挥了很大的作用,平台本身也采取了很多Docker及其生态圈相关技术,例如Kubernetes、OpenShift等等,所以要求传统运维能够跟上技术发展的步伐,迅速掌握相关技术并运用到运维实践过程中。其次,建立高效的监控系统和处理流程并不是十分容易的。监控到故障然后报警其实并不困难,困难的是在告警发生后,如何能够高效处理告警,更进一步,如何能够在故障发生前就告警,预防告警。最后,系统要具备在云上的自动化部署性。我们的实践过程中,传统的应用需要进行微服务的解耦、容器化,也就是我们的“上云”工作。应用容器化后,可以轻松的在云平台上持续集成和持续部署,弹性的伸缩。应用的解耦和容器化,以及云上的操作流程,对传统的开发人员也提出了新的挑战。

CSDN:CI/CD在企业实现运维自动化过程中担任着怎样的角色?
孟静:我们所接触的运维一般包括以下四个方面。
(1)环境定义:包括开发环境,测试环境和生产环境;
(2)部署:也就是将应用部署到上面定义的环境中;
(3)监控告警:监控相关指标并处理告警;
(4)性能优化:系统各个服务的性能优化。

我们可以看到,环境定义和部署在运维工作中算是重头戏,那么环境定义的简化,或者说如何最简单的将开发环境,测试环境和生产环境统一,以及部署流程的自动化,在运维自动化的过程中扮演着至关重要的角色,甚至直接决定运维自动化能否有效实施。个人认为运维自动化可以先从CI/CD切入,随着Docker的引进,可以轻松的实现开发环境,测试环境和生产环境的统一,也为CI/CD带来了极大的方便。

CSDN:Docker天生适合持续集成/持续部署,亚信数据在这方面有哪些好的实践?
孟静:毋庸置疑,Docker为CI/CD带来了极大的便利,使得我们可以轻松的定义构建环境和测试环境,轻松的部署到指定环境,并且及时的释放资源。我们在做CI/CD技术选型时,对Gitlab CI、Travis CI、Jenkins、Drone等工具和技术进行了研究和对比,期间也用到了私有镜像仓库,用来存放构建后的镜像,详细的流程和实践过程我将在SDCC 2016架构&运维峰会·成都站上与大家进行详细分享。

CSDN:作为敏捷教练,近两年来企业对敏捷的认识发生了怎样的变化?对于运维技术人员,应从以前的仅面向基础设施、软硬件,转变为更多是面向业务面向服务面向人,对此您怎么看?
孟静:敏捷开发早已经不是新的名词了,基本上我们去到每个公司都有项目组在实施敏捷开发。当然,不是每个项目组对敏捷开发的实施都很到位和成功的。一些实施敏捷开发的项目组,在早期就存在着一些问题,例如频繁的改原型图和改代码;老板肆无忌惮的压团队的时间,“啊?!这个要这么久才可以弄完啊,不符合敏捷的方法啊!”,在这个层面上,敏捷被当成了一种捷径;文档的缺失,很多实施敏捷开发的项目组,打着敏捷的旗号,该有的文档都没有……。最近两年来,随着敏捷开发这种方法论的成熟与落地,有很多的实施者已经开始认识到这些问题,做出一些改变来克服,但是有些实施者依然没有从误区中走出来,个人认为敏捷开发如果运用的不恰当,反而会带来更多的问题。很多企业也总结出了一些实施敏捷开发的经验,例如预先确定好按优先级别排序的产品需求列表,项目组根据需求列表进行工作量的预估和安排;尽量做到每日集成,每日都有一个能够成功编译,能够进行演示的版本;重视回顾会议,或者说总结会议,总结讨论应该改进的地方,放入下一个Sprint中等等。

从目前IT整体的环境来看,整个IT行业已经站在了从运维转向运营的拐点上。我们可以把面向基础设施、软硬件比喻为活着,把面向业务面向服务面向人比喻为活的好。活着是活的好的前提,我们在保证了活着,保证了稳的前提下,势必是要追求活得好这个更高的层次。

CSDN:作为一位女性技术架构师,面临的更多的困难是什么?您是如何解决,并保持自己的不断提升?

孟静:与其说做为女性架构师遇到更多的困难,不如说做为英语专业出身的人面临的更多的困难,呵呵~~ 在学习和工作的路上确实是会遇到一些坎坷,唯一的解决途径就是多学习,多实践,多总结,而保持一直学习最好的动力就是兴趣,所以我总是想办法说服自己喜欢上当前所做的工作和事情。

CSDN:在本次SDCC 2016(成都站)大会上分享的话题是?选择该话题的原因是什么?您希望通过该演讲,让参会者从中获得什么?
孟静:本次分享的话题是基于Drone在OpenShift环境中进行CI/CD实践,期间由于用到私有镜像仓库,也会和大家分享搭建私有镜像仓库的方法和踏过的一些坑,会涉及到最近比较火的Harbor。

选择这个话题的原因也比较简单,就是前段时间的一个实践,希望将所得分享出来和大家探讨。我想通过这个探讨,参会者一定能够按照我的文档搭建出来一个self-hosted的Drone服务器,进行CI/CD的相关编排配置,同时也能够按照我的文档搭建一个自己的私有镜像仓库出来,同时配一个强大的Harbor界面操作,或者可以在相关技术上有一些对比和借鉴。

你可能感兴趣的:(运维,sdcc)