virsh命令行管理工具
生活随笔
收集整理的這篇文章主要介紹了
virsh命令行管理工具
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
KVM虛擬機(jī)管理工具 virsh
virsh是使用 libvirt management API 構(gòu)建的管理工具,是kvm虛擬機(jī)常用的管理工具
virsh 含義是 virtualization shell 。virsh 有命令模式和交互模式如果直接在vrish后面添加參數(shù)是命令模式,如果直接寫virsh,就會(huì)進(jìn)入交互模式。
virsh --help #查看命令幫忙virsh list #顯示正在運(yùn)行或掛起的虛擬機(jī)virsh list --all #顯示所有的虛擬機(jī)virsh start domain #啟動(dòng)虛擬機(jī)virsh shutdown domain #關(guān)閉虛擬機(jī)virsh destroy domain #虛擬機(jī)強(qiáng)制斷電(易丟失數(shù)據(jù),慎用)virsh suspend domain #掛起虛擬機(jī)virsh resume domain #恢復(fù)掛起的虛擬機(jī)virsh reboot domain #重啟虛擬機(jī)virsh undefine domain #刪除虛擬機(jī),慎用。會(huì)刪除默認(rèn)路徑下(/etc/libvirt/qemu/)的虛擬機(jī)配置文件virsh define domain.xml # 用于虛擬機(jī)遷移后的導(dǎo)入,domain.xml為虛擬機(jī)的配置文件(只要有虛擬機(jī)的磁盤文件加配置文件,那么虛擬機(jī)便可以遷移到如何地方并導(dǎo)入)virsh dominfo domain #查看虛擬機(jī)的配置信息virsh domiflist domain #查看虛擬機(jī)網(wǎng)卡配置信息virsh domblklist domain #查看該虛擬機(jī)的磁盤位置virsh edit domain #修改虛擬機(jī)的xml配置文件/etc/libvirt/qemu/domain.xml(帶語法檢查 )virsh dumpxml domain #查看虛擬機(jī)當(dāng)前配置virsh dumpxml vm-node1 > vm-node1.bak.xml #備份vm-node1虛擬機(jī)的xml文件,原文件默認(rèn)路徑/etc/libvirt/qemu/vm-node1.xmlvirsh autostart domain #KVM物理機(jī)開機(jī)自啟動(dòng)虛擬機(jī),配置后會(huì)在此目錄生成配置軟連接文件/etc/libvirt/qemu/autostart/vm-node1.xml(所以,本質(zhì)就是將虛擬機(jī)的配置文件移動(dòng)到該目錄下即可,手動(dòng)移動(dòng)也生效。)。如果物理機(jī)斷電,上電后,希望kvm虛擬機(jī)能夠立即自啟動(dòng)virsh autostart --disable domain #取消開機(jī)自啟動(dòng)virsh vncdisplay domain #查看虛擬機(jī)vnc端口號(hào)(第一臺(tái)默認(rèn)為5901)virsh domblklist domain #列出虛擬機(jī)所有的塊設(shè)備virsh desc template1 #查看虛擬機(jī)的描述信息virsh domrename domain_old domain_new #修改虛擬機(jī)名(關(guān)機(jī)狀態(tài)下)virsh pool-listvirsh pool-list --allvirsh net-list --all virsh net-listvirsh net-edit <網(wǎng)卡> #編輯網(wǎng)絡(luò)文件 即/etc/libvirt/qemu/networks/xxx.xml文件virsh iface-list #物理主機(jī)接口列表virsh nwfilter-list #列出網(wǎng)絡(luò)過濾器virsh snapshot-list domain #列出虛擬機(jī)的快照virsh vol-list <pool> # 列出某地址池的數(shù)據(jù)卷virsh nodeinfo # 查看宿主機(jī)CPU信息KVM虛擬機(jī)配置文件
每個(gè)KVM虛擬主機(jī)都有自己的配置文件,都是以虛擬主機(jī)名命名;KVM虛擬機(jī)的配置文件在 /etc/libvirt/qemu/ 下,以xml文件形式存在;
[root@kvm ~]# virsh edit template1 # 或者使用 vim /etc/libvirt/qemu/template1.xml 進(jìn)行編輯,但是不帶語法檢查 [root@kvm ~]# cat /etc/libvirt/qemu/template1.xml <!-- WARNING: THIS IS AN AUTO-GENERATED FILE. CHANGES TO IT ARE LIKELY TO BE OVERWRITTEN AND LOST. Changes to this xml configuration should be made using:virsh edit template1 or other application using the libvirt API. --><domain type='kvm'> <!--描述hypervisor。在Libvirt官方文檔里面,將虛擬機(jī)定義為domain,而不是vm(virtual machine)。Xen中Domain0表示宿主機(jī)系統(tǒng),而在KVM中,domain完全指虛擬機(jī)系統(tǒng)。--> <!--type一項(xiàng)指明了使用的是哪種虛擬化技術(shù)。如果使用的是KVM,那么值為kvm。如果使用的是Xen,那么值為xen。當(dāng)然,如果使用的是其他hypervisor,值也不盡相同--><name>template1</name><!--定義了虛擬機(jī)的名字。libvirt可以通過虛擬機(jī)的名字對(duì)虛擬機(jī)進(jìn)行管理。在同一臺(tái)物理機(jī)上,虛擬機(jī)的名字必須要保證唯一的。如果存在重名的情況,添加和創(chuàng)建虛擬機(jī)時(shí),會(huì)失敗。--><uuid>8188720f-93e7-44ab-b7cd-b5bd848b6dce</uuid><!--定義的虛擬機(jī)的UUID。在同一臺(tái)物理機(jī)上,UUID值也必須是唯一的,否則會(huì)出現(xiàn)沖突。--><memory unit='KiB'>524288</memory><!--描述虛擬機(jī)的內(nèi)存信息,通常以KB為單位。--><currentMemory unit='KiB'>524288</currentMemory><vcpu placement='static'>1</vcpu><!--指明了為該虛擬機(jī)分配的虛擬CPU的個(gè)數(shù)--><os><!--系統(tǒng)引導(dǎo)設(shè)備配置--><type arch='x86_64' machine='pc-i440fx-rhel7.0.0'>hvm</type><!--架構(gòu)宿主機(jī)的操作系統(tǒng)--><boot dev='hd'/><!--指定啟動(dòng)設(shè)備,可以重復(fù)多行,指定不同的值,作為一個(gè)啟動(dòng)設(shè)備列表--></os><features><!--電源管理--><acpi/><apic/></features><cpu mode='host-passthrough' check='partial'><!--CUP配置,cpu mode可以寫成'host-passthrough',意思是使用真機(jī)的CPU--><feature policy='require' name='md-clear'/><feature policy='require' name='spec-ctrl'/><feature policy='require' name='ssbd'/></cpu><clock offset='utc'><!--時(shí)鐘設(shè)置,可以設(shè)置為localtime--><timer name='rtc' tickpolicy='catchup'/><timer name='pit' tickpolicy='delay'/><timer name='hpet' present='no'/></clock><on_poweroff>destroy</on_poweroff><!--虛擬機(jī)關(guān)機(jī)命令--><on_reboot>restart</on_reboot><!--虛擬機(jī)重啟命令--><on_crash>destroy</on_crash><!--虛擬機(jī)強(qiáng)制重啟命令--><!--定義了在kvm環(huán)境中poweroff,reboot,crash時(shí)的默認(rèn)的動(dòng)作分別為destroy和restart。其他允許的動(dòng)作包括: preserve,rename-restart。destroy:停止該虛擬機(jī)。相當(dāng)于關(guān)閉電源。restart重啟虛擬機(jī)。--><pm><!--內(nèi)存及硬盤休眠設(shè)置,可刪除--><suspend-to-mem enabled='no'/><suspend-to-disk enabled='no'/></pm><devices><!--系統(tǒng)仿真設(shè)備,主板驅(qū)動(dòng)類--><emulator>/usr/libexec/qemu-kvm</emulator><!--仿真設(shè)備使用哪個(gè)程序來仿真,這里使用qemu-kvm來仿真--><disk type='file' device='disk'><!--硬盤配置,需要手動(dòng)修改,可以通過復(fù)制本段來創(chuàng)建新的磁盤--><driver name='qemu' type='qcow2'/><!--磁盤驅(qū)動(dòng)類型及磁盤格式,常用的image格式為raw或qcow2,可以使用 qemu-img 命令創(chuàng)建磁盤鏡像--><source file='/var/lib/libvirt/images/template.qcow2'/><!--磁盤路徑設(shè)置--><target dev='vda' bus='virtio'/><!--磁盤盤符設(shè)置,采用virtio驅(qū)動(dòng)--><address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/><!--總線地址,下同--></disk><disk type='file' device='cdrom'><driver name='qemu' type='raw'/><target dev='hda' bus='ide'/><readonly/><address type='drive' controller='0' bus='0' target='0' unit='0'/></disk><controller type='usb' index='0' model='ich9-ehci1'><!--PCI設(shè)備配置--><address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x7'/></controller><controller type='usb' index='0' model='ich9-uhci1'><master startport='0'/><address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0' multifunction='on'/></controller><interface type='bridge'><!--虛擬機(jī)網(wǎng)絡(luò)連接方式,此處為橋接,如果是default則為NAT模式。可復(fù)制本段來添加新的網(wǎng)卡--><mac address='52:54:00:c8:5c:44'/><!--網(wǎng)卡MAC地址--><source bridge='virbr0'/><!--使用網(wǎng)橋類型--><model type='virtio'/><address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/></interface><serial type='pty'><!--串口終端信息--><target type='isa-serial' port='0'><model name='isa-serial'/></target></serial><console type='pty'><target type='serial' port='0'/></console><channel type='unix'><!--虛擬機(jī)通訊控制接口--><target type='virtio' name='org.qemu.guest_agent.0'/><address type='virtio-serial' controller='0' bus='0' port='1'/></channel><input type='tablet' bus='usb'><address type='usb' bus='0' port='1'/></input><input type='mouse' bus='ps2'/><!--輸入設(shè)備鼠標(biāo)--><input type='keyboard' bus='ps2'/><!--輸入設(shè)備鍵盤--><graphics type='vnc' port='5910' autoport='no' listen='0.0.0.0'><!--定義與guset交互的圖形設(shè)備。在這個(gè)例子中,使用vnc協(xié)議。指定監(jiān)聽地址和端口--><listen type='address' address='0.0.0.0'/></graphics><video><!--圖形圖像顯卡相關(guān)配置--><model type='cirrus' vram='16384' heads='1' primary='yes'/><address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/></video><memballoon model='virtio'><!--內(nèi)存氣泡,可以動(dòng)態(tài)調(diào)整內(nèi)存--><address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/></memballoon><rng model='virtio'><backend model='random'>/dev/urandom</backend><address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x0'/></rng></devices> </domain>總結(jié)
以上是生活随笔為你收集整理的virsh命令行管理工具的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 清华计算机本科 课表
- 下一篇: Unity 环境变量设置