如何在Linux中用命令列工具管理KVM虛擬環境

Mohammad Dosoukey發表於2015-05-13

在我們KVM系列專題的第四部分,我們將會一起討論下在命令列介面下來管理KVM環境。我們分別用‘virt-install’和virsh命令列工具來建立並配置虛擬機器和儲存池,用qemu-img命令列工具來建立並管理磁碟映像。

如何在Linux中用命令列工具管理KVM虛擬環境

Linux系統的KVM管理

在這篇文章裡沒有什麼新的概念,我們只是用命令列工具重複之前所做過的事情,也沒有什麼前提條件,都是相同的過程,之前的文章我們都討論過。

第一步: 配置儲存池

Virsh命令列工具是一款管理virsh客戶域的使用者介面。virsh程式能在命令列中執行所給的命令以及它的引數。

本節中,我們要用它給我們的KVM環境建立儲存池。想知道關於這個工具的更多資訊,用以下這條命令。

# man virsh

1. 用virsh帶pool-define-as的命令來定義新的儲存池,你需要指定名字、型別和型別引數。

本例中,我們將名字取為Spool1,型別為目錄。預設情況下你可以提供五個引數給該型別:

  • source-host
  • source-path
  • source-dev
  • source-name
  • target

對於目錄型別,我們需要用最後一個引數“target”來指定儲存池的路徑,其它引數項我們可以用“-”來填充。

# virsh pool-define-as Spool1 dir - - - - "/mnt/personal-data/SPool1/"

如何在Linux中用命令列工具管理KVM虛擬環境

建立新儲存池

2. 檢視環境中我們所有的儲存池,用以下命令。

# virsh pool-list --all

如何在Linux中用命令列工具管理KVM虛擬環境

列出所有儲存池

3. 現在我們來構造儲存池了,用以下命令來構造我們剛才定義的儲存池。

# virsh pool-build Spool1

如何在Linux中用命令列工具管理KVM虛擬環境

構造儲存池

4. 用帶pool-start引數的virsh命令來啟用並啟動我們剛才建立並構造完成的儲存池。

# virsh pool-start Spool1

如何在Linux中用命令列工具管理KVM虛擬環境

啟用儲存池

5. 檢視環境中儲存池的狀態,用以下命令。

# virsh pool-list --all

如何在Linux中用命令列工具管理KVM虛擬環境

檢視儲存池狀態

你會發現Spool1的狀態變成了已啟用。

6. 對Spool1進行配置,讓它每次都能被libvirtd服務自啟動。

# virsh pool-autostart Spool1

如何在Linux中用命令列工具管理KVM虛擬環境

配置KVM儲存池

7. 最後來看看我們新的儲存池的資訊吧。

# virsh pool-info Spool1

如何在Linux中用命令列工具管理KVM虛擬環境

檢視KVM儲存池資訊

恭喜你,Spool1已經準備好待命,接下來我們試著建立儲存捲來使用它。

第二步: 配置儲存卷/磁碟映像

現在輪到磁碟映像了,用qemu-img命令在Spool1中建立一個新磁碟映像。獲取更多細節資訊,可以檢視man手冊。

# man qemu-img

8. 我們應該在qemu-img命令之後指定“create, check,…”等等操作、磁碟映像格式、你想要建立的磁碟映像的路徑和大小。

# qemu-img create -f raw /mnt/personal-data/SPool1/SVol1.img 10G

如何在Linux中用命令列工具管理KVM虛擬環境

建立儲存卷

9. 通過使用帶info的qemu-img命令,你可以獲取到你的新磁碟映像的一些資訊。

如何在Linux中用命令列工具管理KVM虛擬環境

檢視儲存卷資訊

警告: 不要用qemu-img命令來修改被執行中的虛擬機器或任何其它程式所正在使用的映像,那樣映像會被破壞。

現在是時候來建立虛擬機器了。

第三步: 建立虛擬機器

10. 現在到最後一個環節了,在最後一步中,我們將用virt-install命令來建立虛擬機器。virt-install是一個用來建立新的KVM虛擬機器命令列工具,它使用“libvirt”管理程式庫。想獲取更多細節,同樣可以檢視man手冊。

# man virt-install

要建立新的KVM虛擬機器,你需要用到帶以下所有資訊的命令。

  • Name: 虛擬機器的名字。
  • Disk Location: 磁碟映像的位置。
  • Graphics : 怎樣連線VM,通常是SPICE。
  • vcpu : 虛擬CPU的數量。
  • ram : 以兆位元組計算的已分配記憶體大小。
  • Location : 指定安裝源路徑。
  • Network : 指定虛擬網路,通常是virbr0網橋。

    virt-install –name=rhel7 –disk path=/mnt/personal-data/SPool1/SVol1.img –graphics spice –vcpu=1 –ram=1024 –location=/run/media/dos/9e6f605a-f502-4e98-826e-e6376caea288/rhel-server-7.0-x86_64-dvd.iso –network bridge=virbr0

如何在Linux中用命令列工具管理KVM虛擬環境

建立新的虛擬機器

11. 你會看到彈出一個virt-vierwer視窗,像是在通過它在與虛擬機器通訊。

如何在Linux中用命令列工具管理KVM虛擬環境

虛擬機器啟動程式

如何在Linux中用命令列工具管理KVM虛擬環境

虛擬機器安裝過程

結論

以上就是我們KVM教程的最後一部分了,當然我們還沒有完全覆蓋到全部,我們只是打了個擦邊球,所以現在該輪到你來好好地利用這些豐富的資源來做自己想做的事了。

相關文章