有時候想跑幾行 python code ,但又不想開 IDE 那麼肥大的東西。或是想要測試某某 module 的功能、有個 jupyter server 就很好用。
這時候借助 NAS 架個簡單的 jupyter server 就很好用。目前 qnap 官網提供的 jupyter 安裝都有點久遠,而且也不支援新的機器。
原來新的機器已經可以藉由 jupyter 官方所 release 的 docker image 進行安裝,這就方便多了,但是目前文件有點少,因此在這裡留個筆記。
有時候想跑幾行 python code ,但又不想開 IDE 那麼肥大的東西。或是想要測試某某 module 的功能、有個 jupyter server 就很好用。
這時候借助 NAS 架個簡單的 jupyter server 就很好用。目前 qnap 官網提供的 jupyter 安裝都有點久遠,而且也不支援新的機器。
原來新的機器已經可以藉由 jupyter 官方所 release 的 docker image 進行安裝,這就方便多了,但是目前文件有點少,因此在這裡留個筆記。
網路也是虛擬機器I/O很重要的一部分,kvmtool 自然有提供若干種不同的使用方式,此外因為支援 virtio-net 的緣故,kvmtool 也實作了 vhost-net 的支援(雖然之前他有些問題)。我們先來看一下 virtio-net 怎麼啟用吧
$ lkvm run [-net NET_PARAMS] [其他參數] |
NET_PARAMS 會長成這樣 PA=VA,PB=VB,PC=VC
因為需要觀察 vhost-net 的行為,所以必須重新編譯 vhost-net module,然而想要直接用 Ubuntu 內建的 source,所以嘗試下載 Ubuntu 所自己維護的 linux-kernel 並只編譯 vhost-net module,才不會浪費太多時間。
本篇以 Ubuntu 13.04 為例,Ubuntu 13.04 用的是 linux-3.8.0
先安裝編譯核心必備的套件:
書:The Definitive Guide to the Xen Hypervisor 的範例程式碼可以在這邊找到 http://www.informit.com/store/definitive-guide-to-the-xen-hypervisor-9780132349710
第二章的範例很簡單,就是一個 hello world,但是要改的地方也不少,有下列幾點。完整的 diff 檔將附在文章最後面。
1) 首先要讓這個範例程式可以編譯成功,必須把 xen 原始碼的 include 資料夾加入 gcc 的 -I 參數中。很剛好,我們重新編譯 xen 時就已經下載了 xen 的整包原始碼,我們可以將資料夾指過去就好,請注意看 diff 檔的第 10-11 行。請注意你的 xen 是放在哪個資料夾,無論是相對、或是絕對路徑都可以。
承續上一篇的新專案,為了讓第一個範例「Hello, World!」可以正常運作,根據書上的說法,我們必須打開 xen 的 debug 功能,也因此我們必須重新編譯 Xen,一般作為釋出套件的軟體,是不會開啟 debug 功能的。
首先安裝編譯 xen 所需要用到的套件:
sudo apt-get build-dep xen
又是一個心血來潮的專案,最近又興起認識 xen 的念頭,很有名的一本書叫做是 "The Definitive Guide to the Xen Hypervisor",可是書中範例有點舊了,除了用了舊版的 xen 3 之外,也只以 x86 為基礎,有點過時了。
於是乎,想要把書中所有範例都學過一次的我,就順便把這些範例在 xen-4.2.1 跑起來之外,也順便讓牠們也能在 x64 跑,最後就又在 github 開了一個專案,請大家多多指教 <(_ _)>
今天是最後一天,因為覺得星期五回去實在太趕了,所以回程飛機就訂在星期六下午。不過因為主管要去深圳,所以回程就只有我一個人單獨行動了。是說除了 DEMO 以外,我都是自己一個人行動的 XD
今天也會很趕,是 13:45 的飛機、早上最早的接駁車是 08:00 ,所以我只排了兩個點,預計的行程是:
退房---->酒店--(接駁車)-->尖沙嘴--(地鐵)-->中環站--(走路)-->香港站---->預辦登機--(走路)-->中環站買珍妮曲奇--(地鐵)-->黃大仙廟還願--(地鐵)-->香港--(機場快線)-->機場
今天就是 DEMO Friday,其他什麼的,都不重要了!!!! DEMO 的會場,圖中有海報的就是 Xen 團隊,穿七分褲的就是主要開發者 Ian Capbell XDD
圖中的白色圓桌可以給大家靠著聊天,而且觀眾人手一支高腳杯,服務生會幫你添酒哦!!!