linux運維的必備技能
無論你是準備從事
linux
運維工作的菜鳥,還是早已入門的老鳥。在網際網路時代,裝置和
it技術更新永無止境。作為乙個
linux
運維人員你無法阻止技術的更新,但是我們可以有「工欲善其事,必先利其器」的覺悟,腳踏實地走自己的道,修自己的行。
推薦讀物和。
接下來就是linux作業系統的選擇,將核心、源**及相關的應用程式組織構成乙個完整的作業系統,讓一般的使用者可以簡便地安裝和使用linux,這就是所謂的發行版本(distribution)。我們一般談論的linux系統便是針對這些發行版本。在眾多的發行版中選擇乙個適合入門學習的版本也不是一件容易的事。對於學習linux初期推薦選擇rhel或centos這些「老牌」的作業系統;如果你只是為了看看linux的華麗的桌面,推薦選擇適合大眾的ubuntu;如果你想定製乙個作業系統,那不防試試gentoo。也就說linux有迎合大眾各種口味的作業系統,只有你想不到的,沒有它沒有的!
目前,cpu和記憶體的發展速度可以說是一日千里,固態硬碟的出現,擺脫了機械硬碟使用機械轉子帶動多個磁碟矽片的時代。但是其昂貴的**,不能將其普及到所有的伺服器上。很多伺服器依然使用機械硬碟,機械硬碟的i/o速度取決於其轉速。轉速的增加,會使資料的讀寫效率有所提高,但與cpu的速度相比,磁碟的速度相對來說越來越慢了。這個速度差異導致單個磁碟無法與cpu速度匹配。解決磁碟速度問題的方法是使用磁碟陣列(raid),可以減少維護時間,增強資料安全性,保證應用的效能。
對於中小型系統,無論使用怎樣部署都沒有多大的問題,重點是把握可恢復性。磁碟陣列支援的i/o訪問次數和i/o資料傳輸與raid設計演算法有關。業務的不同,讀和寫操作的頻繁次數自然不同,對於讀操作頻繁的系統適用於raid1和raid5(例如:web伺服器),對於寫操作頻繁的系統適用於raid10(例如:資料庫)。
安裝系統前,避免不了合理的選擇raid陣列級別,提高儲存裝置的可靠性和效率,同時還要考慮預算,盡量的降低成本。
linux作業系統有gui和字元介面的安裝方式,初期推薦你使用gui和中文的安裝方式快速的掌握作業系統的安裝,之後就使用英文和字元的安裝方式進行安裝,這樣就可以將安裝過程看的更清楚和專業。最終的目標是實現定製化安裝作業系統,按照伺服器上跑的業務,合理的規劃磁碟分割槽和選擇要安裝的軟體。定製化安裝系統可以提高系統的安裝速度,給予我們意想不到的穩定性和安全性。
推薦讀物
和<< redhatenterprise linux5系統管理。
恭喜你,你已經掌握的linux系統的安裝。安裝後你輸入使用者名稱和密碼登入系統後,第一眼看到的使用者介面就是shell,這個時候有必要知道linux系統的組成、shell解析命令的過程、常見的shell版本、shell的功能、shell的元字元等。
linux作業系統是乙個可以放棄滑鼠的作業系統,一切皆是檔案,
一切皆是命令,
命令就是一切,
就像李寧的廣告詞一樣「一切皆有可能」。linux系統上有成百上千的命令,分為內建命令和外接命令,雖然這些命令的功能不同,幸好它們的使用方式和規則都是統一的,這就是linux命令的語法。了解linux命令的語法和養成使用linux命令的好習慣是學習linux運維的第一步,例如:命令和引數嚴格區分大小寫、合理的使用tab鍵補全命令和善用linux幫助手冊快速獲取命令的幫助。對於linux初級運維來說不止要掌握這些人人皆知的使用習慣,實際上我們可以認為linux初級人員就是乙個單機管理員或者稱為linux系統管理員,對於linux的單機管理至少要掌握如下技術。下圖中顯示了linux初級運維需要掌握的技術:
這些知識只是讓你步入運維行業中最基本的一步,本來初級和中級運維在很多時候很難細緻的去區分,對於初中級運維除了掌握以上的技術,還需要掌握企業常見的網路服務(例如:dhcp、dns、ftp、samba、mail、nfs等)和**架構lamp、lnmp的部署及安全加固。使用shell編寫常用的安裝、監控(cpu、記憶體、磁碟)指令碼;正規表示式、sed、awk、sort、uniq、cut、find、grep等工具的使用。
上圖中主要介紹了shell指令碼程式設計和lamp的學習方向,通過shell編寫日常cpu、記憶體、硬碟和服務的監控指令碼和報警、統計web伺服器的訪問次數和訪問排名、mysql資料庫備份指令碼等。掌握lamp和lnmp的部署和日常維護。防火牆的使用,例如:iptables和硬體防火牆的原理和規則的新增。
推薦讀物:
、資料庫開發、優化與管理、、、
、與unix shell程式設計、
雲計算和大資料時代的來臨,未來對運維人員的要求只能是越來越高,多次看到「學會運維自動化、走遍天下都不怕」給人一種運維不自動化就不是運維,企業不雲計算就不叫企業。事實並非如此,很多技術只能說是乙個趨勢,並未形成大勢。只不過作為技術的我們需要關注未來的趨勢,在空閒的時間去掌握這些技術。
對於高階運維來說,不僅需要豐富的知識體系還需要一線的經驗,所以說精通還是很難的,不是我們看到很多剛畢業的學生在簡歷中寫出了各種精通,由於是高階linux運維,不經過多年的鍛鍊是達不到較高的境界。所以高階運維是稀缺型人才,對於企業來說也很難找到適合自己的人才。
高階運維是乙個非常專業職位,高階運維需要掌握相當多的知識,包括但不限於網路技術、系統程式設計、運維流程及思想、虛擬化、自動化運維體系構建、資料庫管理,雲計算平台應用,大資料等。
推薦讀取:
、>、、、
技術、、、、
實戰寫之前就感覺不好界定運維的等級,結果寫完之後這種感覺更加強烈,有些技術你既可以說他是高階技術也可以說他很基礎。我認為,技術沒有等級,只要我們願意去還原技術本身的面目,再簡單的技術你也會感覺「有點意思」。最後祝願各位,在技術的不歸路上,我的技術我做主。
linux運維必備技能
作業系統 資料庫 mysql,mysql proxy,mariadb,postgresql db中介軟體 mycat,atlas,cobar amoeba,mysql proxy 相關 lvs,keepalived,haproxy,nginx,heartbeat squid,nginx,varnis...
運維必備技能
熟練運用centos ubuntu 與之相關的命令列,系統配置 網路配置 系統優化 核心優化 推薦書目 鳥哥的linux私房菜 第四版 mysql 版本以5.7 8.0 為主 與之相關的資料庫安裝 配置 優化 儲存引擎 索引 資料備份 主從複製 集群方案 掌握常見的集群方案部署及原理,比如mmm m...
linux運維技能
運維工程師必須掌握的基礎技能有哪些?知乎 這個問題挺好的,回答這個問題也是對自身的審查,看看自己還欠缺哪些。所以我估計得好好思考下,也許下一刻我就會突然驚醒,發現我還是戰 渣 首先限定在linux運維工程師上 回答僅代表我想到,不代表我都會 技能 1.linux基礎 包括對linux整體的理解 使用...