virsh回車進入互動式界面:
version
pwd
hostname 顯示本節點主機名
nodeinfo 顯示節點資訊
list --all 顯示所有雲主機
7種狀态:
running 運作中
idel 空閑,未運作
paused 暫停狀态
shutdown 關閉
crashed 虛拟機崩潰
dying 垂死狀态,但是又沒有完全關閉或崩潰
shutdown <domain>
destroy <domain> 強制關閉虛拟機(相當于直接撥電源)
start <domain> 啟動虛拟機
edit <domain> 編輯該虛拟機的xml檔案
dommemstat <domain> 擷取domain的記憶體狀态
suspend <domain> 挂起一個正在運作的虛拟機,該虛拟機仍占資源;
resume <domain> 從挂起狀态恢複一下虛拟機
vcpuinfo <domain> 顯示一些虛拟機的vcpu的資訊
vncdisplay <domain> 顯示vnc監聽位址和端口
快照相關:
snapshot-create <domain> xmlfile 給domain建立一個snapshot,詳細内容儲存在xmlfile中
snapshot-current <domain> 顯示一個domain的目前的snapshot
snapshot-list <domain> 顯示一個domain的所有的snapshot
snapshot-revert <domain> snapshot 恢複一個domian到以前的snapshot
snapshot-delete <domain> snapshot --children 删除一個domain的snapshot
如何用libvirt遠端管理虛拟機?
要用libvirt連接配接到超級管理程式,我們需要一個URI,這個URI配合virsh和virt-viewer指令使用,後面可以跟一些可選項,virt-viewer可以調用一些連結參數,例如:virsh -c qemu:///system 當連結到遠端機器時,可以定義幾種使用的協定:ssh,tcp,tls。當連結到遠端機器時,需要使用遠端主機的使用者和主機名進行連結,如果沒有定義連結使用者,則會使用本機環境的$USER的使用者進行連結,當連接配接到qemu hypervisor時,接受兩種連結類型:system可以有所有的通路權限,session有限制的通路。例如:
使用full access連結至本機的qemu hypervisor,前面的-c 是為了執行後面的list指令(--connect)
virsh -c qemu:///system list
使用full access連結至遠端主機的qemu hypervisor,每次都要輸入ssh密碼,改成ssh無密碼登陸就不需要輸入密碼了,直接顯示結果。
virsh -c qemu+ssh://tux@mercur/system 直接進入互動virsh模式
virsh -c qemu+ssh://10.1.1.8/system list 直接顯示list後的結果
其餘連接配接格式如下:
qemu:///session (local access to per-user instance)
qemu+unix:///session (local access to per-user instance)
qemu:///system (local access to system instance)
qemu+unix:///system (local access to system instance)
qemu://example.com/system (remote access, TLS/x509)
qemu+tcp://example.com/system (remote access, SASl/Kerberos)
qemu+ssh:///system (remote access, SSH tunnelled)
使用libvirt建立kvm虛拟機:
1、制作虛拟機鏡像
qemu-img create -f qcow2 test.qcow2 10G //格式,名字,大小
2、下載下傳并複制iso鏡像到指定目錄(在第3步中建立xml檔案中指定)
3、建立安裝配置檔案,demo.xml如下,可以根據自己需求更改
virsh define demo.xml //建立虛拟機
virsh start test_ubuntu //啟動虛拟機
virsh vncdisplay test_ubuntu ////檢視虛拟機的vnc端口, 然後就可以通過vnc登入來完成虛拟機的安裝