Sys如何。具备开发DevOps工程师的管理技能?


10

我正在寻找有关如何成为一名专业DevOps工程师的建议。

我一直想从事与开发相关的项目,因为我喜欢编码,但不幸的是我从未有过机会。我以前曾使用.Net和PHP从事自由项目,并且已通过Java SE认证,但从未使用过。

我的工作经验包括系统和应用程序管理。通常,我现在是该领域的大四学生,因此不建议改用开发,因为我必须从大三开始。但是我认为DevOps对我来说是完美的选择,但我需要知道要成为一名优秀的DevOps工程师(最好是有关编写自动化和工具的部分),需要学习哪些知识才能填补我的空白。

请推荐我应该学习什么,例如,我听说Python和Perl和Ruby对于DevOps非常有用,但是我还应该从其他什么开始?我首先需要掌握哪些必备技能?

我目前的技能:

Sys。管理员

  • Unix(HP-UX,Solaris)和Linux(Ubuntu,Red hat,CentOS)管理
  • 中间件技术管理(WebLogic,Apache-Tomcat,WebSphere,MQ)
  • Bash / Shell脚本

  • Web服务器配置和管理

  • 对通用数据库系统(SQL Server,Oracle,MySQL等)有丰富的知识
  • Web服务和集成SOAP / REST / API
  • Oracle商业智能套件(OBIEE,DAC,Informatica)
  • ITSM补救措施开发和管理。
  • SAP业务对象(分析)。
  • Splunk
  • 服务中心–支持ITIL的IT服务管理
  • 对Web应用程序技术有深刻的了解。

开发者

  • Microsoft Visual Basic中的专家开发技能。
  • Java SE中的优秀开发技能。
  • Microsoft .Net开发
  • MS SharePoint开发。
  • MS Office专家,具有所有MS Office应用程序的宏和自动化方面的专业知识。
  • 中级PHP开发(CakePHP)

Answers:


8

查找DevOps工程师角色,并查看他们正在寻找的技术列表。通常,您将需要自动化脚本技能(如Bash,Python或PowerShell),配置管理技能(如Chef,Puppet或Ansible)以及一些维护和配置Build / Release管道的基本经验。为此,希望获得使用AppVeyor(.NET),Jenkins,Travis CI等CI / CD工具的经验。您还应该熟悉一般的Git和源代码控制系统,例如BitBucket或TFS。您还可以从熟悉自动化测试技术中受益。

如果还没有,请考虑在Github中托管一些开源产品,并为它们建立管道,以对提交执行自动测试,以及(如果可能)发布到包管理系统。这是一次很好的经验,同时也展示了您的技能。

为了更全面地了解DevOps的哲学(请注意,这既是一种文化又是一种技术集合),请在该主题上进行尽可能多的阅读,然后开始(例如通过Twitter)关注Gene Kim,Jez Humble之类的人。和Patrick Debois。另外,我建议您阅读他们编写的《 DevOps手册》。这是关于什么是DevOps以及组织如何采用它的非常详尽的解释。

您还可以查看与DevOps相关的见面会和会议(例如VelocityDevOpsDaysConfig Management Camp)。当然,机会将取决于您身处的世界。


很好..根据我从开发DevOps以及与系统管理员合作的经验来看,他们通常缺乏以版本控制(Git)形式,基本的脚本编写技能(bash或Python)以及构造管道的形式最受欢迎的技能。使用类似于Jenkins Pipeline DSL的工具。除了了解主要的CM工具之一(木偶,厨师,ansible,盐)之外,我还建议您使用terraform
TechDawg270

2

列出似乎流行的DevOps工具,然后下载,按照手册进行操作。

  • 流浪汉
  • Ansible
  • 码头工人
  • Kubernetes / OpenShift

这将使您从接近“运维”一侧的工具开始良好的运转,并且-如果您设法还弄清了使用这些工具的原因和目的-将使您成为大多数团队中值得的成员。您可以随时随地拾取更多开发方面的信息(例如CI / CD管道等)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.