linux運維面試題目精選

1)你平時在公司主要作什麼?mysql

一、公司服務器的平常維護,常見服務器部署搭建及維護linux

二、Mysql數據庫的平常運維工做,主從同步搭建,數據備份。ios

三、監控系統的搭建和維護,爲新上線的服務寫自定義監控腳本nginx

四、處理線上服務緊急故障,保證線上服務7*24穩定運行。web

五、平常技術文檔編寫算法

2)大家原來公司的網站架構是怎樣的?sql

 

3)你對那一塊比較熟悉或者精通?shell

nginx shell 自動化運維比較熟悉數據庫

4) Squid、varnish等緩存服務器維護過嗎?squid緩存代理的原理是什麼?緩存命中率怎麼查看及清空緩存?後端

5)LVS的工做原理是什麼?有哪些算法?

一、當客戶端的請求到達負載均衡器的內核空間時,首先會到達PREROUTING鏈。

二、當內核發現請求數據包的目的地址是本機時,將數據包送往INPUT鏈。

三、LVS由用戶空間的ipvsadm和內核空間的IPVS組成,ipvsadm用來定義規則,IPVS利用ipvsadm定義的規則工做,IPVS工做在INPUT鏈上,當數據包到達INPUT鏈時,首先會被IPVS檢查,若是數據包裏面的目的地址及端口沒有在規則裏面,那麼這條數據包將通過INPUT鏈送至用戶空間,交給用戶空間的進程來處理。

四、若是數據包裏面的目的地址及端口在規則裏面,那麼這條數據報文將被修改目的地址爲事先定義好的後端服務器,並送往POSTROUTING鏈。
五、最後經由POSTROUTING鏈發日後端服務器。
rr wrr lc wlc  LBLC 基於局部性的最少鏈接 LBLCR 基於局部性的帶複製功能的最少 sh 源地址hash dh 目標地址散列

6)Nginx平常的優化參數有哪些?Nginx動靜分離作過嗎?描述簡單的步驟?

1. worker_processes 8;nginx 進程數,建議按照cpu 數目來指定,通常爲它的倍數 (如,2個四核的cpu計爲8)。

2. worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000 10000000;爲每一個進程分配cpu,上例中將8 個進程分配到8 個cpu,固然能夠寫多個,或者將一個進程分配到多個cpu。

3. worker_rlimit_nofile 65535;

這個指令是指當一個nginx 進程打開的最多文件描述符數目,理論值應該是最多打開文
件數(ulimit -n)與nginx 進程數相除,可是nginx 分配請求並非那麼均勻,因此最好與ulimit -n 的值保持一致。

如今在linux 2.6內核下開啓文件打開數爲65535,worker_rlimit_nofile就相應應該填寫65535。

這是由於nginx調度時分配請求到進程並非那麼的均衡,因此假如填寫10240,總併發量達到3-4萬時就有進程可能超過10240了,這時會返回502錯誤。

使用epoll的I/O模型

5. worker_connections 65535;

每一個進程容許的最多鏈接數, 理論上每臺nginx 服務器的最大鏈接數爲worker_processes*worker_connections。

6. keepalive_timeout 60;

keepalive 超時時間。

 

7)linux內核優化,你都有優化哪些參數?

 

8)你在維護網站的過程當中共,曾經遇到過什麼重大問題?怎樣解決的?

9)shell變成熟悉嗎?編寫一個自動化備份Mysql數據庫的腳本?

10)Mysql主從架構的原理是什麼?若是主從不一樣步,報錯了,怎麼恢復?

mysql配置優化  1)慢查詢日誌 

11)若是備份大數據Mysql數據文件?Mysql優化有哪些步驟?

12)FTP主被動模式的區別是什麼?

ftp有兩種登陸方式:匿名登陸和受權登陸.使用匿名登陸時,用戶名爲:anonymous,密碼爲:任何合法email地址;使用受權登陸時,用戶名爲用戶在遠程系統中的用戶賬號,密碼爲用戶在遠程系統中的用戶密碼.

區別:使用匿名登陸只能訪問ftp目錄下的資源,默認配置下只能下載;而受權登陸訪問的權限大於匿名登陸,且上載、下載都可.

(2)ftp文件傳輸有兩種文件傳輸模式:ASCII模式和binary模式.ASCII模式用來傳輸文本文件,其餘文件的傳輸使用binary模式.

(3)經常使用的ftp文件傳輸命令爲:bin、asc、put、get、mput、mget、prompt、bye

13) Apache兩種工做模式的區別及優化?

prefork模式:這個多路處理模塊(MPM)實現了一個非線程型的、預派生的web服務器,它的工做方式相似於Apache 1.3。它適合於沒有線程安全庫,須要避免線程兼容性問題的系統。它是要求將每一個請求相互獨立的狀況下最好的MPM,這樣若一個請求出現問題就不會影響到其餘請求。

work模式:此多路處理模塊(MPM)使網絡服務器支持混合的多線程多進程。因爲使用線程來處理請求,因此能夠處理海量請求,而系統資源的開銷小於基於進程的MPM。可是,它也使用了多進程,每一個進程又有多個線程,以得到基於進程的MPM的穩定性

 

 

14)Nagios、cacti維護過嗎?平時都監控些什麼?

Cacti比較着重於直觀數據的監控,易於生成圖形,用來監控網絡流量、cpu使用率、硬盤使用率等

Nagios則比較注重於主機和服務的監控,而且有很強大的發送報警信息的功能

cacti偏重於網絡流量,系統負載方面的監控。而 nagios偏重於系統服務方面的監控,你能夠在被監控的機器上寫本身的程序(shell,c 或 perl均可以) 。nagios則經過這些腳原本對服務進行監控。nagios能夠和短信發送機配合用來監控規模較大的網站。

15)大家公司的網絡出口帶寬是多少?天天網站的PV、UV是多少?

pv:50W UV:6-8w 帶寬 50w/(24*60*60) 50M帶寬

16) 你以爲Linux運維工程師的職責是什麼?

 

17)你爲何離職,離職的緣由是什麼?

18)你將來5-10年的職業規劃是什麼樣的?

19)keepalived的工做原理?

Keepalived是Linux下一個輕量級別的高可用解決方案,
Keepalived是Linux下一個輕量級別的高可用解決方案。高可用(High Avalilability,HA),其實兩種不一樣的含義:廣義來說,是指整個系統的高可用行,狹義的來說就是之主機的冗餘和接管, 它與HeartBeat RoseHA 實現相同相似的功能,均可以實現服務或者網絡的高可用,可是又有差異,HeartBeat是一個專業的、功能完善的高可用軟件,它提供了HA 軟件所需的基本功能,好比:心跳檢測、資源接管,檢測集羣中的服務,在集羣節點轉移共享IP地址的全部者等等。HeartBeat功能強大,可是部署和使用相對比較麻煩, 與HeartBeat相比,Keepalived主要是經過虛擬路由冗餘來實現高可用功能,雖然它沒有HeartBeat功能強大,可是Keepalived部署和使用很是的簡單,全部配置只須要一個配置文件便可以完成, 原理:
Keepalived工做在TCP
/IP 參考模型的 三層、四層、五層,也就是分別爲:網絡層, 傳輸層和應用層,根據TCP、IP參數模型隔層所能實現的功能,Keepalived運行機制以下: 在網絡層:咱們知道運行這4個重要的協議,互聯網絡IP協議,互聯網絡可控制報文協議ICMP、地址轉換協議ARP、反向地址轉換協議RARP,在網絡層Keepalived在網絡層採用最多見的工做方式是經過ICMP協議向服務器集羣中的每個節點發送一個ICMP數據包(有點相似與Ping的功能),若是某個節點沒有返回響應數據包,那麼認爲該節點發生了故障,Keepalived將報告這個節點失效,並從服務器集羣中剔除故障節點。 在傳輸層:提供了兩個主要的協議:傳輸控制協議TCP和用戶數據協議UDP,傳輸控制協議TCP能夠提供可靠的數據輸出服務、IP地址和端口,表明TCP的一個鏈接端,要得到TCP服務,須要在發送機的一個端口和接收機的一個端口上創建鏈接,而Keepalived在傳輸層裏利用了TCP協議的端口鏈接和掃描技術來判斷集羣節點的端口是否正常,好比對於常見的WEB服務器80端口。或者SSH服務22端口,Keepalived一旦在傳輸層探測到這些端口號沒有數據響應和數據返回,就認爲這些端口發生異常,而後強制將這些端口所對應的節點從服務器集羣中剔除掉。 在應用層:能夠運行FTP,TELNET,SMTP,DNS等各類不一樣類型的高層協議,Keepalived的運行方式也更加全面化和複雜化,用戶能夠經過自定義Keepalived工做方式,例如:能夠經過編寫程序或者腳原本運行Keepalived,而Keepalived將根據用戶的設定參數檢測各類程序或者服務是否容許正常,若是Keepalived的檢測結果和用戶設定的不一致時,Keepalived將把對應的服務器從服務器集羣中剔

 

 

 

20.什麼是符號連接,什麼是硬連接?符號連接與硬連接的區別是什麼?

連接分硬連接和符號連接.
符號連接能夠創建對於文件和目錄的連接.符號連接能夠跨文件系統,便可以跨磁盤分區.符號連接的文件類型位是l,連接文件具備新的i節點.
硬連接不能夠跨文件系統.它只能創建對文件的連接,硬連接的文件類型位是-,且硬連接文件的i節點同被連接文件的i節點相同.

21 簡述DNS進行域名解析的過程.
,客戶端發出DNS請求翻譯IP地址或主機名.DNS服務器在收到客戶機的請求後:
(1)檢查DNS服務器的緩存,若查到請求的地址或名字,即向客戶機發出應答信息;
(2)若沒有查到,則在數據庫中查找,若查到請求的地址或名字,即向客戶機發出應答信息;
(3)若沒有查到,則將請求發給根域DNS服務器,並依序從根域查找頂級域,由頂級查找二級域,二級域查找三級,直至找到要解析的地址或名字,即向客戶機所在網絡的DNS服務器發出應答信息,DNS服務器收到應答後如今緩存中存儲,而後,將解析結果發給客戶機.
(4)若沒有找到,則返回錯誤信息.4.系統管理員的職責包括那些?管理的對象是什麼?

22.請描述Linux系統優化的12個步驟。

⑴登陸系統:不使用root登陸,經過sudo受權管理,使用普通用戶登陸。

⑵禁止SSH遠程:更改默認的遠程鏈接SSH服務及禁止root遠程鏈接。

⑶時間同步:定時自動更新服務器時間。

⑷配置yum更新源,從國內更新下載安裝rpm包。

⑸關閉selinux及iptables(iptables工做場景若有wan ip,通常要打開,高併發除外)

⑹調整文件描述符數量,進程及文件的打開都會消耗文件描述符。

⑺定時自動清理/var/spool/clientmquene/目錄垃圾文件,防止節點被佔滿(c6.4默認沒有sendmail,所以能夠不配。)

⑻精簡開機啓動服務(crond、sshd、network、rsyslog)

⑼Linux內核參數優化/etc/sysctl.conf,執行sysct -p生效。

更改字符集,支持中文,可是仍是建議使用英文,防止亂碼問題出現。

⑾鎖定關鍵系統文件(chattr +i /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/inittab 處理以上內容後,把chatter更名,就更安全了。)

⑿清空/etc/issue,去除系統及內核版本登錄前的屏幕顯示。

23.描述Linux系統從開機到登錄界面的啓動過程

⑴開機BIOS自檢,加載硬盤。

⑵讀取MBR,MBR引導。

⑶grub引導菜單(Boot Loader)。

⑷加載內核kernel。

⑸啓動init進程,依據inittab文件設定運行級別

⑹init進程,執行rc.sysinit文件。

⑺啓動內核模塊,執行不一樣級別的腳本程序。

⑻執行/etc/rc.d/rc.local

⑼啓動mingetty,進入系統登錄界面。

24.生產場景如何對linux系統進行合理規劃分區?

分區的根本原則是簡單、易用、方便批量管理。根據服務器角色定位建議以下:

①單機服務器:如8G內存,300G硬盤

分區:  /boot 100-200M,swap 16G,內存大小8G*2,/ 80G,/var 20G(也可不分),/data 180G(存放web及db數據)

優勢:數據盤和系統盤分開,有利於出問題時維護。

RAID方案:視數據及性能要求,通常可採用raid5折中。 

②負載均衡器(如LVS等) 

分區:/boot 100-200M,swap 內存的1-2倍,/  ,

優勢:簡單方便,只作轉發數據量不多。 

RAID方案:數據量小,重要性高,可採用RAID1 

③負載均衡下的RS server

分區: /boot 100-200M,swap 內存的1-2倍,/  

優勢:簡單方便,由於有多機,對數據要求低。 

RAID方案:數據量大,重要性不高,有性能要求,數據要求低,可採用RAID0 

④數據庫服務器mysql及oracle如16/32G內存

分區:/boot 100-200M,swap 16G,內存的1倍,/ 100G,/data 剩餘(存放db數據) 

優勢:數據盤和系統盤分開,有利於出問題時維護,及保持數據完整。 

RAID方案:視數據及性能要求主庫可採起raid10/raid5,從庫可採用raid0提升性能(讀寫分離的狀況下。)

⑤存儲服務器

分區:/boot 100-200M,swap 內存的1-2倍,/ 100G,/data(存放數據) 

優勢:此服務器不要分區太多。只作備份,性能要求低。容量要大。 

RAID方案:可採起sata盤,raid5 

⑥共享存儲服務器(如NFS) 

分區:/boot 100-200M,swap 內存的1-2倍,/ 100G,/data(存放數據) 

優勢:此服務器不要分區太多。NFS共享比存儲多的要求就是性能要求。 

RAID方案:視性能及訪問要求能夠raid5,raid10,甚至raid0(要有高可用或雙寫方案) 

⑦監控服務器cacti,nagios 

分區:/boot 100-200M,swap 內存的1-2倍,/ 

優勢:重要性通常,數據要求也通常。 

RAID方案:單盤或雙盤raid1便可。三盤就RAID5,看容量要求加盤便可。

相關文章
相關標籤/搜索