Linux運維工程師需掌握的技能

筆者是運維工程師,對Linux方面有點心得,如今說一下須要掌握哪方面的工具吧。說到工具,在行外能夠說是技能,在行內咱們通常稱之爲工具,就是運維必需要掌握的工具。我就大概列出這幾方面,這樣入門就基本沒有問題了。php

Linux系統若是是學習能夠選用Redhat或者CentOS,特別是CentOS在企業中用得最多,固然還會有其它版本的,但學習者仍是以這2個版本學習就行,由於這兩個版本是兄弟,沒區別的,有空能夠再研究一下SUSE,有些公司也喜歡用。python

  1. 系統基礎
    這個不用說了,基礎中的基礎,連這個都不會就別幹了,參考書籍,能夠看看鳥哥Linux基礎篇,至少要掌握這書60%內容,沒有必要所有掌握,可是基本命令總得會吧。
  2. 網絡服務
    服務有不少種,每一個公司用的服務也不相同,但基礎的服務確定須要掌握,如FTP/DNS/SAMBA,這幾個大概學一下就行,LAMP和LNMP都是必需要熟練,我所指的不是光會搭建,而是要很熟悉裏面配置才行,由於公司最關鍵的絕對是WEB服務,因此nginx和apache要熟悉,特別是nginx必定要很熟悉才行,而且有些公司還會用tomcat,這個也最好學一下。其它的網絡服務方面不用太擔憂,通常公司的環境都已經搭建好了,就算有新服務器或讓你整改,公司也會有相應的文檔讓你參照,不會讓你亂來,但至少相關配置必定要學熟,並且確定是編譯安裝多,那些模塊要熟悉下他的做用,特別是PHP那些模塊。
    這上面的兩點只是基礎,也是必要條件,不能說是工具,如下才是真正要掌握的工具。
  3. shell腳本和另一個腳本語言
    shell是運維工程師必須具有的,不懂這個連入職都不行,至少要寫出一些系統管理腳本,最簡單也得寫個監控CPU,內存比率腳本,這是最最最基本了,不要覺得會寫那些猜數字和計算什麼數的,這些都沒什麼做用,只做學習意義,寫系統腳本纔是最有意義的,而另外一個腳本語言是可選的,通常是3P,即python/perl和php,php就不須要考慮了,除非你想要作開發,我的建議學python會比較好,易實現自動化運維,perl是文本處理很強大的,反正這兩個學一個就能夠了。
  4. sed以及awk工具
    必需要掌握的,在掌握這兩個工具同時,還須要掌握正則表達式,這個就痛苦了,正則是最難學的表達式,但結合到sed和awk中會很強大,在處理文本內容和過濾WEB內容時十分有用,不過在學shell的同時通常會常常結合用到的,因此學第3點就會順便學第4點。
  5. 文本處理命令
    sort/tr/cut/paste/uniq/tee等,必學,也是結合第3點一塊兒學習的。
  6. mysql數據庫
    首選mysql數據庫,別問我爲何不學sqlserver和oracle數據庫,由於Linux用得最多絕對是mysql數據庫,增刪改查必學,特別要學熟查,其它方面可能不太須要,由於運維工程師使用最多仍是查,其它的優化和開發語句不會讓你弄的。
  7. iptables防火牆
    不學不行,防火牆也算是一個難點,說難不難,說易不易,最重要要弄懂規則,若是學過CCNA的朋友們可能會比較好學,由於iptables中也有NAT表,原理是同樣的,而FILTER表是用得最多,反正不學就確定不合格。
  8. 監控工具
    十分十分重要,我的建議,最好學下這3個cacti/nagios/zabbix,企業用得最多應該是nagios 和zabbix,反正都學學吧,但nagios會有點難,由於會涉及到用腳本寫自動監控,那個地方很難。
  9. 集羣以及熱備
    這個很重要的,且確定要懂的,但到了公司就不會讓你去弄,由於新手基本不讓你碰,集羣工具備不少種,最好學的是LVS,這是必學,最好也學學nginx集羣,反向代理,還有熱備,這個就有更多工具能實現了,像我公司是本身開發熱備工具的,mysql熱備也要學,就是主從複製,這個別告訴我容易,其實不容易的,想要學懂整個流程一點也不容易,只照着作根本沒有意義。
  10. 數據備份
    不學不行,工具備不少種,但至少要把RAID原理弄懂,特別是企業最經常使用的10,本身作實驗也要弄出來,備份的工具備不少,如tar/dump/rsync,最好多瞭解下。

以上就是踏入Linux運維行業須要掌握的工具,其實還有不少工具要掌握的,但你在學習的環境中是很難學到,最後再提醒一下,這裏所指的工具至關於技能,而不是像windows或ubuntu那些圖形化工具。還有,想學好Linux就不要裝圖形界面,儘可能在純命令的界面中操做,並且絕對不建議在真機上安裝Linux系統,這樣根本達不到學習的效果。mysql

相關文章
相關標籤/搜索