如何才能成為一個專業的linux運維?
如果從一個計算機專業的大學生作為起點,鑒於國內的發展,我相信很多大神當初也沒想到自己會做運維,走過不少彎路。但是我相信隨著信息化產業的發展,國內對運維的要求會越來越高。請各位大神,總結一下流程,先學會什麼,後學會什麼,一步一步。這樣,能讓我有一個更好的計劃。謝謝。
如果你對做專業的Linux運維一知半解,那麼一個科學的學習路線圖是必要的,下面是我們團隊研究的Linux運維學習路線圖。
運維學習階段,需要分為四個階段,linux初級入門-àlinux中級進階-àlinux高級提升,和資深方向細化。
第一階段:初級入門
初級階段需要把linux學習路線搞清楚,任何學習都是循序漸進的,所以學linux也是需要有一定的路線。
個人建議學習的路線如下:
初級入門:
1、Linux基礎知識、基本命令(起源、組成、常用命令如cp、ls、file、mkdir等常見操作命令)
2、Linux用戶及許可權基礎
3、Linux系統進程管理進階
4、linux高效文本、文件處理命令(vim、grep、sed、awk、find等命令)
5、shell腳本入門(可邊練習邊學習)
第二階段:中級進階
中級進階需要在充分了解linux原理和基礎知識之後,對上層的應用和服務進行深入學習,其中說到服務肯定涉及到網路的相關知識,是需要花時間學習的。
1、TCP/IP網路基礎(差不多CCNA、NP的知識就夠用)
2、Linux企業常用服務(如dns、http、ftp、mail、nfs等)
3、Linux企業級安全原理和防範技巧(系統性能/安全、安全威脅模型和保護方法
4、 加密/解密原理及數據安全、系統服務訪問控制及服務安全基礎
5、iptables安全策略構建
6、shell腳本進階(主要是結合一些應用,寫一些案例)
7、MySQL應用原理及管理入門(能管理和搭建一個個人博客站點)
學到這裡,掌握的基本技能,已經夠用了,已經能做一些基礎的運維工作和簡單維護了。
第三階段:高級提升
1、http服務代理緩存加速(其中主要學習varnish、nginx緩存系統,要對CDN的知識有所了解。)
2、企業級負載集群(其中主要學習nginx、haproxy、lvs要對主要知識熟練掌握,對負載均衡演算法有清晰認識,)
3、企業級高可用集群 (其中需要對keepalived,heartbeat等進行深入講解)
4、運維監控zabbix詳解(主要是zabbix、cacti、nagios等監控系統,現在用的比較多的是zabbix)
5、運維自動化學習(需要學一些開源運維自動化工具的使用如ansible、puppet、cobbler等運維自動化工具)
能掌握到這裡,基本能處理搞定很多工作了,可以去面試高級運維工程師,差不多薪資能達到12-18K左右
第四階段:資深方向進階
1、 大數據方向(需要對hadoop、storm等常見開源大數據系統需要深入了解)
2、 雲計算方向(主要是openstack這套東西,當然像一些kvm等虛擬化技術,也是需要掌握的,現在docker也比較流行)
3、 運維開發(主要是python運維開發)
4、 自動化運維(在之前自動化基礎上做深入)
5、 運維架構師(主要需要廣度,差不多5年左右以上經驗,可以擔當此職位)
另外我們整理了一個學習知識庫,你可以看一下:
【超全整理】《Linux雲計算從入門到精通》系列實戰筆記全放送 | Linux運維部落
推薦的學習書籍:
《鳥哥私房菜-基礎版》
《實戰LINUX_SHELL編程與伺服器管理》
《LINUX命令行與SHELL腳本編程大全第2版].布盧姆.掃描版》
《Linux初學者指南》
《現代操作系統(原書第3版)》
《深入理解計算機系統(原書第2版)》
《linux啟動時是如何載入和管理RAID設備》
《LINUX內核設計與實現》
《深度探索Linux操作系統:系統構建和原理解析》
《TCP.IP路由技術[第一卷]》
《Linux DHCP詳細說明配置文件檔》
《史上最詳細的vsftpd配置文件講解》
《RSADSA authentication on SSH》
《超全的NFS文檔(FOR LINUX)》
《selinux howto》
《構建高性能web站點》
《OReilly DNS and BIND 5th(2006)》
《APACHE+COOKBOOK中文版》
《Apache2.2中文文檔電子書》
《細說PHP(第2版)(含DVD光碟1張)》
《MySQL性能調優與架構設計》
《30天自製操作系統(附光碟1張)》
《Linux From Scratch 7.2 中文版》
《LVS手冊》
《IPVS命令列表參考》
《LVS-HOWTO》官方站點wiki
《3 小時玩轉 iptables 企業版》官方站點
《實戰Nginx:取代Apache的高性能》
《Web伺服器》
《nginx核心講解》
推薦的一些社區和論壇:
Linux 私房菜』,http://linux.vbird.org/
Linux中國開源社區
Linux公社 - Linux系統門戶網站
Linux下載站 - 提供全系列Linux發行版系統下載
Linux運維部落 | |國內專業的Linux運維博客平台
運維行業是個技術經驗各佔一半的行業,對於新人來說,首先要有紮實的系統知識,同時要能學善學,具有很強的責任心,良好的溝通能力與團隊合作,還要耐得住寂寞。
對於學生來說,既然要向Linux方向發展,那良好紮實的Linux系統知識是必不可少的,剛開始時不需要去研究內核,把Linux的基本思想理解透徹,常用的命令用熟;同時也要有堅實的網路知識,主要是TCP/IP協議,路由,DNS。系統與網路作為學生都是有條件去接觸的(搭數台虛擬機,配多塊網卡)
另外要做好運維,熟練應用一門腳本語言也是必不可少的。Bash Shell, Perl, Python選一即可。推薦是Python。
以上都有基礎了,可以考慮找個有點規模的互聯網公司去實習。畢竟運維一半靠知識,另一半是靠經驗,在有規模的互聯網公司中實習可以學的更多,更快。
然後可以按實際情況,給自己設計一條成長之路,是往廣度發展,還是向深度發展。廣度是儘可能的了解/熟悉運維的每個環節,成為整個系統的knowledge hub;深度是在運維中的某一個環節沉下心去鑽研,成為這方面的行家。51cto這個網站不錯,建議經常去泡泡
推薦閱讀:
※linux下雙網卡能不能設置同一網段?
※女生去馬哥培訓學linux運維怎麼樣?
※linux系統下,有哪些類似行為監管軟體?
※馬哥教育的網路授課怎麼樣?
※關於linux運維工程師具體做什麼?