2020年DevOps工程师入门指南
DevOps兴起于2010年代,到现在DevOps已经在行业中拥有了一席之地,并在继续发展壮大。
有兴趣成为一名DevOps工程师吗?如果想要成为一名DevOps工程师,需要做到以下五点:
要有开发者的心态。你要管理的东西是代码,所以需要从开发人员的角度来看待问题和挑战。学会使用Git,写出可以长期维护的代码。
了解系统工程。理解三层应用架构。能够解释基本的系统管理任务(以及如何实现自动化),学习Linux基础知识。
具有上云经验。现在,几乎每一家公司都以某种形式或者方式采用云。因此,需要具有企业上云的代码配置经验。
了解容器。虽然不需要有全面的Kubernetes经验,但确实需要知道什么是容器。关注CI构建过程中容器的使用。
软技能很重要。DevOps不仅仅是工具和技术,更是一种文化。要成为一名优秀的DevOps工程师,还需要能够交到朋友,互相交流,学习他人长处。
开发者心态
成为一名DevOps工程师需要会Java或者.NET开发吗?答案是:不需要!在采访一些具有潜在的DevOps工程师的时候,我发现大多数人在解释一些,比如Git、pull请求和SDLC之类的开发概念时缺乏信心。但是要能够回答关于这些话题的基本问题。
另外,当你在写脚本或者使用Ansible、Chref或Terraform时,其实就是已经在写代码了。你得为你写的代码做测试,否则你怎么确定自己写的代码是否有用呢?
关于代码维护
正在学习DevOps的人和正在实践DevOps的人之间的区别在于,一个人可以使用任何工具来编写可维护的代码。这不仅仅是编写一次性任务,你还要为之编写脚本。知道你如何编写代码(使用变量)提高代码的可维护性,这样就可以重复使用或者是重构,而不需要完全重做。
系统工程
这主要为有兴趣学习更多关于系统操作方面的开发人员准备的。你应该积累经验,了解操作系统是如何与中间件一起工作的,它们之间都需要配置哪些关键的参数?网络流量是如何从浏览器流向应用服务器的?什么是三层应用架构?
当你了解了关于系统中需要配置的内容之后,你才能将它们作为代码进行配置。因为经过了解之后才会知道哪些配置可能经常更改或者不同的应用程序之间配置可能有所不同,这样你就知道在你的代码中哪些东西可以作为变量暴露出来,而哪些东西可以硬编码。
云计算
当我提到云计算时,估计所有读过这篇文章的人都知道我说的是什么。目前大多数企业都采用了Azure或者AWS,甚至两者都是他们的云计算供应商。作为一名DevOps工程师如果没有云计算方面的项目经验,是很难被企业聘用的。如果你现在的公司没有使用这两个,那就创建自己的账户并开始使用你不需要了解所有可用的AWS服务,但是你确实需要了解足够多的基础知识来讲述它们。它们是做什么的,以及它们为什么如此重要。
另外,请谈谈你使用的基础架构代码工具的经验,比如Terraform、Cloudformation等。如果不把你的云环境配置成代码,将变会难以使用。
容器
随着无服务器应用程序(serverless applications)的兴起,容器的使用引起了争议。对于大多数企业来说,并不是所有应用程序都可以变成Serverless,因为会有中间件或者有状态的服务需要在容器中运行。你不需要通过任何方式成为Kubernetes专家,就能成为DevOps工程师。还是那句话,对于大多数企业来说,全面使用Kubernetes在未来几年都是个挑战。仅仅是在企业环境中安装Docker和运行容器的能力,是现在很多人都在纠结的事情。
因为容器使得开发人员能够在本地运行完整的应用栈,所以能够为你的应用构建容器并使用容器对于真正成为DevOps商店至关重要。此外,通过使用容器来加快CI构建工作的速度也是至关重要。当你只需要使用容器就可以了,为什么要在VM上管理和修补Java版本来构建.jar文件?了解如何在你所选的CI工具(Jenkins,Gitlab等)中使用容器。
软技能
这可能是最难掌握的技能,也是最常被忽视的技能。DevOps对于很多人来说是非常新奇的,这需要大量的培训和"上岗培训"。能够有效沟通、跨业务部门工作、与组织内不同的人合作是成功的唯一途径。
我从中学到一个重要的道理,就是固执地决定你知道做某事的最佳方法,对大多数人来说,不会影响到改变。事实上,你会给你想做的事情制造更多的障碍。
倾听并能够理解别人的想法。另外,不要觉得有必要解决每个问题。最有效的DevOps工程师能够影响和授权别人自动解决自己的问题。
原文链接:https://medium.com/better-programming/how-to-become-a-devops-engineer-in-2020-7618492a09d8
END
好文章,分享、点赞、在看三连哦️↓↓↓
2020年DevOps工程师入门指南的更多相关文章
- Java工程师学习指南 入门篇
Java工程师学习指南 入门篇 最近有很多小伙伴来问我,Java小白如何入门,如何安排学习路线,每一步应该怎么走比较好.原本我以为之前的几篇文章已经可以解决大家的问题了,其实不然,因为我之前写的文章都 ...
- Java工程师学习指南(入门篇)
Java工程师学习指南 入门篇 最近有很多小伙伴来问我,Java小白如何入门,如何安排学习路线,每一步应该怎么走比较好.原本我以为之前的几篇文章已经可以解决大家的问题了,其实不然,因为我之前写的文章都 ...
- CI Weekly #21 | iOS 持续集成快速入门指南
搭建 iOS 持续集成环境要多久?每个 iOSer 都有不同的答案.这次我们整理了 flow.ci 的 iOS 持续集成的相关文档和最佳实践,希望帮你更快地完成构建.更新文档见: flow.ci iO ...
- 5+ App开发入门指南
HTML5 Plus应用概述 HTML5 Plus移动App,简称5+App,是一种基于HTML.JS.CSS编写的运行于手机端的App,这种App可以通过扩展的JS API任意调用手机的原生能力,实 ...
- web前端基础知识及快速入门指南
web前端基础知识及快速入门指南 做前端开发有几个月了,虽然说是几个月,但是中间断断续续的上课.考试以及其它杂七杂八的事情,到现在居然一直感觉自己虽然很多前端的知识很眼熟,却也感觉自己貌似也知识在门口 ...
- Java工程师学习指南 完结篇
Java工程师学习指南 完结篇 先声明一点,文章里面不会详细到每一步怎么操作,只会提供大致的思路和方向,给大家以启发,如果真的要一步一步指导操作的话,那至少需要一本书的厚度啦. 因为笔者还只是一名在校 ...
- Java工程师学习指南 中级篇
Java工程师学习指南 中级篇 最近有很多小伙伴来问我,Java小白如何入门,如何安排学习路线,每一步应该怎么走比较好.原本我以为之前的几篇文章已经可以解决大家的问题了,其实不然,因为我写的文章都是站 ...
- Java工程师学习指南 初级篇
Java工程师学习指南 初级篇 最近有很多小伙伴来问我,Java小白如何入门,如何安排学习路线,每一步应该怎么走比较好.原本我以为之前的几篇文章已经可以解决大家的问题了,其实不然,因为我之前写的文章都 ...
- HTML5 Plus移动App(5+App)开发入门指南
HTML5 Plus移动App,简称5+App,是一种基于HTML.JS.CSS编写的运行于手机端的App,这种App可以通过扩展的JS API任意调用手机的原生能力,实现与原生App同样强大的功能和 ...
随机推荐
- 在虚拟机里面安装mysql
https://dev.mysql.com/downloads/repo/yum/ 首先到网站里面下载 mysql80-community-release-el7-3.noarch.rpm 通过xft ...
- Jedis 与 Redisson 对比有什么优缺点?
Jedis 是 Redis 的 Java 实现的客户端,其 API 提供了比较全面的 Redis 命令 的支持:Redisson 实现了分布式和可扩展的 Java 数据结构,和 Jedis 相比,功能 ...
- NULL 是什么意思 ?
NULL 这个值表示 UNKNOWN(未知):它不表示""(空字符串).对 NULL 这 个值的任何比较都会生产一个 NULL 值.您不能把任何值与一个 NULL 值进行比 较,并 ...
- Linux 环境下如何查找哪个线程使用 CPU 最长?
1.获取项目的 pid,jps 或者 ps -ef | grep java,这个前面有讲过 2.top -H -p pid,顺序不能改变
- 学习Cobbler(二)
Server端: 第一步,启动Cobbler服务 第二步,进行Cobbler错误检查,执行cobbler check命令 第三步,进行配置同步,执行cobbler sync命令 第四步,复制相关启动文 ...
- git提交错误 git config --global user.email “you@example.com“ git config --global user.name “Your Name
1 Commit failed - exit code 128 received, with output: '*** Please tell me who you are. 2 3 Run 4 5 ...
- 在原生CSS中使用变量
本文首发于我的博客 一直以来,CSS作为一种申明式的样式标记语言,很难像如javascript等命令式编程语言一样通过定义和使用变量的方式来维护和追踪某些状态.后来随着scss,less等CSS预处理 ...
- 体验javascript之美第五课 五分钟彻底明白 匿名函数自执行和闭包
通过文你将学到: 1.闭包是怎么回事儿? 2.闭包的原理和在jquery中的应用 3.从一到面试题彻底理解闭包和垃圾回收机制 4.闭包在jquery中的应用 概述 经常听到闭包这个词儿,或者匿名函数自 ...
- 【小程序开发】 点击button按钮,引导用户授权
一. 前言 小程序官方文档,上面说明 wx.getUserInfo(OBJECT) 注意:此接口有调整,使用该接口将不再出现授权弹窗,请使用 <button open-type="ge ...
- 进入React的世界
一. React 是什么 1. 声明式写法 2. 组件化 3. 一次学习, 随处编写 二. 为什么要学习React 1. 大厂加持 - Facebook 2. 最流行, 使用人数最多, 最被开发者喜爱 ...