在系統管理的工作中,若發生可預知的硬體問題時,往往需要停機方可進行修復,相對地服務也必須停止運作。如果是透過虛擬技術來建置服務環境時,即可以減少因硬體維修所造成的停機時間。
其實,如果只需要網路安裝,也可以直接指定安裝時使用的URL,不但不需要下載ISO來安裝(也要看頻寬是否適合網路安裝),而且不用指定安裝的作業系統類型,virt-install會自動幫忙偵測。例如:
以上僅介紹常用的操作方式及其參數,詳情則請參考man virt-install。
直接使用QEMU/KVM
如果在不需要「libvirt」工具組的情況下(例如只需要一個環境來執行Live CD映像檔),或者是在沒有「libvirt」工具組的環境下,可以直接使用kvm或qemu指令來執行、操作虛擬機器。透過這樣的使用方式,磁碟映像檔可以利用前一篇講過的qemu-img來建立,也可以使用來自VMware和VirtualBox的映像檔,或是實體裝置(「/dev/sdb」之類,但請在沒在使用的狀況下啟動,以免硬碟內容出現問題)。
QEMU的基本選項羅列如下:
- -m:記憶體大小(MiB)
- -smp:核心數
- -hda, -hdb, -hdc, -hdd:指定硬碟
- -cdrom:指定光碟(無法與-hdc同時使用)
- -boot menu=on:開機時顯示開機選單(預設是硬碟開機,詳細開機方式請參考「man qemu」)
舉例來說,如果今天要建立一個「qcow2」映像檔,並準備要安裝Ubuntu 11.10,機器的參數設成雙核心、512 MiB記憶體,可以使用以下指令:
QEMU使用網路
QEMU使用網路,除了需要建立虛擬網路卡外,還需要建立網路的連結方式,例如:
這樣的操作是,建立一張網路卡及一個User mode的網路(QEMU會自動分配DHCP給虛擬機器,並與外部的網路連接。它相當於virt-manager預設的NAT模式),並將網路卡接在那個網路上(同一個vlan的意思)。
其實若不指定網路型態,預設也會是自動分配的形式。此外,QEMU也可以將封包倒(dump)出來,格式與tcpdump和Wireshark的libpcap格式共通:
在不指定檔名的情況下,預設會倒在工作目錄的「qemu-vlan0.pcap」這個檔案底下。
若要與主機的網路裝置橋接在一起的話,設定上會比較繁雜,在此就不詳述了。所以,如果要架設對外提供服務的伺服器,筆者會強烈建議使用「libvirt」工具組來解決這個問題,同時也可以簡化管理的工作。
<本文依創用CC BY-ND-NC授權刊登,原文請見:http://www.openfoundry.org/tw/tech-column/8667>
<魏藥,本名魏銘廷,目前是碩一學生。在自由軟體鑄造場擔任技術支援工讀生。>
<自由軟體鑄造場(OSSF),自由軟體鑄造場為中央研究院與行政院國家科學委員會共同出資設立的專職計畫,對自由軟體使用開發有興趣的讀者,可以參考其計畫網址:http://www.openfoundry.org>