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

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



刷新内存


在第一部分中,我们讨论了DevOps的文化和目标,在第二部分中,我们讨论了如何使用Terraform(本身就是代码)为将来的代码部署奠定基础。在第三部分中,我们将讨论如何从完整的混乱中保存所有这些代码部分。剧透:这都是关于Git的!

奖励:我们还将讨论如何使用相同的Git来创建和推广自己的个人品牌。图为我们现在的位置。



为什么要为此烦恼呢?


版本控制是什么意思?想象您正在使用某种软件并不断对其进行更改,并根据需要添加或删除功能。通常,最后的更改将是根本的更改,破坏了之前创建的所有内容。如果您是一所老式学校的代表,则可能会将第一个文件命名为awesome_code.p1。

然后,您开始进行更改,并且需要保存有效的内容,以防万一您必须返回到它。因此,您将文件重命名为:awesome_code.12.25.2018.p1。

一切正常,直到您在同一天进行几次更改为止,并​​且必须将新文件命名为awesome_code.GOOD.12.25.2018.p1。并保持良好的工作。

最有可能的是,在专业环境中,您有多个团队在同一代码库中进行协作,这进一步违反了该模型。不用说,这辆疯狂的火车正在迅速脱轨。

源代码控制版本控制系统





使用SCC版本控制系统-这是一种将文件存储在集中位置的方法,几个团队可以在一个共同的代码库上一起工作。这个想法并不新鲜。我设法找到的最早提及SCC系统的历史可以追溯到1972年。因此,将代码集中在一个地方的想法肯定已经过时了。

但是,所有产生的工件应进行版本控制的想法相对较新。这意味着与您的生产环境有关的所有内容都应存储在版本控制系统中,并应进行跟踪,检查和记录更改历史记录。

此外,法律“必须对所有产品进行版本控制”的应用确实使您按照“自动化至上”的原则处理问题。

例如,当您决定只单击AWS开发环境中的复杂问题时,您可以停下来想一想,“这是否是对版本化工件的单击”?当然,答案将是“否”。

虽然通常的做法是通过用户界面制作快速原型以查看是否有效果,但是您的工作将是短暂的,因此,在进行有前途且耗时的工作时,一定要这样做请记住,您必须管理版本控制的工件,并使用Gi​​t存储库进行存储。

Git仓库


在Git之前,使用SCCS(例如SVN)比较笨拙,不方便用户使用,并且通常是相当痛苦的体验。与Git的区别在于它提供了分布式版本控制。简而言之,在进行更改时,您不会阻止集中式源代码存储库的其他用户,而是在使用代码库的完整副本。完成工作后,此副本将嵌入到主存储库中。

请记住,以上内容是对它的工作原理的简化。对于本文而言,这样的描述就足够了,但是,对Git的详细了解是一项艰巨而有益的经验。



现在,只记得Git不能像SVN一样工作。这是一个分布式源代码(版本)管理系统,多个开发团队可以在其中安全可靠地在一个通用代码库上工作。

为什么您需要知道这一点?


我强烈申明,不了解Git的工作原理,您将永远不会成为专业的DevOps(Cloud)工程师。如何学习呢?请注意,“ Git教程”的Google搜索结果通常提供指向极其肿且令人困惑的教程的链接。尽管如此,其中还是有一些非常明智的教科书。

我建议所有人阅读,学习和实践使用的此类教程系列之一是Atlassian的Git教程。它们都足够好,但是Git Workflows一节描述了该存储库的工作流,被全球的专业程序员使用。

另一个非常好的教程是探索Learn Git分支存储库的分支。 Atlassian教程建立在“阅读和学习”原则的基础上,Learn Git Branching是一个交互式教程。在任何情况下,除非您了解此存储库的工作方式,否则您在学习DevOps方面都不会走得太远。



我注意到,对Git分支功能的工作原理缺乏了解或无法解释Gitflow是什么,在面试期间淹没了99%的DevOps开发工程师候选人。这是关键点-您可以参加面试,却不了解Terraform或任何其他最新的流行的基础设施即代码工具,这很正常,因为您可以在此过程中进行研究。但是对Git工作的无知表明您缺乏软件开发中现代最佳实践的基础,这与是否涉及DevOps无关紧要。这向招聘经理表明您的学习曲线太不均匀。

相反,您自信地谈论Git最佳实践的能力告诉招聘经理,您首先想到了安装该设备的工作,然后才进行软件开发,而这就是您要投影的图像。结论:您无需成为全球领先的Git专家即可获得出色的DevOps工作,但您需要生活和呼吸Git一段时间,以自信地谈论发生的事情。为此,至少应该对如何执行以下操作有很好的了解:

  • 创建存储库的副本(派生一个仓库);
  • 创建一个Git分支
  • 将流同步到存储库,反之亦然;
  • 创建请求请求。

下一步是什么?


学习完Git入门课程后,请在GitHub上注册一个帐户。这是最常见的开源Git存储库,您可能希望与其他Git追随者在一起。

在GitHub上拥有帐户后,立即开始在其中输入代码。修复所有需要您在GitHub上工作的过程中编写代码的问题。这不仅在处理版本方面树立了良好的纪律,而且还可以帮助您创建自己的品牌。

注意:在探索git + GitHub的使用时,请特别注意Pull Request(或PR,如果您想变酷)。

品牌


说到陡峭:自有品牌是向世界展示您的能力的一种方式。一种方法(目前这是最好的方法之一!)是将GitHub牢固地绑定为您品牌的代理。这些天几乎所有的雇主都会以一种或另一种方式要求它。因此,您应该努力拥有一个经过精心监督的整洁的GitHub帐户。这是您可以放到简历上并为此感到自豪的东西。



在以下文章中,我将向您展示如何使用Hugo静态网站生成器在GitHub上创建一个简单而酷的网站。它是用Go语言编写的,也许今天是同类产品中最快的。雨果在6秒钟内收集了约5,000页,这是Middleman速度的75倍。但是现在,您只需要将代码放在GitHub上即可。
以后,当您获得经验时,值得考虑拥有两个GitHub帐户。一个用于存储您自己的书面应用程序,工作代码,另一个用于存储您想要显示给他人的代码。

因此,我们总结以上内容:

  • 学习git;
  • 在GitHub上发布您所学的一切
  • 使用两个帐户来存储和演示您从中
    受益的一切!

发现


紧跟该领域的最新发展,例如GitOps。GitOps将迄今为止我们讨论的所有想法提升到一个新的高度,其中所有工作都使用git,pull请求和部署管道完成。

请注意,GitOps和类似的开发都在谈论事物的业务方面,即表明您不仅仅在使用Git,因为它既酷又时尚。您可以使用它来确保业务敏捷性,加速创新并提供更快的功能,即最终赚更多钱!

如何在六个月甚至更快的时间内成为一名DevOps工程师。第4部分。软件包装

一点广告:)


感谢您与我们在一起。你喜欢我们的文章吗?想看更多有趣的资料吗?通过下订单或向您的朋友推荐给开发人员的基于云的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