- 相關(guān)推薦
Linux運維的必備技能
Linux運維人員主要劃分為:初級、中級和高級三個(gè)等級,不同級別的Linux運維人員需要掌握的技能不同。本文主要為大家介紹各個(gè)等級人員需要掌握的必備技能,從而指引同行朋友在修行的過(guò)程中少走彎路。只屬于個(gè)人多年的領(lǐng)悟,由于時(shí)間問(wèn)題難免有不足之處,如有不足之處請發(fā)表評論!我會(huì )加以修正,從而達到寫(xiě)本文的初衷。
俗話(huà)說(shuō)“隔行如隔山”,尤其對于一個(gè)計算機小白的話(huà),入門(mén)很不容易。建議你先科普一下計算機的組成和工作原理、處理器的體系結構及原理、存儲器、I/O設備、內存原理和文件系統等。通過(guò)這些的學(xué)習至少能夠讓你對計算機有一個(gè)基本的認識,如果你能更深入的理解這方面的知識對于你日后對Linux系統調優(yōu)起著(zhù)不可取代的作用。當然你也可是試著(zhù)做一次服務(wù)器的設備選型,也能夠讓你去了解更多關(guān)于硬件的知識。
1.計算機入門(mén)級推薦讀物
技術(shù)關(guān)鍵詞:CPU、內存、磁盤(pán)、IO、文件系統
推薦讀物:<<現在操作系統>>和<<深入理解計算機系統>>。
接下來(lái)就是Linux操作系統的選擇,將內核、源代碼及相關(guān)的應用程序組織構成一個(gè)完整的操作系統,讓一般的用戶(hù)可以簡(jiǎn)便地安裝和使用Linux,這就是所謂的發(fā)行版本(distribution)。我們一般談?wù)摰腖inux系統便是針對這些發(fā)行版本。在眾多的發(fā)行版中選擇一個(gè)適合入門(mén)學(xué)習的版本也不是一件容易的事。
對于學(xué)習Linux初期推薦選擇RHEL或CentOS這些“老牌”的操作系統;如果你只是為了看看Linux的華麗的桌面,推薦選擇適合大眾的Ubuntu;如果你想定制一個(gè)操作系統,那不防試試Gentoo。也就說(shuō)Linux有迎合大眾各種口味的操作系統,只有你想不到的,沒(méi)有它沒(méi)有的
目前,CPU和內存的發(fā)展速度可以說(shuō)是一日千里,固態(tài)硬盤(pán)的出現,擺脫了機械硬盤(pán)使用機械轉子帶動(dòng)多個(gè)磁盤(pán)硅片的時(shí)代。但是其昂貴的價(jià)格,不能將其普及到所有的服務(wù)器上。很多服務(wù)器依然使用機械硬盤(pán),機械硬盤(pán)的I/O速度取決于其轉速。轉速的增加,會(huì )使數據的讀寫(xiě)效率有所提高,但與CPU的速度相比,磁盤(pán)的速度相對來(lái)說(shuō)越來(lái)越慢了。這個(gè)速度差異導致單個(gè)磁盤(pán)無(wú)法與CPU速度匹配。解決磁盤(pán)速度問(wèn)題的方法是使用磁盤(pán)陣列(RAID),可以減少維護時(shí)間,增強數據安全性,保證應用的性能。
對于中小型系統,無(wú)論使用怎樣部署都沒(méi)有多大的問(wèn)題,重點(diǎn)是把握可恢復性。磁盤(pán)陣列支持的I/O訪(fǎng)問(wèn)次數和I/O數據傳輸與RAID設計算法有關(guān)。業(yè)務(wù)的不同,讀和寫(xiě)操作的頻繁次數自然不同,對于讀操作頻繁的系統適用于RAID1和RAID5(例如:Web服務(wù)器),對于寫(xiě)操作頻繁的系統適用于RAID10(例如:數據庫)。
安裝系統前,避免不了合理的選擇RAID陣列級別,提高存儲設備的可靠性和效率,同時(shí)還要考慮預算,盡量的降低成本。
Linux操作系統有GUI和字符界面的安裝方式,初期推薦你使用GUI和中文的安裝方式快速的掌握操作系統的安裝,之后就使用英文和字符的安裝方式進(jìn)行安裝,這樣就可以將安裝過(guò)程看的更清楚和專(zhuān)業(yè)。最終的目標是實(shí)現定制化安裝操作系統,按照服務(wù)器上跑的業(yè)務(wù),合理的規劃磁盤(pán)分區和選擇要安裝的軟件。定制化安裝系統可以提高系統的安裝速度,給予我們意想不到的穩定性和安全性。
2.Linux初級運維推薦讀物
技術(shù)關(guān)鍵詞:開(kāi)源、GNU、GPL、POSIX、Linux內核、RAID、RAID等級、磁盤(pán)、磁盤(pán)原理、塊、超級塊、文件系統、i節點(diǎn)
推薦讀物:<<鳥(niǎo)哥的私房菜>>和<<RedHatEnterpriseLinux5系統管理寶典>>。
恭喜你,你已經(jīng)掌握的Linux系統的安裝。安裝后你輸入用戶(hù)名和密碼登錄系統后,第一眼看到的用戶(hù)界面就是Shell,這個(gè)時(shí)候有必要知道Linux系統的組成、Shell解析命令的過(guò)程、常見(jiàn)的Shell版本、Shell的功能、Shell的元字符等。
Linux操作系統是一個(gè)可以放棄鼠標的操作系統,一切皆是文件,一切皆是命令,命令就是一切,就像李寧的廣告詞一樣“一切皆有可能”。Linux系統上有成百上千的命令,分為內置命令和外置命令,雖然這些命令的功能不同,幸好它們的使用方式和規則都是統一的,這就是Linux命令的語(yǔ)法。
了解Linux命令的語(yǔ)法和養成使用Linux命令的好習慣是學(xué)習Linux運維的第一步,例如:命令和參數嚴格區分大小寫(xiě)、合理的使用Tab鍵補全命令和善用Linux幫助手冊快速獲取命令的幫助。
對于Linux初級運維來(lái)說(shuō)不止要掌握這些人人皆知的使用習慣,實(shí)際上我們可以認為L(cháng)inux初級人員就是一個(gè)單機管理員或者稱(chēng)為L(cháng)inux系統管理員,對于Linux的單機管理至少要掌握如下技術(shù)。
這些知識只是讓你步入運維行業(yè)中最基本的一步,本來(lái)初級和中級運維在很多時(shí)候很難細致的去區分,對于初中級運維除了掌握以上的技術(shù),還需要掌握企業(yè)常見(jiàn)的網(wǎng)絡(luò )服務(wù)(例如:DHCP、DNS、FTP、Samba、Mail、NFS等)和網(wǎng)站架構LAMP、LNMP的部署及安全加固。使用Shell編寫(xiě)常用的安裝、監控(CPU、內存、磁盤(pán))腳本;正則表達式、sed、awk、sort、uniq、cut、find、grep等工具的使用。
上面主要介紹了Shell腳本編程和LAMP的學(xué)習方向,通過(guò)Shell編寫(xiě)日常CPU、內存、硬盤(pán)和服務(wù)的監控腳本和報警、統計Web服務(wù)器的訪(fǎng)問(wèn)次數和訪(fǎng)問(wèn)排名、MySQL數據庫備份腳本等。掌握LAMP和LNMP的部署和日常維護。防火墻的使用,例如:iptables和硬件防火墻的原理和規則的添加。
3.Linux中級運維推薦讀物
技術(shù)關(guān)鍵詞:DHCP、DNS、FTP、Samba、Mail、NFS、Apache、MySQL、PHP、Nginx、Shell
推薦讀物:<<鳥(niǎo)哥的私房菜服務(wù)>>、<<MySQL數據庫開(kāi)發(fā)、優(yōu)化與管理維護>>、<<更安全的Linux網(wǎng)絡(luò )>>、<<實(shí)戰Nginx_取代Apache的高性能Web服務(wù)器>>、<<Unix.Shell編程>>、<<LINUX與UNIXSHELL編程指南>>、<<高級Bash腳本編程指南>>
云計算和大數據時(shí)代的來(lái)臨,未來(lái)對運維人員的要求只能是越來(lái)越高,多次看到“學(xué)會(huì )運維自動(dòng)化、走遍天下都不怕”給人一種運維不自動(dòng)化就不是運維,企業(yè)不云計算就不叫企業(yè)。事實(shí)并非如此,很多技術(shù)只能說(shuō)是一個(gè)趨勢,并未形成大勢。只不過(guò)作為技術(shù)的我們需要關(guān)注未來(lái)的趨勢,在空閑的時(shí)間去掌握這些技術(shù)。
對于高級運維來(lái)說(shuō),不僅需要豐富的知識體系還需要一線(xiàn)的經(jīng)驗,所以說(shuō)精通還是很難的,不是我們看到很多剛畢業(yè)的學(xué)生在簡(jiǎn)歷中寫(xiě)出了各種精通,由于是高級Linux運維,不經(jīng)過(guò)多年的鍛煉是達不到較高的境界。所以高級運維是稀缺型人才,對于企業(yè)來(lái)說(shuō)也很難找到適合自己的人才。
高級運維是一個(gè)非常專(zhuān)業(yè)職位,高級運維需要掌握相當多的知識,包括但不限于網(wǎng)絡(luò )技術(shù)、系統編程、運維流程及思想、虛擬化、自動(dòng)化運維體系構建、數據庫管理,云計算平臺應用,大數據等。
4.Linux高級運維推薦讀物
技術(shù)關(guān)鍵詞:高可用、高并發(fā)、負載均衡、云計算、大數據、自動(dòng)化、監控工具、虛擬化、中間件、架構、讀寫(xiě)分離、動(dòng)態(tài)分離
推薦讀。<<構建高性能Web站點(diǎn)>>、<<高性能MySQL>>、<<精通Puppet配置管理工具>>、<<高性能Linux服務(wù)器構建實(shí)戰運維監控性能調優(yōu)與集群應用>>、<<CDN技術(shù)詳解>>、<<實(shí)用負載均衡技術(shù)>>、<<高性能網(wǎng)站構建實(shí)踐>>、<<大型網(wǎng)站技術(shù)架構>>、<<Openstack實(shí)戰指南>>
寫(xiě)之前就感覺(jué)不好界定運維的等級,結果寫(xiě)完之后這種感覺(jué)更加強烈,有些技術(shù)你既可以說(shuō)他是高級技術(shù)也可以說(shuō)他很基礎。我認為,技術(shù)沒(méi)有等級,只要我們愿意去還原技術(shù)本身的面目,再簡(jiǎn)單的技術(shù)你也會(huì )感覺(jué)“有點(diǎn)意思”。最后祝愿各位,在技術(shù)的不歸路上,我的技術(shù)我做主。
【Linux運維的技能】相關(guān)文章:
Linux運維工程師面試題庫09-22
Linux運維工程師面試題庫及答案09-24
運維項目管理流程06-08
企業(yè)IT運維管理選型建議08-14
IT運維管理包含的六大趨勢07-08
關(guān)于IT運維服務(wù)管理中知識管理的思考10-23
論數據中心運維工作的提升技巧06-27