Linux運(yùn)維基礎(chǔ)知識(shí)-創(chuàng)新互聯(lián)

這篇文章主要為大家分享Linux運(yùn)維基礎(chǔ)知識(shí)。文中還介紹了Linux運(yùn)維常用的工具和Linux運(yùn)維需要運(yùn)用到的開發(fā)技術(shù)以及Linux運(yùn)維面試題,希望大家通過這篇文章能有所收獲。

創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都做網(wǎng)站、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的雨花網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

linux運(yùn)維人員常用工具拓?fù)湓斠姡?/p>

Linux運(yùn)維基礎(chǔ)知識(shí)
1.rsync工具

很多地方經(jīng)常會(huì)用到rsync工具,實(shí)施幾臺(tái)服務(wù)器的同步效果。我們公司就是使用這個(gè)工具完成服務(wù)器的youxi的服務(wù)端和客戶端同步,有幾個(gè)文章例子:

rsync 強(qiáng)化技術(shù)(手動(dòng)修改端口開啟防火墻的情況下)并且通過腳本只同步需要的服務(wù)器inotify+rsync+mutt+msmtp 實(shí)現(xiàn)linux文件或者目錄自動(dòng)更新并且實(shí)現(xiàn)發(fā)郵件給管理員。
2.網(wǎng)絡(luò)服務(wù)

服務(wù)有很多種,每間公司都會(huì)用到不同的,但基礎(chǔ)的服務(wù)肯定要掌握,如FTP、DNS、SAMBA、郵件, 這幾個(gè)大概學(xué)一下就行,LAMP和LNMP是必須要熟練,我所指的不是光會(huì)搭建,而是要很熟悉里面的相當(dāng)配置才行,因?yàn)楣咀铌P(guān)鍵的絕對(duì)是Web服務(wù)器,所以Nginx和Apache要熟悉,特別是Nginx一定要很熟悉才行,至少有些公司還會(huì)用Tomcat,這個(gè)也最好學(xué)一下。

其實(shí)網(wǎng)絡(luò)服務(wù)方面不用太擔(dān)心,一般公司的環(huán)境都已經(jīng)搭建好,就算有新服務(wù)器或讓你整改,公司會(huì)有相應(yīng)的文檔讓你參照來弄,不會(huì)讓你亂來的,但至少相關(guān)的配置一定要學(xué)熟,而且肯定是編譯安裝多,那些模塊要熟悉一下他的作用,特別是PHP那些模塊。

這面2點(diǎn)只是基礎(chǔ),也是必要條件,不能說是工具,以下才是真正的要掌握的工具。

Samba文件共享服務(wù)(共享腳本 讓你工作更輕松)
Linux web服務(wù)安裝apache 思路 (源碼編譯,自己定義服務(wù))
FTP(持虛擬用戶,并且每個(gè)虛擬用戶可以具有獨(dú)立的屬性配置)
linux 下構(gòu)建DHCP服務(wù)器
3.腳本語言

Shell腳本和另一個(gè)腳本語言,Shell是運(yùn)維人員必須具備的,不懂這個(gè)連入職都不行,至少也要寫出一些系統(tǒng)管理腳本,最簡(jiǎn)單也得寫個(gè)監(jiān)控CPU,內(nèi)存比率的腳本吧,這是最最最基本了,別以為會(huì)寫那些猜數(shù)字和計(jì)算什么數(shù)的,這些沒什么作用,只作學(xué)習(xí)意義,寫系統(tǒng)腳本才是最有意義,而另一個(gè)腳本語言是可選的,一般是3P,即Python、Perl和PHP,PHP就不需要考慮了,除非你要做開發(fā),我個(gè)人建議學(xué)Python會(huì)比較好,難實(shí)現(xiàn)自動(dòng)化運(yùn)維,Perl是文本處理很強(qiáng)大,反正這兩個(gè)學(xué)一個(gè)就行了。


4.sed和awk工具

這兩個(gè)工具必須要掌握,同時(shí)還要掌握正則表達(dá)式,這個(gè)就痛苦了,正則是最難學(xué)的表達(dá)式,但結(jié)合到sed和awk中會(huì)很強(qiáng)大,在處理文本內(nèi)容和過濾Web內(nèi)容時(shí)十分有用,不過在學(xué)Shell的同時(shí)一般會(huì)經(jīng)常結(jié)合用到的,所以學(xué)第3點(diǎn)就會(huì)順便學(xué)第4點(diǎn)。

sed 簡(jiǎn)明教程https://coolshell.cn/articles/9104.html
5.文本處理命令

sort 、tr、cut、paste、uniq、tee等必學(xué),也是結(jié)合第3點(diǎn)腳本語言時(shí)一并學(xué)習(xí)的。

6.數(shù)據(jù)庫(kù)

選MySQL,別問我為什么不學(xué)SQL Server和Oracle,因?yàn)長(zhǎng)inux用得最多絕對(duì)是MySQL,增刪改查必學(xué),特別要學(xué)熟查,其它方面可能不太需要,因?yàn)檫\(yùn)維人員使用最多還是查,哪些優(yōu)化和開發(fā)語句不會(huì)讓你弄的。

MySQL(手動(dòng)編譯詳細(xì)思路,以及增刪改查、授權(quán)、備份還原)
7.防火墻

防火墻也算是個(gè)難點(diǎn),說難不難,說易不易,最重要弄懂規(guī)則,如果學(xué)過CCNA的朋友可能會(huì)比較好學(xué),因?yàn)閕ptables也有NAT表,原理是一樣的,而FILTER表用得最多,反正不學(xué)就肯定不合格。


8.監(jiān)控工具

我個(gè)人建議,最好學(xué)這3個(gè):Cacti,Nagios,Zabbix,企業(yè)用得最多應(yīng)該是Nagios和 Zabbix,反正都學(xué)吧,但Nagios會(huì)有點(diǎn)難,因?yàn)闀?huì)涉及到用腳本寫自動(dòng)監(jiān)控,那個(gè)地方很難。

CentOS 6.2+Nginx+Nagios,手機(jī)短信和QQ郵箱提醒
服務(wù)器集中檢測(cè)Cacti
9.集群和熱備

這個(gè)很重要,肯定要懂的,但到了公司就不會(huì)讓你去弄,因?yàn)樾率只静蛔屇闩?,集群工具有很多,最好學(xué)是LVS,這是必學(xué),最好也學(xué)Nginx集群、反向代理,還有熱備,這個(gè)就更多工具能實(shí)現(xiàn)了,像我公司是自己開發(fā)熱備工具的。MySQL熱備也要學(xué),就是主從復(fù)制,這個(gè)要學(xué)懂整個(gè)流程一點(diǎn)也不容易,只照著做根本沒意思。

MySQL主從同步,雙主同步,如果服務(wù)器意外掛機(jī),不同步怎么辦
MySQL高性能壓力測(cè)試(總結(jié)了好久)
Nginx 緩存配置及報(bào)錯(cuò)解決
10.數(shù)據(jù)備份

工具有很多,但至少要把RAID的原理弄懂,特別是企業(yè)最常用的1+0或0+1,自己做實(shí)驗(yàn)也要弄出來,備份工具有很多,如tar、dump,最好多了解一下。

學(xué)會(huì)以上10點(diǎn),應(yīng)該可以入門了,有些技術(shù)會(huì)比較難學(xué),例如Apache和Nginx中還有些很重要的技術(shù),如系統(tǒng)調(diào)優(yōu)、服務(wù)優(yōu)化、程序優(yōu)化,這些在沒接觸工作前很難學(xué)習(xí)到的,所以先把這10點(diǎn)學(xué)了吧,估計(jì)要學(xué)熟至少3個(gè)月不止,腳本部分會(huì)交很吃力了,我建議是先學(xué)熟shell,等工作后再學(xué)另一門腳本語言,這樣會(huì)比較好。

以上就是踏入linux運(yùn)維工程師需要掌握的工具,還有很多工具要掌握的,但在學(xué)習(xí)環(huán)境中是很難學(xué)到,最后我再提醒一下,這里所指的工具相當(dāng)于技能,而不是像Windows或Ubuntu的圖形化工具,還有學(xué)linux就別裝圖形界面,這樣虛擬機(jī)就不用吃太多內(nèi)存,而且絕對(duì)不建議在真機(jī)上裝Linux,根本達(dá)不到學(xué)習(xí)效果。

運(yùn)維思路拓?fù)鋱D:

Linux運(yùn)維基礎(chǔ)知識(shí)
有些人認(rèn)為,其實(shí)運(yùn)維就是部署某個(gè)軟件,設(shè)置些基礎(chǔ)功能,就算會(huì)運(yùn)維了。

舉個(gè)例子:安裝LAMP,LNMP,就感覺部署方法我都掌握了。其實(shí)網(wǎng)上大多數(shù)都有一鍵安裝腳本啥的根本沒有啥技術(shù)含量,在面試官眼里,這些都不是你的亮點(diǎn)?;镜搅斯疽话悱h(huán)境架構(gòu)都是部署好的,很少需要你去變動(dòng)環(huán)境架構(gòu)。就算你安裝好 LNMP 架構(gòu)你熟悉里面的原理嗎?熟悉 Nginx 優(yōu)化嗎?熟悉 MySQL 優(yōu)化嗎?

再舉個(gè)例子:我面試遇到的問題,面試官問你既然熟悉 LNMP 架構(gòu),那么 Nginx 反向代理的作用。

你應(yīng)該不是說出懂這個(gè)軟件和配置,你盡可能的說怎么優(yōu)化,怎么深入提高網(wǎng)站性能。

使用反向代理可以理解為7層應(yīng)用層的負(fù)載均衡,使用負(fù)載均衡之后可以非常便捷的橫向擴(kuò)展服務(wù)器集群,實(shí)現(xiàn)集群整體并發(fā)能力、抗壓能力的提高。
通常反向代理服務(wù)器會(huì)帶有本地 Cache 功能,通過靜態(tài)資源的 Cache,有效的減少后端服務(wù)器所承載的壓力,從而提高性能。
下面說說運(yùn)維在工作中需要掌握的核心技術(shù)。注意,這是在工作中掌握的,在學(xué)習(xí)中很難掌握。

1.第一條最主要的排錯(cuò)

分析部分程序不能運(yùn)行或沒有按預(yù)想結(jié)果運(yùn)行的原因,對(duì)程序運(yùn)行跟蹤,查看系統(tǒng)調(diào)用的過程。
較深入的系統(tǒng)瓶頸點(diǎn)分析。
查看剩余內(nèi)存:

ree -m

#-/+ buffers/cache: 6458 1649

#6458M為真實(shí)使用內(nèi)存 1649M為真實(shí)剩余內(nèi)存(剩余內(nèi)存+緩存+緩沖器)

#linux會(huì)利用所有的剩余內(nèi)存作為緩存,所以要保證linux運(yùn)行速度,就需要保證內(nèi)存的緩存大小
系統(tǒng)信息:

Linux運(yùn)維基礎(chǔ)知識(shí)
硬件信息:

Linux運(yùn)維基礎(chǔ)知識(shí)
使用分析系統(tǒng)分析web日志(如逆火軟件)
分析系統(tǒng)性能瓶頸點(diǎn)(IO/Memory/CPU,常用工具,top命令中shift組合鍵的特殊用Sar/vmstat/iostat/ipcs)
日志管理常用命令:
Linux運(yùn)維基礎(chǔ)知識(shí)
2.優(yōu)化

優(yōu)化可以說是運(yùn)維最吃香的技能,基本會(huì)優(yōu)化的運(yùn)維普遍工資很高,而且優(yōu)化是要承擔(dān)風(fēng)險(xiǎn)的,并不是網(wǎng)上搜個(gè)文章改一下配置文件或者參數(shù)就叫優(yōu)化了,這樣很容易造成宕機(jī)。

優(yōu)化是根據(jù)實(shí)際的現(xiàn)場(chǎng)環(huán)境硬件各個(gè)參數(shù)進(jìn)行部分優(yōu)化,提高軟件性能和網(wǎng)站性能。這個(gè)我只能講半知半解,當(dāng)時(shí)優(yōu)化MySQL和Tomcat參數(shù)也是根據(jù)網(wǎng)上文章和官網(wǎng)文檔查找參數(shù)在虛擬機(jī)上測(cè)試然后查看性能。

成本優(yōu)化,性能優(yōu)化。這里我給出 Tomcat 優(yōu)化JVM參數(shù)(做過相應(yīng)測(cè)試才放到現(xiàn)場(chǎng)環(huán)境的):(記住無監(jiān)控不調(diào)優(yōu))

-標(biāo)準(zhǔn)參數(shù),所有jvm都應(yīng)該支持

-X 非標(biāo),每個(gè)jvm實(shí)現(xiàn)都不同

-XX 不穩(wěn)定參數(shù),下一版本可能會(huì)取消

serial collector 單線程 序列化

parallel collector 多線程

啟動(dòng) jvisualvm.exe 監(jiān)控 dump 內(nèi)存溢出

-Xms:初始堆大小

-Xmx:大堆大小

-Xss:線程棧大小

-XX:NewSize=n:設(shè)置年輕代大小

-XX:NewRatio=n:設(shè)置年輕代和年老代的比值,如3, 標(biāo)示年輕代:年老代比值1:3,年輕代占整個(gè)年輕代年老代和的1/4

-XX:SurvivorRatio=n:年輕代中的eden區(qū)與2個(gè)Survivor區(qū)的比值。

-XX:MaxPermSize=n:設(shè)置持久代大小

收集器設(shè)置

-XX:+UseSerialGC:設(shè)置串行收集器

-XX:+UseParallelGC:設(shè)置并行收集器

-XX:+UseConcMarkSweepGC:設(shè)置并發(fā)收集器

回收統(tǒng)計(jì)信息

-XX:+PrintGC

-XX:+PrintGCDetails

-Xloggc:filename

Tocmat 優(yōu)化,確認(rèn)有幾個(gè)JVM虛擬機(jī)

set JAVA_OPTS=

-Xms4g

-Xmx4g

-Xss512k

-XX:+AggressiveOpts 進(jìn)攻型的優(yōu)化選項(xiàng),所有優(yōu)化項(xiàng)都加上

-XX:+UseBiasedLocking 優(yōu)化鎖,基本都要選上,偏執(zhí)鎖

-XX:permSize=64m 原始區(qū)大小,大300m 類多就設(shè)置大一點(diǎn)

-XX:MaxPermSize=300m

-XX:+DisableExplicitGC //System.gc() 不顯示調(diào)用gc

-XX:+UseConcMarkSweepGC 使用cms縮短相應(yīng)時(shí)間,并發(fā)收集,低停頓

-XX:+UseParNewGC 并行收集新生代的垃圾

-XX:+CMSParallelRemarkEnabled 在使用UseParNewGC的情況下,盡量減少mark的時(shí)間

-XX:+UseCMSCompactAtFullCollection 使用并發(fā)收集器時(shí),開啟對(duì)年老代的壓縮,使碎片減少

-XX:LargePageSizelnBytes=128m 內(nèi)存分頁大小對(duì)性能的提升

-XX:+UseFastAccessorMethods get/set方法轉(zhuǎn)成本地代碼

-Djava awt headless=true 修復(fù)linux下tomcat處理圖標(biāo)時(shí)可能產(chǎn)生的bug

內(nèi)存調(diào)優(yōu):
Linux運(yùn)維基礎(chǔ)知識(shí)
Linux運(yùn)維基礎(chǔ)知識(shí)
Tomcat 前任何參數(shù)沒參加大概每秒605,調(diào)優(yōu)后大概每秒435,接近3倍的結(jié)果。

Linux運(yùn)維基礎(chǔ)知識(shí)
3.開發(fā)技能

優(yōu)選 Shell 和 Python,現(xiàn)在 Shell 無法滿足你的需求或者效率很低,那么選擇自動(dòng)化 Python 是最好的選擇?,F(xiàn)在普遍招聘需求要求,會(huì)寫 Shell 或者 Python、Perl 腳本,個(gè)人選擇還是選 Python。

Python 這門語言上手比較快,容易理解。在服務(wù)器管理工具上非常豐富,配置管理(Saltstack) 批量執(zhí)行(Fabric、Saltstack) 監(jiān)控(Zenoss、Nagios 插件) 虛擬化管理( python-libvirt) 進(jìn)程管理 (Supervisor) 云計(jì)算(OpenStack) …… 還有大部分系統(tǒng) C 庫(kù)都有 Python 綁定。

對(duì)于流程確定的事情,最終一定是納入系統(tǒng)管理的體系,寫成程序,成為系統(tǒng)的一部分。而不是無法復(fù)用游離與整體的各種腳本。

隨著云計(jì)算時(shí)代的來臨,中小型公司不需要運(yùn)維了,大型公司沒有工程開發(fā)能力的運(yùn)維,是沒有競(jìng)爭(zhēng)力的。

最重要的學(xué)好 Python 可以漲工資,可以漲工資,可以漲工資。(重要的事情說三遍~)目前本人也是在學(xué) Python,正在把以前 Shell 腳本的實(shí)例轉(zhuǎn)換成 Python 腳本。

意識(shí)篇

1.安全意識(shí)

運(yùn)維人員的權(quán)限很大,所以一定要保證帳號(hào)/私鑰的安全。

最好使用加密工具存儲(chǔ)。比如Truecrypt、lpassword。
基于本地存儲(chǔ)。切勿用網(wǎng)盤,也不建議用lastpass等
SSH私鑰添加密碼
2.磨刀意識(shí)

關(guān)于任何操作配置,最好先搞明白操作或配置的原理,然后再去操作。應(yīng)一句話叫做“磨刀不誤砍柴功”,而且對(duì)于類似的操作可以舉一反三。

3.計(jì)劃意識(shí)

復(fù)雜的變更操作比如多臺(tái)主機(jī)以及牽涉到san存儲(chǔ),最好先作 操作計(jì)劃,寫計(jì)劃文檔,詳細(xì)致每條命令,然后請(qǐng)高手幫忙審核。 這樣能大程度使整個(gè)操作過程安全。如果是重要的客戶業(yè)務(wù)系統(tǒng),操作最好有回退方案,而一旦變更失敗,客戶可以在短時(shí)間內(nèi)將業(yè)務(wù)回退。

4.記錄分享意識(shí)

遇到自己認(rèn)為較特殊的案例時(shí),記得要寫案例過程及分析的文檔。也方便自己以后翻看,或者和其他兄弟分享,作知識(shí)的傳播以便于大家以后都能少走彎路。

5.監(jiān)控意識(shí)

運(yùn)維來說,監(jiān)控是非常重要的,監(jiān)控是發(fā)現(xiàn)系統(tǒng)各種異常的眼睛,所以運(yùn)維應(yīng)該和監(jiān)控緊密配合。

6.業(yè)務(wù)意識(shí)

盡量了解維護(hù)的各主機(jī)上業(yè)務(wù)類型,以及各主機(jī)業(yè)務(wù)之間的關(guān)聯(lián)性。因?yàn)槿魏尉S護(hù)工作都是為主機(jī)能提供業(yè)務(wù)服務(wù)的,當(dāng)某業(yè)務(wù)中斷,能最快的知道與此業(yè)務(wù)相關(guān)的主機(jī)群,從而縮小故障排查范圍,最快定位故障。

看完上述內(nèi)容,你們對(duì)Linux運(yùn)維有進(jìn)一步的了解嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

網(wǎng)站題目:Linux運(yùn)維基礎(chǔ)知識(shí)-創(chuàng)新互聯(lián)
網(wǎng)站網(wǎng)址:http://muchs.cn/article34/ddjppe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、外貿(mào)建站、自適應(yīng)網(wǎng)站、虛擬主機(jī)、網(wǎng)站改版、營(yíng)銷型網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)