近期因公司业务扩大,需要招聘大量运维人员。我采访了很多人。经过几天的面试,我并没有招到几个人,但是通过这几天的面试,我发现了一些共同点。有的面试官虽然有3-5年的工作经验,但技术水平和应届毕业生差不多,基本的技术问题基本答不出来;而另一部分面试官,恰恰相反,刚毕业不久,但是理论能力和实践能力很强,综合技术能力很高,技术已经能够独当一面。为什么会出现这两种完全不同的现象呢?如果你看看我和他们的一些谈话录音,你应该能够理解为什么。1、他为什么能通过我的面试?有一个工作5年的面试官。我问他:你们的服务器部署在什么系统上?他回答:部署在windows系统上。我又问他:我们招Linux运维人员,学了很多,基本忘记了。为了验证他对Linux的掌握程度,我让他在虚拟机上从源代码编译一个nginx,然后通过rpm包安装一个mysql库。面试官说他以前做过,但是很久没做了。我忘了,我说没关系,你可以开卷考试,你可以上网查资料。我给了他半个小时,两个最简单的安装操作都没做。另一位面试官是一个刚毕业的年轻人。一开始我不知道他刚毕业,就问他:你用linux多久了,做过什么项目?小伙子回答:我用Linux2年多了,用Linux做过NAS存储项目,堡垒机,路由器,防火墙;看到面试官做了这么多项目,当时觉得有点吹牛,于是我也让他在电脑上实操了一下,问题还是上面面试官的问题,没想到,不到5分钟,nginx和mysql的安装配置就全部搞定了。我很好奇,就问这个小伙子,你刚毕业,没有工作经验,怎么会动手操作这么熟练,这个小伙子说了两个字:兴趣。他说他对Linux比较感兴趣,大二的时候就开始学了。起初,他从制作网站和博客开始学习Linux。刚学Linux的时候,他买了几台没有Linux环境的云服务器。然后学习在服务器上安装部署各种软件,比如nginx、php、mysql、redis、zabbix等,然后做网站,申请域名,拿证书,网站就建好了。这个年轻人没完没了地谈论着建立网站的乐趣。我在想很多学习linux的人都觉得自己在学习的时候没有机会练习手机,没有项目可以做。不就是练习项目吗?写博客的目的是为了记录和总结自己所学的知识,没想到写博客的过程就是学习Linux的过程。说到学习,相信大家都很努力,但是大部分不仅浪费了钱,还因为一些客观原因(没有项目环境,没有时间)浪费了很多时间。我从事运维业务已有10多年了。今天就和大家分享一下我这些年学习Linux的心得体会。希望能给热爱Linux的朋友或者Linux的同事一些意见和建议。一点点经验分享给大家!2.行动起来!兴趣是最好的老师首先,学习一门技术最好的方法就是练习、练习、再练习。这句话说起来容易,做起来真的很难,所以坚持下去的秘诀只有两个字:兴趣。兴趣是让我们真心乐意去做的事情。学习Linux不需要你有超人的能力,更不需要高学历,你只需要按照自己的意愿去做,做出一些东西就可以了。你做什么并不重要,重要的是你找到并去做。我认识的优秀运维同仁,学习“动力”各不相同。有的人喜欢上网,就用Linux做路由器或防火墙;有些人喜欢做网站,他们把自己的Linux服务器变成了Web服务器;做了一个视频点播系统。看,Linux可以做很多事情。只要你有兴趣,任何一个兴趣点都可以作为一个独立的项目供你练习。唯一把所有这些“优秀运维人”团结在一起的是,他们都是因为生活中的某种兴趣而对Linux着迷,然后花大量的时间学习Linux,做大量的项目进行实践。3.Linux环境,从博客开始练习。很多学习Linux的新手不知道从何下手。他们学到了很多枯燥乏味的知识,不知道用在什么地方。现在,我给你一个项目,任何人都可以实践,那就是从成为你的第一个博客开始。要开始写博客,首先你需要有一台Linux服务器。如果没有服务器,可以在阿里云或者华为云上花几十块钱买个学习机。如果你想学习,这个投入还是很有必要的。然后就是在服务器上部署nginx、mysql、php、jdk等基础软件,这是一个网站运行的基础环境。最后就是博客程序,这个最简单,网上到处都是免费的,不用自己开发。例如,如果你喜欢php,你可以选择wordpress,这是最流行的博客系统。如果你对java语言感兴趣,那么你可以选择halo,它是java语言最流行的博客系统。有了博客程序和网站运行环境,博客就基本搭建好了,但是要让你的博客在互联网上被大家看到,还需要一个公网IP地址和一个博客域名。为保证博客安全,还需要申请ssl证书。这里需要的公网IP、域名、证书都可以在阿里云、腾讯云、华为云等公有云平台上获取。现在博客可以通过域名访问了,但是你可能还需要知道有多少人阅读了你的博客,你的服务器是否正常运行。所以,你还需要部署一个监控系统,随时了解你的服务器,你如果想部署一个监控系统,监控你网站的运行状态,推荐zabbix,部署简单,功能强大。如果你的博客分享了好文章,它可能会变得非常受欢迎,访问它的人会越来越多。这时候单台服务器可能无法满足用户的访问请求,那么就需要给你的网站部署负载均衡,将访问流量分配到多台服务器上。这时候就需要用到负载均衡集群技术,比如LVS、haproxy、keepalived等,看似简单的一个网站,要稳定高效运行起来一点都不容易。那么,做一个博客,运维涉及到哪些技术呢?我把做网站过程中应用的技术做了一张技术图谱,如下图所示:看完这张技术图谱,你在不知不觉中学习了近80%的Linux运维知识点。也就是说,如果你能搭建和维护自己的博客系统,那么你就已经掌握了80%的运维知识,而在实际的企业运维环境中,你所做的工作基本上就是以上内容图片。学习很无聊。一味的看书看视频是没有效果的。在学习的过程中,通过一些有趣好玩的项目进行练习,可以起到事半功倍的效果。4.最强Linux学习练习图最后分享给新手同学学习Linux的知识图谱。很多新手其实并不了解Linux。他们只知道这是一个带有内核的开源操作系统,仅此而已。那么,如果你想学习linux,是不是应该只学习linux系统本身呢?当然不是!我们说Linux只是一个底层系统,运行在这个系统上的各种应用构成了Linux的生态链,这是我们需要学习的。总体来说,学习Linux有两个方向,即运维和开发。方向不同,学习的内容也不同。下图展示了Linux的两个学习方向:从上图可以看出,运维方向分为系统运维、自动化运维、数据库运维、大数据运维等六个方向。运维、网络运维、云计算运维等,但学到的知识点基本相同,只是偏向不同。那么,Linux运维方向应该学习哪些知识点呢?请看下图:最后说一下发展方向。主要有两个发展方向:应用开发和底层开发。这个方向只需要懂几门语言。根据开发需求文档,基本可以工作。他不需要太多的工作经验,虽然上手容易,但发展方向属于吃青春饭的位置,主要还是拼体力。你可能听说过国内大公司劝35岁以上员工辞职。这里解雇的原因其实是为了做开发。的。因此,每个人都应该从事与Linux相关的工作。我的建议是从事Linux运维行业。运维行业讲求经验。年龄越大,经验越多。我从未在这行工作中感受到35岁的危机。但是,这句话有一个前提,就是你要有在运维行业继续学习的能力。如果你35岁了,还有25岁的技术能力,你当然会被淘汰。说了这么多,其实我的目的就是告诉大家,想要学好Linux,还是要有所作为!马上去不要找任何借口。做事是最好的学习方式。一本技术书从头到尾看完是很枯燥的,而且可能读到一半就看不下去了。但是,如果你要做一个项目,你就会知道在做项目的过程中应该学习哪些知识。这是认识和掌握知识更有效的途径。针对急于提升技术水平的运维人员和想进入运维行业的技术爱好者,官方联手16岁一线Linux运维高俊峰(南非蚂蚁)和运维专家,深度结合国内一线互联网公司的“资深运维工程师”,根据用人单位需求推出这套课程:《Linux运维8天实战营》。本课程以实战+实践为主,旨在让学员在实战演练和技术干货中学习高频流行的Linux运维工具技术,了解运维技术图谱和职业发展路径,并获得清晰的运维职业规划。
