从最低的说起
1.设备
网线的线序接法,百兆和千兆网线,光纤线,思科路由,华为路由,交换机什么的,包括一些VLAN组建,交换机和路由器之间的学习,一般我建议学习到CCNP就够了,计算机硬件了解,一般你自己DIY过电脑,一般都清楚明白。了解服务器和普通PC的区别,服务器 分别是 1U 2U 4U,然后就是找托管的托管服务器,费用根据机房线路多少,带宽,地域而决定,注册域名,备案最好也懂。
2.数据链路层
关乎就是MAC地址的走向,交换机学习,局域网的东西。
3.网络层
了解中国互联网几大ISP,电信,移动,联通,教育网互相连接的弊端,掌握tcpdump,winshark,的抓包软件,TCP/IP协议,当然也有很多路由器的协议。
4.缓存层
了解中国几间著名的CDN厂商。
几个开源缓存的软件
- 1.squid
- 2.varnish
- 3.Traffic Server
5.系统层
首先是三大系统,Linux,Unix,Windows,市面上一般就用着三个做服务器系统,Linux 是现今互联网的主流所以一般着力学习这个,Windows是Windows 2008 R2,Unix 就是AIX ,Free BSD,这里并无歧视平台的原因,因为win本身的域控管理也十分强大,但由于win的版权问题,费用高昂,大部分都会侧重于 Linux 的学习,互联网也倾向这个。AIX和Free BSD这个其实学习了Linux,都差不多,只有些不同,有兴趣的朋友可以去学习一下Linux 和 Uninx之间的历史。
6.数据库层
数据库我自己一般倾向于的Mysql,不过也少有接触Oracle.主要精通一门,估计其它也不难,至于为何选择 mysql 是因为应用它可以用,深入学习可以了解源码。也有非关系数据库moogoDB
7.容器层
Tomcat,Nginx,Apache,redis,IIS这里没什么好说的了,各自的语言自己选择各种容器来跑应用。
推荐书籍
Linux
首先是系统的,Linux界可以借鉴一下red hat的RHCE课程
鸟哥私房菜(必看)(服务器版很一般,不要选择)
Linux系统管理技术手册(选购,大头书)
Windows
win服务器推荐几本英文书籍
- Pearson.Windows.Server.2008.Portable.Command.Guide
- Microsoft.Press.Windows.PowerShell.3.0.First.Steps
- Professional.IIS.7
- Pearson.Windows.Server.2008.Portable.Command.Guide
普通命令 => bat脚本编写 => Powershell(相当于Linux的BashShell) => 域控
网络
思科的CCNP学习资料(必买,交换机和路由)
构建高性能Web站点(这本书是必买的,对于初学者,尤其对运维重要)
TCP/IP 协议一卷(必看)
构建高可用Linux服务器(选购)
脚本
Shell(这里没什么建议,我自己没买书,网上看又行,买书也行,京东 china pub自由选择)
除了懂 Shell 至于Python Perl ,我建议自己选择,我是Perler所以当然指导你选择Perl
O’Reilly:Perl语言入门(必看)
Perl高效编程(第2版)(选购)
高阶Perl(选购)
Python
Python基础教程(必看)
基础了解之后可以应用一些框架例如Django,tornado,想深入了解当然看看源代码,还有兴趣继续深入,也觉得自己C不错,可以看看 Python 虚拟机的源代码
正则脚本(正则的原理,正则在linux必不可少)
正则表达式经典实例 (选看)
精通正则表达式 (选看)
数据库
高性能mysql(必看)
高可用mysql(必看)
Effective MySQL之备份与恢复(选购)
oracle database 9i/10g/11g编程艺术:深入数据库体系结构:第2版(如果你用oracle就看看)
监控
监控类型很多,你可以多上网查看相关内容,如Cact、bmon、nload、iftop、vnstat、iptraf等。
总结
CLI(Command line)是运维万根之源,对脚本要熟悉随意就能编写,大概排障步骤想好,初学者就参照网上的一键XXX来做个例子吧,再自己改进,例如初始化系统之类,配置ssh,配置参数之类。万丈高楼从地起,以上书籍虽然多,但是还是很有必要看看的。