10

写代码写了10多年, 从小公司到大公司, 前端, 后端, 数据库, 运维什么都做, 最后还是专职做运维了.

整理下运维的一些技能, 部分是网上资料并整理.

Linux基础

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

  • 入门Linux:鸟哥的Linux私房菜.基础学习篇(第三版)

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

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

运维的命令

clipboard.png

可以对着图对学习了解这些命令. 当然不用全部都学, 遇到一个问题就百度Google再自己整理.

基础服务:

  • Nginx/Apache

  • Mysql/Mongodb/Redis/Memcached

  • Tomcat

  • LAMP/LNMP

  • FTP

  • DNS

  • SAMBA

  • EMAIL

  • NTP

  • DHCP
    ...

其中, Nginx(Apache可以绕过), Mysql, LNMP最好自己动手搭建, 并整理

安全

防火墙配置,如 iptables, ipset

脚本

  • 必备:Shell (初级)

  • 额外:Python,Perl... (初中级)

运维平台工具 (中级)

  • Nagios

  • Puppet

  • Zabbix

  • Cacti

  • SaltStack
    ....

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

网络 (中高级)

  • 网络是非常重要的一块把《TCP/IP协议详解》多看几遍,理解。

  • 熟练使用tcpdump等抓包工具

底层 (大神级)

Linux C,内核

其它: 素养/处理方式

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

安全

运维人员的权限很大,所以一定要保证帐号/私钥的安全。
最好使用加密工具存储。比如truecrypt,1password
基于本地存储。切勿用网盘,也不建议用lastpass等
ssh私钥添加密码

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

责任心

遇到报警,第一时间处理,而不要等着他人去处理
如果无法处理,应该第一时间让同事协助帮忙,而不要禁止报警,让问题掩盖

细心

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

推进/改善

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

进取心/不断学习

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

一定要整理分析, 好记性不如烂笔头!!!! 没有谁能一步登天, 牛人都是从1+1开始学的, 为什么有的人会成为牛人, 定期整理分析是必不可少的. 没有整理就不能成为自己的知识.

好记性不如烂笔头

推荐一定要整理自己的知识, 形成自己的一套知识体系! 所以笔记工具必不可少. 我曾经看到过一个人有上万的笔记, 但每次遇到问题还是百度, 百度后看到之后添加到笔记中, 结果之前添加过了. 这绝对是在做无用功, 所谓书越读越薄, 是建立在定期整理自己的知识之上的. 不然你再多的笔记都是无用!!

  • Evernote, 老牌

  • Leanote, 有Linux客户端, 支持代码高亮 (推荐)

  • 为知

团队知识库

运维不是一个人的事, 是一个团队的事, 我曾经管理了10个人运维团队, 你放心把运维的事交给他们? 所以, 你的知识必须要转化成他们的知识, 一定要建立一个团队的知识库, 而不仅仅是自己的知识库.

以下是构建知识库的工具:

  • Confluence, 功能全

  • TeaKKi, 实时协作, 轻量好用(代码高亮), 后起新秀 (推荐)


alaege
180 声望15 粉丝

程序员, 爱新技术, 爱自己!