我们都有目标。有些是小而容易实现的,但许多是大而复杂的。一个大目标可能已经够吓人的了,但试图想象所有不同的步骤本身就是一种挑战。我们手机的GPS为我们提供了一个解决方案。它列出了从A到B的每个步骤,同时也显示了你的总进度(即剩余的时间和距离)。

就像我们的GPS列出过程中的每个步骤一样,有一个游戏计划是关键。例如,我想成为一名网页开发人员,但试图跟踪所需的一切,以符合开发角色是令人生畏的。当你看到一长串的资格和技能时,很难知道从哪里开始。

幸运的是,我找到了一个新手训练营,在课程的路线图中分解了web技术堆栈(前端、后端、全堆栈)。教师为每个部分提供了一个计划,以及该部分如何与更大的整体相关。

现在下载:免费介绍指南的HTML和CSS

web开发领域远没有在DevOps生命周期中工作所需的背景知识那么广泛。这使得DevOps路线图更加重要,以确保您理解工作要求,并保持在正确的轨道上DevOps工程师的角色

那么,怎样才能成为DevOps工程师呢?让我们从DevOps的职业路线图开始。

DevOps路线图

在我们继续之前,让我们花点时间检查一下下面的DevOps路线图。大声喊出Kamran Ahmed创造了这个优秀的资源,并使它通过他的可用GitHub库

DevOps路线图崩溃

您会注意到DevOps路线图涵盖了软件开发中的许多概念。bob电竞官方下载这是因为DevOps涵盖了从开发到操作的整个软件创建和维护过程,涵盖了整个技术堆bob电竞官方下载栈。这个路线图包含了很多很好的细节,但是当我们一起规划我们的课程时,我们将关注主要的路径并讨论每个步骤。

让我们来分析一下这个路线图中的每个主要步骤。

1.学习编程语言。

尽管DevOps工程师通常不编写源代码,但他们将集成数据库,调试开发团队的代码,并自动化流程。自动化是赋予DevOps生命周期速度的关键部分,而DevOps工程师将在实现自动化过程中扮演主要角色DevOps自动化策略

此外,DevOps工程师应该对他们的团队正在使用的语言有一定的了解,以帮助他们理解现有的代码,检查新代码,并协助调试。

要学习的编程语言包括:

  • (推荐)
  • Ruby
  • Python
  • node . js

2.研究操作系统。

操作系统(os)是DevOps团队运作所需的关键技术。操作系统不仅驱动团队用来通信和完成任务的本地机器,而且操作系统还运行承载团队部署的应用程序的服务器。

因此,您需要学习命令行终端,以便不依赖图形用户界面(GUI)来配置服务器。命令行简化了在GUI中需要多次单击的任务,并且一些命令只能通过终端执行。每个操作系统都是不同的,所以学习多个操作系统是明智的。

要学习的操作系统包括:

  • Linux(推荐)
  • Unix
  • 窗户

您还需要学习控制如何构建和运行操作系统的更大的策略和规则。作为一名DevOps工程师,技术知识和概念知识同样重要。

要学习的操作系统概念包括:

  • 流程管理
  • 套接字
  • 线程和并发性

3.检查网络安全和协议。

任何基于web的应用程序都将使用协议从用户那里传输和接收信息。这意味着理解协议如何支持不同的请求类型也是必要的。

同样重要的是,你需要知道风险介绍这些传输方法,以及如何保护它们以防止不良行为者拦截您的数据或渗透您的应用程序。网络安全无论你在DevOps的生命周期中扮演什么角色,这都是一项重要的技能。

要学习的网络协议包括:

  • HTTP
  • HTTPS
  • SSL
  • SSH

4.将基础架构理解为代码。

基础设施作为代码(IaC)是一种简化基础设施供应以支持应用程序部署的实践。使用模板文件配置和管理网络、服务器和其他基础设施,以创建具有应用程序确切需求的环境。IaC允许您自动化这个过程,以实现更快的部署和更新。

学习IaC策略包括:

  • 容器
  • 配置管理
  • 集装箱编配
  • 基础设施配置

5.采用持续集成/持续部署工具。

持续集成和持续部署(CI/CD)是DevOps所建立的核心原则:开发和运营的集成以及不断的迭代。为了实现这一理念,大多数DevOps团队都转向支持DevOps生命周期的工具。CI / CD工具支持流水线的多个阶段,并自动化流程和交接,以解放团队成员。

要学习的CI/CD工具包括:

  • GitHub
  • GitLab
  • 竹子
  • 詹金斯

6.投资于应用程序和基础设施监控。

监视是一种观察应用程序及其底层基础设施中问题迹象的实践,以便您的操作团队能够在问题成为故障之前进行修复。很自然,这个实践可以分为两个部分。

应用程序监视

应用程序的内部问题可能以多种方式显示,因此最好监视多个指标。

例如,当用户试图注册时,表单上低于正常转化率可能表明表单本身出现故障。理想情况下,您的监视工具将标记在发送注册请求时代码中生成的错误以及转换率,这样您就有多种方法来识别问题。

要学习的应用程序监控工具包括:

  • 普罗米修斯(推荐)
  • Nagios
  • Datadog

基础设施监控

人们很自然地认为问题一定是由应用程序本身引起的,但是应用程序支持基础设施中的问题通常会产生同样的影响——如果不是更大的话。

例如,当您的web应用程序的云托管出现问题时,可能会导致用户试图访问它时出现故障。监视工具分析应用程序堆栈中生成的错误以及性能指标,以便及早标记错误。你的团队越早做出反应,这些问题对用户体验的影响就越小。

要学习的基础设施监控工具包括:

  • New Relic(推荐)
  • Jaeger
  • AppDynamics

7.研究云计算供应商。

大多数(如果不是全部的话)现代应用程序都托管在云上。云服务提供了许多好处,包括成本节约和可伸缩性,当您不再需要为您的应用程序托管自己的服务器时。自然,了解可用的不同云服务及其独特的成本和收益是很重要的,这样您就可以为已完成的应用程序选择最佳的托管。

需要学习的云提供商包括:

  • AWS(推荐)
  • Azure
  • 谷歌云
  • Heroku

8.学习云设计模式。

云设计模式是产生云应用程序的可伸缩性、可靠性和安全性的原理。与理解云提供商一样重要的是,您还应该理解这些模式。

从云计算的最佳实践(例如,高延迟)中可以学到很多经验,你可以将这些经验应用到你的云计算应用程序和你的开发方法中之前部署。例如,在云存储库中备份源代码,这样即使本地存储不可用,也不会失去访问权限。

要学习的云设计模式包括:

  • 可用性
  • 数据管理
  • 设计和实现

我们所讨论的一切并不代表您成为一名有效的DevOps工程师所需要的全部知识,但是核心知识在关注细节之前你应该知道。一旦你有了这些背景知识,你会发现学习起来容易多了。

为了结束这篇文章,让我们根据DevOps路线图的不同步骤来看看一些关键的要点。

DevOps路线图的要点

1.利用你之前的技术经验。

回到web开发训练营的例子,我很幸运已经学会了HTML、CSS和JavaScript。这一背景帮助我了解了所涉及的其他技术。我还曾在一家公司网站工作,在那里,移动响应是一个挑战,所以这鼓励我在我们的新兵训练营中更多地关注这方面。

DevOps工程师将涵盖整个软件开发生命周期,因此他们在这个领域的任何经验都bob电竞官方下载将使他们能够更好地协调不同的DevOps阶段,并与他们的团队成员协作。这也会帮助他们在优化流程的过程中对自己的推荐更有信心。

2.优先考虑概念,而不仅仅是工具。

学过JavaScript后,我不仅理解了语法,还理解了编程背后的一些原则,这让我在新手训练营中比那些以前从未编写过代码的人受益匪浅。

同样,技术知识也很重要,但如果你不明白其中的原因为什么如果您使用的是一种特定的方法,那么您将无法向团队的其他成员传达这种方法。DevOps工程师提倡将DevOps方法置于团队中的其他工作之上,因此理解技术背后的概念是关键。

3.做一个多面手,而不是专家。

因为DevOps工程师接触到整个DevOps生命周期,所以对每件事都略知一二总比只精通几个领域要好。团队中的个体贡献者应该专注于他们特定的领域(开发、网络、监控等)。您负责在每个参与者之间移动产品。

如果你对整个过程有一个很好的理解,并且想要学习更多,那么也不要限制自己。那些有学习热情的人将会成为一名出色的DevOps工程师。只要确保你关注的是更大的画面。

4.永远寻找新的学习机会。

技术总是在变化。您的组织还应该适应最新的最佳实践和进展,以确保您在交付的软件中处于领先地位。bob电竞官方下载作为这个过程的一部分,DevOps工程师应该一直寻找下一个趋势,这样他们就可以更好地建议团队如何将这些趋势整合到他们的流程中。

正如您所看到的,DevOps路线图中充满了可供您探索的不同技术和概念。如果你有学习的动力和热情,那么在你开始建立自己的专业知识时,这个路线图应该是一个有价值的指南。专注于单个步骤,很快您就会拥有作为DevOps工程师开始职业生涯所需的技能。

新的文字-动作

css的介绍

最初发布于2021年11月22日上午7:00:00,更新于2021年11月22日

主题:

开发人员操作