如何在六个月甚至更快的时间内成为一名DevOps工程师。第1部分。简介

目标受众


您是想将自己的职业转向更高级的DevOps模型的开发人员吗?您是经典的Ops工程师,想了解DevOps的含义吗?还是你们俩都不是,在IT技术领域工作了一段时间之后,想换工作并且不知道从哪里开始?
如果是这样,请继续阅读以了解如何在六个月内成为一名中级DevOps工程师!最后,如果您已经从事DevOps多年,那么您仍然可以从这一系列文章中获得很多有用的信息,并了解集成和自动化行业目前所处的位置以及正在努力发展的地方。



这是怎么回事?


首先,什么是DevOps?您可以搜索google定义并浏览所有这些口头表达,但是请注意,大多数定义只是一堆以简化形状包裹的单词。因此,我将为您提供所有这些定义的摘录:DevOps是一种交付软件的方法,其中所有相关人员共同承担着头痛和责任。就这样。

好的,但是这种减少意味着什么?这意味着传统上,开发人员(创建软件的人员)在工作中受到的激励机制与运营(运营商或管理软件的人们)的激励机制大不相同。例如,作为开发人员,我想创建尽可能多的新功能。毕竟,这是我的工作,而这正是客户的需求!但是,如果我是Ops员工,则我需要尽可能少的新功能,因为每个新功能都是一项更改,任何更改都充满了故障。由于这种不一致的激励措施,DevOps诞生了。

DevOps试图将开发和运营(集成与自动化)结合在一起。这个想法是,现在一个小组将分担痛苦和责任(并可能得到回报),以从面向客户的软件创建,部署和创收。

纯粹主义者会告诉您,没有像“ DevOps工程师”这样的人。他们会告诉您“ DevOps是一种文化,而不是角色。”当然,从技术的角度来看,它们是正确的,但是,经常会出现这个术语因此,DevOps工程师有点像“系统工程师2.0”。换句话说,他是一位了解软件开发生命周期并创建软件开发工具和流程来解决经典运营问题的人。



最终,DevOps意味着创建数字管道,从开发人员的笔记本电脑中获取代码,并通过使用最终产品将其转化为收益,这就是重点。请注意以下事实:DevOps的职业选择得到了财务奖励的高度补偿,几乎每个公司都“制造DevOps”或宣称是。无论这些公司位于何处,DevOps带来的总体就业机会都很高,并暗示未来很多年“有趣”且有意义的就业。

但是,请小心雇用“ DevOps团队”或“ DevOps部门”的公司。严格来说,这种情况不应该存在,因为最终DevOps仍然是一种文化和交付软件的方式,而不是组建新团队或创建团队。部门以时髦的名字命名。

拒绝责任


现在,让我们暂时搁置一杯Cool-Ad,并考虑以下内容。您是否听到过一句老话:“初级DevOps工程师不存在?” 如果没有,请注意这是Reddit和StackOverflow上的流行路径。但是他是什么意思?

简单来说,这句话意味着需要多年的经验以及对工具的深刻理解,才能最终成为一名真正有效的高级DevOps实践者。而且,不幸的是,没有达到目标的捷径。因此,这绝不是试图欺骗系统的尝试-实际上,您不可以假装自己是具有该行业数月经验的高级DevOps工程师。要对快速变化的工具和方法有一个清晰的了解,需要多年的经验,并且没有解决之道。但是,大多数公司使用的工具和概念几乎是一致的(如果需要,则是时尚的)菜单,这将在后面讨论。

同样,这些工具与技能有所不同,因此在学习工具时,请确保不要忽视自己的技能(调查,联网,书面交流,故障排除等)。最重要的是,不要忘了我们要寻找的东西-一种创建全自动数字管道的方法,该管道可以吸收创意并将其转化为可产生收入的代码片段。这是整篇文章中唯一且最重要的结论!

别说话了,什么时候可以开始?


以下是DevOps基础知识路线图。掌握了此处描述的所有内容后,您可以放心而诚实地称自己为DevOps工程师!如果您不喜欢“ DevOps”这个名字,或者是一位云工程师。



这张地图反映了我(并且可能是从事此领域工作的大多数人)对合格的DevOps工程师应了解的知识的看法。但是,这仅是一种意见,当然会有分歧。这个是正常的!在这里,我们不追求卓越,而是为坚实的基础而努力。

您必须逐步地逐层进行。从基础开始,然后开始(并继续!),首先检查蓝色标记的元素-Linux,Python和AWS。然后,如果时间或劳动力市场的需求允许,请执行Golang和Google Cloud之类的紫色方法。

老实说,基础顶层是您必须不断学习的东西。OS Linux非常复杂,需要花费数年才能掌握。Python需要不断练习以保持最新状态。AWS的发展如此之快,以至于您一年之内所了解的内容仅会成为您整体知识组合的一部分。一旦学习了基础知识,就可以继续学习一套真正的技能。请注意,总共有6个蓝色栏(配置,版本,打包,部署,启动,监视),其中一个为一个月的学习时间。



当然,您注意到我们六个月的开发计划中没有重要阶段-测试。我故意不将其包括在路线图中,因为编写模块,集成和验收测试并不容易,并且传统上落在开发人员的肩膀上。该路线图的目标是尽快掌握基本技能和工具,这说明了“测试”阶段的遗漏。根据作者的说法,缺乏测试经验只是正确使用DevOps的一个小障碍。

此外,请记住,这里我们不是在研究大量无关的技术technical语,而是要努力理解在一个捆绑包中创建可理解的故事的工具。这个故事是一个端到端的过程自动化-一个数字传送带,可以像装配线一样移动钻头。您不想学习一堆工具并不断停下来!DevOps工具箱瞬息万变,概念不那么普遍。因此,您应该努力使用工具作为高级概念的培训代理。

好吧,让我们深入一点!

基础知识


在“基础”一词的顶部,您会看到每个DevOps工程师需要掌握的技能。这些技能可以自信地处理行业的三个“支柱”:操作系统,编程语言和公共云。这些东西不是您可以很快熟悉并走得更远的东西。这些技能需要不断提高和磨练自己的技能,才能站在行业的最前沿,并更新您周围的专业环境。让我们依次研究它们。

Linux是一切正常的地方。您可以在完全保留在Microsoft生态系统中的同时成为一名出色的DevOps从业者吗?你当然可以!没有法律只使用Linux。但是,请记住-尽管事实上所有Linux事情也可以在Windows上完成,但是在这里发生的事情更加痛苦,功能更少。目前,我们可以放心地假设,没有Linux知识就不可能成为真正的DevOps专业人士,因此Linux是您应该学习的东西。

老实说,最好的方法是在家中简单安装Linux(Fedora或Ubuntu)并尽可能多地使用它。当然,您将打破一堆东西,陷入工作流程,必须修复所有问题,但您将学习Linux!



顺便说一下,R​​edHat变体在北美更为常见,因此从Fedora或CentOS开始是有意义的。如果您想购买KDE或Gnome版本,请选择KDE。这就是Linus Torvalds本人使用的。

如今,Python是主要的后端语言。它很容易上手,已被广泛使用。 Python在人工智能和机器学习领域非常普遍,因此,如果您想进入另一个活跃的领域,您将为此做好充分的准备。



亚马逊网络服务:同样,如果没有扎实的公共云工作原理,就不可能成为经验丰富的DevOps专业人员。如果您想了解更多信息,请查看Amazon Web Services。这是服务领域的领先者,提供了最丰富的工作工具。

我可以改用Google Cloud还是Azure开头?当然!但是请记住,最近的金融危机使AWS至少在2018年是最安全的选择,因为它使您可以免费注册帐户并开始探索云服务的功能。此外,AWS控制台为用户提供了一个简单直观的菜单供您选择。好消息是您不需要了解所有Amazon技术。



从以下内容开始:VPC,EC2,IAM,S3,CloudWatch,ELB(以EC2为幌子的弹性负载平衡)和安全组。这些东西足以入门,每个现代的基于云的企业都在积极使用这些工具。 AWS自己的培训站点是入门的好地方。

我建议您每天花20到30分钟学习和练习Python语言,Linux操作系统和AWS云服务,以及必须学习的其他内容。总的来说,我认为每周花五小时一天一个小时足以理解DevOps行业中六个月或更短的过程。共有6个主要组成部分,每个组成部分对应一个月的培训。这是您获得基础知识所需的全部。
在后续文章中,我们将考虑以下复杂程度:如何完全自动化软件的配置,版本,打包,部署,启动和监视。

如何在六个月甚至更快的时间内成为一名DevOps工程师。第2部分:配置

一点广告:)


感谢您与我们在一起。你喜欢我们的文章吗?想看更多有趣的资料吗?通过下订单或向您的朋友推荐给开发人员的基于云的VPS,最低价格为4.99美元这是我们为您发明的入门级服务器 独特类似物:关于VPS(KVM)E5-2697 v3(6核)的全部真相10GB DDR4 480GB SSD 1Gbps从$ 19还是如何划分服务器?(RAID1和RAID10提供选件,最多24个内核和最大40GB DDR4)。

阿姆斯特丹的Equinix Tier IV数据中心的戴尔R730xd便宜2倍吗?在荷兰2台Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100电视戴尔R420-2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB-$ 99起!阅读有关如何构建基础设施大厦的信息。使用Dell R730xd E5-2650 v4服务器花费一欧元9000欧元的c类?

All Articles