Tag Archive for 'CSCC'

待退的心情

再過 2 天即將卸任總管職
不過再來是要先代班個 10 天
離職前的心情,其實頗出乎我意料之外

盼了一年,熬過了這原本不打算續任的一年
到了這個時候,心情也沒想像中高興
更多的感覺,像是放完暑假的孩子,想趕在開學前把暑假作業完成,
但其實這個作業是快樂的,所以也像是想在開學前多玩一會
矛盾的我,是吧

在卸下責任後,一方面要回歸正途 (實驗室的研究)
一方面也希望能在較無負擔的心情下,再為系計中做點什麼特別的
若能夠扮演好博班助教 (顧問) 的定位,那也不錯。

卸任感言還是以後再寫好了

將 ubuntu 8.04 desktop LiveCD 用 pxe boot 起來

注意: 這個方法不保證在其他版本可以 work

ubuntu 的 desktop 安裝光碟本身就是一個可以拿來當作業系統的 LiveCD。昨天作了個實驗,希望能把 LiveCD 的環境,透過 pxe boot 起來,以下是我的作法。有部分作法是誤打誤撞的,沒有理論根據,也不能保證其他版本 work,所以要先講清楚,我用的 ISO 是 ubuntu-8.04.1-desktop-i386.iso

Step1: 先抓 ubuntu desktop CD-ISO: 下載點

Step2: 取出光碟內 casper/*,將 filesystem.* 放到 /casper,initrd.gz 與 vmlinuz 放到 /tftproot

Step3: 下載 pxelinux.0,放到 /tftproot

Step4: 設定(並啟動) tftp server,將 / 指向 /tftproot

Step5: 設定(並啟動) isc-dhcp,在 dhcpd.conf 中加入:

server-identifier     dhcp-server-ip;
next-server           dhcp-server-ip;
filename                "/pxelinux.0";

Step6: 在 /tftproot 下建立一個目錄叫做 pxelinux.cfg
在裡頭放個設定檔 default,內容如下:

DEFAULT live
PROMPT 0
TIMEOUT 0

LABEL live
kernel vmlinuz
append initrd=initrd.gz boot=casper netboot=nfs
(接續上一行) nfsroot=dhcp-server-ip:/casper --

Step8: 設定 NFS,將 /casper export 出來

Step9: 進入 casper 這個目錄, ln -s . casper
(建立一個 soft-link 叫 casper,link 回自己)

Step10: 讓 client pxe boot

其中最詭異的一點就是 Step9,原本光碟裡頭並沒有這個 link,但是透過 pxeboot 的時候卻非常需要這個 link,目前猜測是 initrd.gz 裡頭的 script 在處理 cdrom 跟 nfs 上面有所差異,但是沒精神去深究了,先求能動再說,所以有了 Step9

接任人選

最近比較振奮我心的是這件事情

下一任廟公總管的人選,順帶連網頁總管的人選都大致底定了
兩個職位的人選都讓人十分放心,就期待他們能讓系計中事務
往更好的方向發展 :-)

在系計中工作其實是相當快樂的,有讓人放心的接任人選
往後我就可以繼續在系計中這邊嘴砲了

Virtual Machines in CSCC -2

經過大約一週的安裝與測試
覺得 Virtual Machine 穩定度與效能已經堪用了
指揮建議助教直接把機器送上火線測試了

測試的方式其實有點激進
直接把原本最多人用的兩台工作站用新裝好的機器取代
並且請助教上去跑一些測試程式
以測試在具有一定程度的負荷下,是否仍然穩定

目前看起來還不錯
只是會有VM裡頭機器時間不太準的老問題
助教正在研究用 ntpd 能不能解
或者要頻繁的去 ntpdate 一下 @_@

Virtual Machines in CSCC

對於”對PC產業稍微有所關注”的人來說
應該都注意到了這兩年CPU的發展重心漸漸移往多核心設計去了
詳細的原因(散熱、耗電)不是我這裡要講的,所以就先撇開不談

目前主流應該是雙核心,但四核心已經漸漸浮上檯面,八核心也蓄勢待發
但除了發燒級玩家以外,多數的 End-User事實上需要的僅僅是順利完成手上的工作罷了
即便對我這個電腦重度依賴症患者使用者來說
我仍舊寧願升級鍵盤螢幕滑鼠硬碟,也沒打算更新我整個電腦系統
手上的電腦系統還是停留在三年前的 AMD 單核心 CPU (Barton 2500+)
(即便我心中小惡魔早已蠢蠢欲動)

對於CSCC來說,為了消化年度預算改善使用者環境,更新伺服器硬體是每年的大事
並且因應兩系合併,對系計中的使用需求大增但是空間卻大幅緊縮
上個年度我們就盡可能的將伺服器換成機架式的 Server
因此現在進到系計中機房,就可以看到數櫃的 1U Server,其實還滿壯觀的 :-)
… 又扯遠了 …

雖然說空間滿重要的,對CSCC來說盡可能妥善利用機櫃空間非常有必要
但是新採購的機器幾乎都已經是雙核心架構的機種了,
是否真有能夠好好利用這些伺服器的應用呢? 事實上是少之又少!
除了幾個比較可能出現 heavy load 的服務之外
(如 Web Service 會碰上一年一度的網路程式設計)
多數的情況,直接拿三四年前的機種來做,也差不到哪裡去
放眼未來將會採購的四核、八核,甚至十六核心機種
如何更妥善的使用他們,一直是我在思考的問題

虛擬機器(Virtual Machine, 以下簡稱 VM)並不是一個非常新穎的概念
在一個原有的作業系統上,利用特殊的模擬軟體模擬出一個完整的電腦
並且在這個模擬的電腦上再 run 一個作業系統,就這麼個簡單的概念
早在 2001 年 Vmware Workstation 2.0.4 版的時候我就試驗過
但既然是模擬的,效能上有些打折扣也是必然的。

在 CPU Performance 上其實問題不大,一方面是 CPU 夠快了,
另一方面是很早開始軟體便支援將程式碼原封不動交給 CPU 做的功能。
然而在 I/O 上一直有效能不彰的問題,當然,記憶體用量也是個瓶頸
是故,先前一直沒考慮過將 Server 用 VM 來取代
直到最近,多核心設計普及,以及記憶體量&價突破我心中的尺
我決定重新評估虛擬機器的適用環境範圍。

納入考慮的,先是硬體的考量
若是有”純硬體”的 solution,那我會優先選擇
(指的是直接有一台機器,可以被設定/切分成多台虛擬機器來使用)
很可惜,似乎沒有 :-(

軟體(及作業系統)上的考量,首先是我不想以 M$ Windows 作為底層的系統
吃資源、大而無當,不符合我的 style,
更別說一個月發一次更新檔導致強迫的重開,Unix-Like OS 才是我喜歡的解
如此一來,XENVmwareQEMU 便成了我優先考量的軟體

在與 chenpc 等幾位助教做過多次嘗試之後,
我們暫時選擇以 Gentoo Linux + Vmware Server Free 作為實際評估的平台
緊急商請團長 (ycchang) 採購了一組試驗平台:
Intel Q6600 (OC 3.2GHz), Gigabyte G33-DS3R, Trancend DDR2-800 2G*4, 500W Power
佐以既有的 160G IDE HDD *1, 250G SATA HDD*4

較細部的設置:
Gentoo 裝在 160G IDE HDD, 每個 VM 則配給 768M Ram (預計升到 1G), 專屬 250G HDD *1
Guest OS 中,Linux 設定可以用 2 個虛擬 CPU, FreeBSD 則是 1 個 (2個會有支援度的問題,殘念)

目前系統已經建構完成,看起來也沒什麼大問題,預計測試一陣子後再來說說的感想。

Ps. 說不定就偷偷替換掉現在正在使用的工作站以求得更貼近真實的結果。 :-P
Ps2. 其實我對於虛擬機器(Virtual Machine)的描述並不夠 General, 但我認為這樣比較貼近我要講的應用。
Ps3. 我也不敢保證我寫的都對 or 恰當,懇請不吝指教,多提供些意見給我。