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

如题所述

第1个回答  2022-11-16

1,网络工程师的工作:你至少要能配置CISCO 6509以下的设备,熟悉各种网络协议,否则网络出问题的时候你会傻掉。

2,系统工程师的工作:
你至少要理解各种系统服务,在出问题的情况下要迅速解决问题,而不是等系统工程师来解决。

3,安全工程师的工作:
我不要求你一定要会各种网络编程,但是在服务器收攻击的情况下,没有防火墙的情况下,做一些简单的处理工作。

4,存储工程师的工作:至少要熟悉各个厂商的设备,各种备份和还原的办法。

5,测试工程师的工作:在新版本上线之前,你至少要协同测试工程师做测试工作,因为你是运维人员,不了解程序架构导致无法解决故障,你也有一份责任。

6,研发人员的工作 :
运维工具都需要自已开发,熟悉开发语言,需要有过实际开发经验,否则工作会非常痛苦,我深有体会。

7,英语

8,好的沟通者:不出问题时候你可以打游戏睡觉,出问题的时候要能和项目人员沟通,快速解决问题,而不是推;我知道有很多人能推责任,你可以做替死鬼,但是离开这个工作你还能找到更好的;把责任推到别人身上的人,下次出问题的时候,绝对没人帮你。你要能和各个兄弟部门关系非常的密切,出了问题有兄弟帮你担责任;也要能非常扯皮,没事在会议上把别人都搞定。

9,库房管理员:数万台服务器让你来管理,任何丢失或者损坏都是不负责任和失职的表现。

1. Linux基础

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

    了解Linux FHS : Filesystem Hierarchy Standard,国人写的这本书不错 Linux系统架构与目录解析 (豆瓣)

    入门Linux:鸟哥的Linux私房菜.基础学习篇(第三版) (豆瓣) 个人认为鸟哥的这本书是一本非常好的入门书

    基本操作命令:Google,如Linux command cheat sheet

    熟悉至少一个内置编辑器: vi, nano

    至少熟悉一个发行版(或系列),建议作为服务器常用的如Centos, Debian, Ubuntu,可以了解多个常用发行版

    2. 运维的命令:

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

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

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

    可以对着图对学习了解这些命令。

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

    3. 基础服务:

    LAMP或LNMP :Apache/Nginx,MySQL,PHP/Python/Perl LAMP (software bundle)

    FTP

    DNS

    SAMBA

    EMAIL

    NTP

    DHCP

    ...

    可以本地搭建练练手

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

    4. 运维平台工具:

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

    Nagios

    Puppet

    Zabbix

    Cacti

    SaltStack

    ....

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

    5. 脚本:

    必备:Shell

    额外:Python,Perl...

    6. 底层:

    Linux C,内核

    7. 网络:

    网络是非常重要的一块

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

    熟练使用tcpdump等抓包工具

    8. 安全:

    防火墙配置,如 iptables

    9. 硬件:

    接口类型

    查看硬件信息

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