19
資策會網路工程師班第 82 Linux LAB 30% DRBL (Diskless Remote Boot in Linux) 指導老師:林旺聰 顧問 彭學勤 老師 楊宏文 老師 員:游騰証

DRBL

  • Upload
    wln-wln

  • View
    213

  • Download
    1

Embed Size (px)

DESCRIPTION

DRBLlinux30%

Citation preview

Page 1: DRBL

資策會網路工程師班第 82 期

Linux LAB 30%

DRBL

(Diskless Remote Boot in Linux)

指導老師:林旺聰 顧問

彭學勤 老師

楊宏文 老師

學 員:游騰証

Page 2: DRBL

一、DRBL 簡介 DRBL (Diskless Remote Boot in Linux)是一個自由軟體,由國家高速網路與

計算中心所開發,主要功能是安裝了此軟體的 Linux 伺服器,就可以同時提供

數十台電腦操作與使用。管理者所需要做得就是在伺服器上安裝好 Linux 之後,

再裝好 DRBL,用戶端電腦不需要有硬碟,不需安裝軟體,只要透過 PXE 網

路開機,就可以直接使用了伺服器端提供的 Linux 了。DRBL 的特色包含:

支援多元化的資訊教育,與現有系統共存,電腦教室可以很方便與快速的

切換作業系統用戶端電腦可以不需要有硬碟,有硬碟 DRBL 也可以充分

利用。

集中管理,安裝 1 台就等於安裝多台(~40 台),下一個指令就可以對多台

電腦做動作。

內建回復系統,可以同時複製或是還原多台(~40 台)用戶端電腦硬碟裡的

作業系統。

學校與公司在大量使用 Linux 機器的時候,常常會遇到一個很大的問題,

就是機器數量非常多時的管理與架設,一來人力有限,二來故障除錯太耗時。

因此本實驗室將在 PC Cluster 上使用 diskless, remote boot 的經驗在此野人

獻曝一下。對學校的訓練教室教學而言,使用這個方式的好處在於系統管理者

只需照顧到 server 部分,對於 clients 就比較不用花時間。由於硬碟目前幾乎

是 PC 最容易故障的部分,如果使用 diskless 的方式,只有 server 有硬碟,

這樣可以減少一些不必要的困擾。

DRBL 與 Clonezilla 從 2003 年起在國家高速網路與計算中心的 PC 教室使用,

一直是很穩定的運轉中。

另外,已經有 LTSP 了,為何還要再開發 DRBL?分幾個部分來看:

LTSP 是集中使用伺服器上資源,而 DRBL 採用的是分散式的作法。LTSP

的 client 端只做終端機使用,也就是 client 端開啟程式的時候,用的是

server的CPU,記憶體等,client幾乎純粹只做KVMN (Keyboard, Video,

Mouse, NIC)的輸入輸出。另一方面,DRBL 的 client 端是一台完整的電

腦,只是硬碟在 Server 上而已,DRBL 的 client 我們可以想成是一台完整

Page 3: DRBL

安裝好 Linux 的機器,所以 client 端開啟程式的時候,使用的計算資源,

例如 CPU, RAM 等都是 client 端自己的。LTSP 和 DRBL 兩個我們可以

比喻成一個是中央集權,另一個是地方分權。當"地方能力夠"的話,最好

是用地方分權的方式,也就是 DRBL 分散式的作法。DRBL 所要求的 server

只需中階的電腦,一台 CPU 2.6 GHZ 左右的 server,配備多張(>=2)網路

卡,然後搭配 fast ethernet 的交換器就可以供目前台灣中小學電腦教室

40 台學生的電腦使用。同樣的配備,如果使用 LTSP,可能只能供 10 台

學生電腦使用。

LTSP 有幾個無法克服的部分,主要就是學生電腦部分的資源使用,在

LTSP 環境中學生的電腦(client)上,學生無法"直接"使用光碟機來讀光碟

片,您無法讓學生使用隨身碟來存取資料,還有,學生不容易直接在他那

台電腦中放出音樂等等,這些限制主要是因為在 LTSP 環境中,學生用的

硬體資源大部分是 server 那台的,光碟機,USB port,音效卡等都是 server

的。而在 DRBL 環境中,學生的電腦就像是 Linux 安裝在自己的硬碟中,

他可以完全的使用那台電腦的硬體資源,只不過這個硬碟是在遠端的

server 而已。

電腦更新速度非常快,現在新購買的電腦,CPU 速度都在 1 GHz 以上,

如果做 LTSP 的 client 的話,幾乎只是用到 KVMN,未能充分使用新電腦

的強大功能。現在新購買的電腦都可以輕易的當 DRBL 的 server。

Page 4: DRBL

二、 建置步驟

開始建置 DRBL Server

設定網路

建立使用者端存放開機與設定檔位置 tftpboot

分割 2G 磁碟空間給 tftpboot,分割完需 reboot

將/dev/sda3 格式化

Page 5: DRBL

將/dev/sda3 掛載到/tftpboot,並立即掛載

取得 DRBL 金鑰,並安裝金鑰

取得並安裝 DRBL 套件

設定 DRBL Server

/opt/drbl/sbin/drblsrv –i

這裡是說要不要使用不穩定和測試用的 packages

Page 6: DRBL

不使用網路啟動映像檔,不使用 serial console output,選擇 CPU架構

不更新作業系統

選擇 Kernel

完成設定

Page 7: DRBL

設定 DRBL Client 端

/opt/drbl/sbin/drblpush –i

設定 DNS domain 與 NIS/YP domain name

Page 8: DRBL

設定 client hostname

選擇對外連線的網卡

選擇 n 跳過提供相同 ip 給 client

設定 client ip 起始值及多少台 client

確認 ip 起始及 client 數

Page 9: DRBL

使用 Full DRBL mode

使用 Full Clonezilla mode(可做備份)

備份存放路徑

如果 client 可以寫入資料,是否建立 swap 讓 client 有更多存放空

間,設定存放空間大小

Page 10: DRBL

使用圖型介面,自動登入,不使用隨機密碼帳戶自動登入

設定密碼,不要從伺服器複製;

是否設置客戶端的引導提示,設定開機提示時間

是否使用圖型選單

是否設定 public ip

Page 11: DRBL

是否讓 client 端有文字模式選單

是否讓 DRBL server 當作 NAT server 存取網路

警告訊息,防火牆規則會被更改,原始規則被備份到下列路徑中

設定完成

建立 DRBL 使用者帳號:

Page 12: DRBL

查看剛建立的使用者帳號資訊:

Page 13: DRBL

三、啟動 client 端

取得 IP

無安裝硬碟

Page 14: DRBL

登入選單

Page 15: DRBL

登入帳號

Page 16: DRBL

登入密碼

Page 17: DRBL

登入至 xwindow

IP

Page 18: DRBL

四、心得

這次的 30%LAB 因為自己在時間上的規劃沒有拿捏好,所以並沒有

在要求的時間內完成,也沒有做到與 LDAP 和 Bonding 整合。

在開始做這個 LAB 的時候,想說 NM 課用的 source 套件比較完整,

也因為常用文字模式,忽略了這個 source 並沒有 xwindow,在實

機驗收的時候 Guru 老師說 DRBL 是給小朋友用的,必須要用到

xwindow 這時才又趕快換了 Suse Linux Enterprise Server10,但是花

了很多時間怎麼做都沒辦法做出來,後來才知道原來 SLES10 是沒

辦法做的,SLES11 才可以,最後才改用 OpenSUSE11.3 才完成 DRBL

的建置。

從開始建置到結束遇到很多奇奇怪怪的問題,在宿舍用單機做,

client 端不管怎樣就是連不到 server,後來想到如果用直接接一個

hub 來做的話,應該會與實際上應用更相似,果然接了一個 hub,

server 直接安裝 opensuse 不用虛擬機器做,設定完,client 端電腦

一開始就成功了。事實證明,如果可以有實際的設備,就實際去

做一次,說不定可以得到更好的結果。

Page 19: DRBL

參考資料:

DRBL 官網

http://tw.news.yahoo.com/article/url/d/a/110228/11/2n5ws.html