實驗四:xl命令的常見子命令以及操作


實驗名稱:

  xl命令的常見子命令以及操作

實驗環境:

  這里我們需要正常安裝一台虛擬機,如下圖:

  我們這里以一台busybox為例,來進行這些簡單的常見的操作;

實驗要求:

  這里我們准備了5個常見操作:

    1、暫停/運行虛擬機--pause/unpause

    2、快照/恢復快照--save/restore

    3、對CPU的簡單操作--vcpu-list/vcpu-pin/vcpu-set

    4、添加/刪除網卡--network-list/network-attach/network-detach

    5、添加/刪除塊設備(磁盤)--block-list/block-attach/network-detach

實驗配置:

  首先,我們通過 xl help 可以查看虛擬機所支持的所有子命令,同時通過 xl help <subcommand> 來查看子命令的使用方式與支持的 option

xl help
xl help <subcommand> 例如:xl help create

  1、暫停/運行虛擬機--pause/unpause

    首先我們需要料及xl list命令下state所顯示的狀態信息:

           xl  list :      #首先需要了解的第一個命令.
               xen VM的常見狀態:
                   r : running
                   b: block(阻塞)
                   p: pause(暫停): 類似與睡眠.
                   s: stop
                   c: crash(崩潰)
                   d: dying, 正在關閉的過程中.

    默認通過 “ctrl + ]” 切換管理界面后,虛擬機進入 block阻塞狀態,通過 pause 命令,則是在內存中暫停虛擬機,通過unpause回復虛擬機運行

xl pause busybox10
xl unpause busybox10

     此時通過 xl list 看到虛擬機進入到 p 的狀態,想恢復,則通過命令 xl unpause <domianname/domianid> 即可;

  2、快照/恢復快照--save/restore

    這里的快照就是將虛擬機掛起,將虛擬機存放到磁盤中去,和暫停有着本質的區別

xl save busybox10 /tmp/busybox10.img.bak
xl restore /etc/xen/busybox10 /tmp/busybox10.img.bak

    save 命令中接的是<domname/domid> <checkpointfile>

    restore 命令中接的是<configname> <checkpointfile>

  3、對CPU的簡單操作--vcpu-list/vcpu-pin/vcpu-set

    查看虛擬機的vcpu個數

xl vcpu-pin busybox10 0 1  #將虛擬機busybox10上的0號vcpu綁定在真實的1號CPU上(可以實現批量CPU綁定,man xl可以查看用法)
xl vcpu-set busybox10 1  #指定busybox10CPU使用的最大個數,這個數量不能大於現有CPU的個數

    此時第二個CPU就會被停止;

  4、添加/刪除網卡--network-list/network-attach/network-detach

    首先我們通過network-list查看虛擬機的網卡情況

    動態為虛擬機添加網卡網卡:

      從幫助上看,我們可以為添加的網卡指定很多的參數,比如:網卡類型、mac地址、連接的橋設備、ip地址、網卡啟動腳本、后端驅動、后端驅動網卡名稱、端口帶寬、模式、acl控制等等;

xl network-attach busybox10 bridge=br0
xl console busybox10

    此時虛擬機就多了一塊網卡eth1

xl network-list busybox10
xl network-detach busybox10 1  #首先要通過network-list查看虛擬機的網卡id,再根據id號來刪除網卡即可(或者根據mac地址也可以)

  5、添加/刪除塊設備(磁盤)--block-list/block-attach/block-detach

    這里我們可以動態添加磁盤文件;

    首先我們通過qemu-img方式來虛擬一塊磁盤;

qemu-img create -f raw -o size=2G /images/xen/busybox10.1.img

    添加該磁盤到虛擬機中去,如圖可知:現在只有一塊磁盤

xl block-attach busybox10 "/images/xen/busybox10.1.img,raw,xvdb,w"  #后面指定四個參數“磁盤,磁盤格式,磁盤編號,磁盤權限”

    【注意:磁盤編號為順延的,默認第一塊磁盤添加的時候是xvda,這里是第二塊,所以即使xvdb】

xl console busybox10
#在虛擬機中查看
fdisk -l
fdisk /dev/xvdb    #進行磁盤分區

    此時就可以使用這個磁盤了;

xl block-list busybox10
xl block-detach busybox10 51728  #51728為磁盤ID號,可以通過block-list看到

實驗結果:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM