142道最新的Linux面試題及解析!程式碼清晰直接套用

本文整理了最新的Linux面試題,142道題及解析,分享至此,希望對大家有幫助。

142道面試題概覽

142道最新的Linux面試題及解析!程式碼清晰直接套用

部分內容展示

1. 磁碟使用率檢測(用shell指令碼)

root@ecs-c13b ~]# cat fdisk。sh#!/bin/bash# 擷取IPIP=`ifconfig eth0 |awk -F “ ” ‘NR==2{print $2}’`# 定義使用率,並轉換為數字SPACE=`df -Ph |awk ‘{print int($5)}’`for i in $SPACEdo if [ $i -ge 90 ]thenecho “$IP的磁碟使用率已經超過了90%,請及時處理”fidone

2. LVS 負載均衡有哪些策略?

LVS一共有三種工作模式: DR,Tunnel,NAT

3. 談談你對LVS的理解?

LVS是一個虛擬的伺服器集群系統,在unix系統下實現負載均衡的功能;採用IP負載均衡技術和機遇內容請求分發技術來實現。

LVS採用三層結構,分別是:

第一層: 負載排程器

第二層: 服務池

第三層:共享儲存

負載排程器(load balancer/ Director),是整個叢集的總代理,它有兩個網絡卡,一個網卡面對訪問網站的客戶端,一個網卡面對整個叢集的內部。負責將客戶端的請求傳送到一組伺服器上執行,而客戶也認為服務是來自這臺主的。舉個生動的例子,叢集是個公司,負載排程器就是在外接攬生意,將接攬到的生意分發給後臺的真正幹活的真正的主機們。當然需要將活按照一定的演算法分發下去,讓大家都公平的幹活。

伺服器池(server pool/ Realserver),是一組真正執行客戶請求的伺服器,可以當做WEB伺服器。就是上面例子中的小員工。

共享儲存(shared storage),它為伺服器池提供一個共享的儲存區,這樣很容易使得伺服器池擁有相同的內容,提供相同的服務。一個公司得有一個後臺賬目吧,這才能協調。不然客戶把錢付給了A,而換B接待客戶,因為沒有相同的賬目。B說客戶沒付錢,那這樣就不是客戶體驗度的問題了。

142道最新的Linux面試題及解析!程式碼清晰直接套用

4. 負載均衡的原理是什麼?

當客戶端發起請求時,請求直接發給Director Server(排程器),這時會根據設定的排程演算法,將請求按照演算法的規定智慧的分發到真正的後臺伺服器。以達到將壓力均攤。

但是我們知道,http的連線時無狀態的,假設這樣一個場景,我登入某寶買東西,當我看上某款商品時,我將它加入購物車,但是我重新整理了一下頁面,這時由於負載均衡的原因,排程器又選了新的一臺伺服器為我提供服務,我剛才的購物車內容全都不見了,這樣就會有十分差的使用者體驗。

所以就還需要一個儲存共享,這樣就保證了使用者請求的資料是一樣的

5. LVS由哪兩部分組成的?

LVS 由2部分程式組成,包括 ipvs 和 ipvsadm。

ipvs(ip virtual server):一段程式碼工作在核心空間,叫ipvs,是真正生效實現排程的程式碼。

ipvsadm:另外一段是工作在使用者空間,叫ipvsadm,負責為ipvs核心框架編寫規則,定義誰是叢集服務,而誰是後端真實的伺服器(Real Server)

6. 與lvs相關的術語有哪些?

DS:Director Server。指的是前端負載均衡器節點。

RS:Real Server。後端真實的工作伺服器。

VIP:Virtual IP 向外部直接面向用戶請求,作為使用者請求的目標的IP地址。

DIP:Director Server IP,主要用於和內部主機通訊的IP地址。

RIP:Real Server IP,後端伺服器的IP地址。

CIP:Client IP,訪問客戶端的IP地址。

7. LVS-NAT模式的原理

142道最新的Linux面試題及解析!程式碼清晰直接套用

(a)。 當用戶請求到達Director Server,此時請求的資料報文會先到核心空間的PREROUTING鏈。此時報文的源IP為CIP,目標IP為VIP

(b)。 PREROUTING檢查發現數據包的目標IP是本機,將資料包送至INPUT鏈

©。 IPVS比對資料包請求的服務是否為叢集服務,若是,修改資料包的目標IP地址為後端伺服器IP, 然後將資料包發至POSTROUTING鏈。 此時報文的源IP為CIP,目標IP為RIP

(d)。 POSTROUTING鏈透過選路,將資料包傳送給Real Server

(e)。 Real Server比對發現目標為自己的IP,開始構建響應報文發回給Director Server。 此時報文的源IP為RIP,目標IP為CIP

(f)。 Director Server在響應客戶端前,此時會將源IP地址修改為自己的VIP地址,然後響應給客戶端。 此時報文的源IP為VIP,目標IP為CIP

8. LVS-NAT模型的特性

RS應該使用私有地址,RS的閘道器必須指向DIP

DIP和RIP必須在同一個網段內

請求和響應報文都需要經過Director Server,高負載場景中,Director Server易成為效能瓶頸

支援埠對映RS可以使用任意作業系統

缺陷:對Director Server壓力會比較大,請求和響應都需經過director server

9. LVS-DR模式原理

142道最新的Linux面試題及解析!程式碼清晰直接套用

(a) 當用戶請求到達Director Server,此時請求的資料報文會先到核心空間的PREROUTING鏈。 此時報文的源IP為CIP,目標IP為VIP

(b) PREROUTING檢查發現數據包的目標IP是本機,將資料包送至INPUT鏈

© IPVS比對資料包請求的服務是否為叢集服務,若是,將請求報文中的源MAC地址修改為DIP的MAC地址,將目標MAC地址修改RIP的MAC地址,然後將資料包發至POSTROUTING鏈。 此時的源IP和目的IP均未修改,僅修改了源MAC地址為DIP的MAC地址,目標MAC地址為RIP的MAC地址

(d) 由於DS和RS在同一個網路中,所以是透過二層來傳輸。POSTROUTING鏈檢查目標MAC地址為RIP的MAC地址,那麼此時資料包將會發至Real Server。

(e) RS發現請求報文的MAC地址是自己的MAC地址,就接收此報文。處理完成之後,將響應報文透過lo介面傳送給eth0網絡卡然後向外發出。 此時的源IP地址為VIP,目標IP為CIP

(f) 響應報文最終送達至客戶端

10. LVS-DR模型的特性

特點1:保證前端路由將目標地址為VIP報文統統發給Director Server,而不是RS

RS可以使用私有地址;也可以是公網地址,如果使用公網地址,此時可以透過網際網路對RIP進行直接訪問

RS跟Director Server必須在同一個物理網路中

所有的請求報文經由Director Server,但響應報文必須不能進過Director Server

不支援地址轉換,也不支援埠對映

RS可以是大多數常見的作業系統

RS的閘道器絕不允許指向DIP(因為我們不允許他經過director)

RS上的lo介面配置VIP的IP地址

缺陷:RS和DS必須在同一機房中

142道最新的Linux面試題及解析!程式碼清晰直接套用

142道最新的Linux面試題及解析!程式碼清晰直接套用

142道最新的Linux面試題及解析!程式碼清晰直接套用

142道最新的Linux面試題及解析!程式碼清晰直接套用

142道最新的Linux面試題及解析!程式碼清晰直接套用

142道最新的Linux面試題及解析!程式碼清晰直接套用

142道最新的Linux面試題及解析!程式碼清晰直接套用

142道最新的Linux面試題及解析!程式碼清晰直接套用

完整版文件領取見下圖!!

142道最新的Linux面試題及解析!程式碼清晰直接套用