运维工程师必须掌握的基础技能有哪些?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了运维工程师必须掌握的基础技能有哪些?相关的知识,希望对你有一定的参考价值。

作者:Tanky Woo
链接:https://www.zhihu.com/question/23665108/answer/25299881
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

1. Linux基础

包括对Linux整体的理解/使用和基本命令:


2. 运维的命令:

运维相关的工具(命令),了解它能解决很多问题。

前几天刚回答了一个问题:如何才能更深入的学习linux?

里面的图在这里也可以用到:


&amp;amp;amp;lt;img src=\‘#\‘" //pic3.zhimg.com/50/b3c020e713fb94ddadb18f19be52a8ca_hd.jpg&amp;quot; data-rawwidth=&amp;quot;754&amp;quot; data-rawheight=&amp;quot;472&amp;quot; class=&amp;quot;origin_image zh-lightbox-thumb&amp;quot; width=&amp;quot;754&amp;quot; data-original=&amp;quot;https://pic3.zhimg.com/b3c020e713fb94ddadb18f19be52a8ca_r.jpg&amp;quot;&amp;amp;amp;gt;可以对着图对学习了解这些命令 (&amp;amp;amp;amp;lt;strike&amp;amp;amp;amp;gt;抱歉图片的原始来源我没有搜到,如果有朋友知道,麻烦告诉我,谢谢&amp;amp;amp;amp;lt;/strike&amp;amp;amp;amp;gt; 感谢技术分享图片可以对着图对学习了解这些命令 (<strike>抱歉图片的原始来源我没有搜到,如果有朋友知道,麻烦告诉我,谢谢</strike> 感谢可以对着图对学习了解这些命令 (<strike>抱歉图片的原始来源我没有搜到,如果有朋友知道,麻烦告诉我,谢谢</strike> 感谢

@jeremy yang

的提示,已经搜到来源  brendangregg.com/linuxphtmlslideshare.net/brendang)。


另外我个人也会对平时用到的这些工具做一个整理和记录,总结到我的个人维基上:Wiki · Tanky Woo

3. 基础服务:


可以本地搭建练练手

这里推荐鸟哥另外一本书 服务器架设篇: 鸟哥的Linux私房菜 (豆瓣)

4. 运维平台工具:

也在这个问题 如何才能更深入的学习linux? 里提到了:

  • Nagios

  • Puppet

  • Zabbix

  • Cacti

  • SaltStack

  • ....

可以选择性的折腾下,因为这个涉及到业务,没有实际环境,很难去理解他们的功能和特点。

5. 脚本:

  • 必备:Shell

  • 额外:Python,Perl...


6. 底层:

  • Linux C,内核


7. 网络:

网络是非常重要的一块

  • 把《TCP/IP协议详解》多看几遍,理解。

  • 熟练使用tcpdump等抓包工具


8. 安全:

  • 防火墙配置,如 iptables, ipset


9. 硬件:

  • 接口类型

  • 查看硬件信息

  • 知道各类型服务器,如塔式、机架式、刀片式


10. 其它:

了解更多特定技能要求的方式:

Google搜"Linux运维工程师 招聘",看看他们的需求。

最后推荐一本书:Unix/Linux系统管理技术手册 UNIX/Linux 系统管理技术手册 (豆瓣)

后续想到再做补充

素养/处理方式

除了技能,我觉得素养(态度)也可以谈谈

这个正好看到右边相关问题:运维工程师需要具备哪些性格特质?

1. 安全

运维人员的权限很大,所以一定要保证帐号/私钥的安全。

  • 最好使用加密工具存储。比如truecrypt,1password

  • 基于本地存储。切勿用网盘,也不建议用lastpass等

  • ssh私钥添加密码


以上任何一点都很重要,否则弄丢了,风险会非常大。

2. 责任心

如上面那个帖子里  

@山大

提到的 Owner 意识
  • 遇到报警,第一时间处理,而不要等着他人去处理

  • 如果无法处理,应该第一时间让同事协助帮忙,而不要禁止报警,让问题掩盖


3. 细心

你的任何一个操作,都可能造成系统的损坏、业务出问题。所以敲命令时一定要细心、再三确认。你敲的再快,也就节省那么一点时间,出了问题才是大事。

4. 推进/改善

如果代码有问题,导致系统开销很大,比如负载,io等。应该第一时间和开发部门确认,要求优化代码。

5. 进取心/不断学习

运维的知识范围很广,要不断学习。遇到问题,做好分析记录,事后还可以在部门内分享交流。

这也是我为什么热衷于写技术博客和维基的原因,好记性不如烂笔头。记录整理的过程也是一个思考升华的过程。

本文出自 “13452598” 博客,请务必保留此出处http://13462598.blog.51cto.com/13452598/1982967

以上是关于运维工程师必须掌握的基础技能有哪些?的主要内容,如果未能解决你的问题,请参考以下文章

运维工程师必须掌握的基础技能都有哪些

linux运维工程师必须掌握哪些技能

运维工程师必须掌握的基础技能有哪些?

运维工程师必须掌握的基础技能和职业前景

Linux运维工程师须掌握的基础技能都有哪些?

Linux运维工程师​‌‌一般要求掌握哪些知识?