1.檢視虛擬機器列表
virsh list
2.檢視正在執行的虛擬機器列表
virsh list --all
3.檢視所有虛擬機器
virsh list --all
4.檢視虛擬機器詳細資訊 域
virsh dominfo [虛擬機器名稱]
5.虛擬機器域的開關機操作
virsh start [虛擬機器名稱]
(開機)
virsh shutdown [虛擬機器名稱]
(溫柔的關機)
virsh shutdown [ID號]
(關機)
virsh destroy [虛擬機器名稱]
(強制關機,相當於拔電源)
6.匯出配置檔案
virsh dumpxml test01 > test01.xml
7.刪除虛擬機器
virsh undefine test01
(刪除虛擬機器後磁碟檔案還在)
8.根據配置檔案恢復虛擬機器
virsh define test01.xml
9.修改配置檔案
virsh edit [虛擬機器名稱]
(自帶語法檢查功能)
10.修改虛擬機器名稱(7.2版本之前不支援)
virsh domrename [虛擬機器舊名稱] [虛擬機器新名稱]
11.檢視虛擬機器對應的vnc埠
virsh vncdisplay [虛擬機器名稱]
12.掛起虛擬機器
virsh suspend [虛擬機器名稱]
13.恢復掛起的虛擬機器
virsh resume [虛擬機器名稱]
14.開機自啟
virsh autostart [虛擬機器名稱]
15.取消開機自啟
virsh autostart --disable [虛擬機器名稱]
16.顯示虛擬機器分割槽資訊
virt-df [虛擬機器名稱]
17.顯示虛擬機器記憶體和cpu的使用情況
yum install virt-top -y
virt-top
18.透過控制視窗登入虛擬機器
virsh console [虛擬機器名稱]
19.給虛擬機器新增硬碟
# 新增硬碟(lvm卷)或者USB到虛擬機器上
virsh attach-disk kvm-1 /dev/sdb vbd --driver qemu --mode shareable
# 使用完成之後可以解除安裝usb
virsh detach-disk kvm vdb
# 新增lvm卷,並掛載
[root@sh-kvm-1 ~]# lvcreate -n kvm-1-data -L 50G vg_shkvm1
[root@sh-kvm-1 ~]# virsh attach-disk kvm-1 /dev/vg_shkvm1/kvm-1-data vdb --driver qemu --mode shareable
Disk attached successfully
# 登入到kvm-1上檢視lvm是否已經被掛載
[root@sh-kvm-1 ~]# virsh console kvm-1 # 輸入kvm-1的使用者和密碼
[root@sh-kvm-1-1 ~]# fdisk -l # 檢視硬碟掛載情況
Disk /dev/vda: 21.5 GB, 21474836480 bytes
16 heads, 63 sectors/track, 41610 cylinders
Units = cylinders of 1008 * 512 = 516096 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00058197
Device Boot Start End Blocks Id System
/dev/vda1 * 3 1018 512000 83 Linux
Partition 1 does not end on cylinder boundary.
/dev/vda2 1018 41611 20458496 8e Linux LVM
Partition 2 does not end on cylinder boundary.
Disk /dev/mapper/VolGroup-lv_root: 18.8 GB, 18798870528 bytes
255 heads, 63 sectors/track, 2285 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Disk /dev/mapper/VolGroup-lv_swap: 2147 MB, 2147483648 bytes
255 heads, 63 sectors/track, 261 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Disk /dev/vdb: 53.7 GB, 53687091200 bytes # 新新增的硬碟
16 heads, 63 sectors/track, 104025 cylinders
Units = cylinders of 1008 * 512 = 516096 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
# 格式化新新增的vdb,並新增到lvm組中
# 對新新增的硬碟分割槽
[root@sh-kvm-1-1 ~]# fdisk /dev/vdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0xf04b6807.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help): m # 檢視幫助
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
Command (m for help): n #新增一個分割槽
Command action
e extended
p primary partition (1-4)
p #選擇新增一個擴充套件分割槽
Partition number (1-4):
Value out of range.
Partition number (1-4): 1
First cylinder (1-104025, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-104025, default 104025):
Using default value 104025
Command (m for help): t #改變分割槽的格式
Selected partition 1
Hex code (type L to list codes): 8e #改成lvm
Changed system type of partition 1 to 8e (Linux LVM)
Command (m for help): w # 儲存更改
root@sh-kvm-1-1 ~]# mkfs.ext4 /dev/vdb1 # 格式化分割槽
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
3276800 inodes, 13107142 blocks
655357 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
400 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 28 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
[root@sh-kvm-1-1 ~]# pvc reate /dev/vdb1 # 建立pv
vdb vdb1
[root@sh-kvm-1-1 ~]# vgextend VolGroup /dev/vdb # 擴充套件lvm vg
vdb vdb1
[root@sh-kvm-1-1 ~]# vgs
VG #PV #LV #SN Attr VSize VFree
VolGroup 2 2 0 wz--n- 69.50g 50.00g
# 從上面能看出,新新增的 已經加到lvm組中
20.改變虛擬機器的引數
# 更改記憶體
# 1. 檢視虛擬機器當前記憶體
[root@sh-kvm-1 ~]# virsh dominfo kvm-1 | grep memory
Max memory: 4194304 KiB
Used memory: 4194304 KiB
# 2、動態設定記憶體為512MB,記憶體減少
virsh setmem kvm-1 524288
# 注意單位必須是KB
# 3、檢視記憶體變化
# virsh dominfo kvm-1 | grep memory
Max memory: 14194304 KiB
Used memory: 524288 kiB
# 4、記憶體增加
virsh shutdown kvm-1
virsh edit kvm-1 # 直接更改memory
virsh create /etc/libvirt/demu/kvm-1/xml
# 更改CPU(需要修改配置檔案,因此需要停止虛擬機器)
virsh shutdown kvm-1
virsh edit kvm-1
# <vcpu>2</vcpu> # 4 > 2
virsh create /etc/libvirt/demu/kvm-1/xml
# 硬碟擴容
1. Create a 10-GB non-sparse file:
# dd if=/dev/zero of=/vm-images/vm1-add.img bs=1M count=10240
2. Shutdown the VM:
# virsh shutdown vm1
3. Add an extra entry for ‘disk’ in the VM's XML file in /etc/libvirt/qemu. You can look copy & paste
the entry for your mail storage device and just change the target and address tags. For example:
# virsh edit vm1
<disk type='file' device='disk'>
<driver name='qemu' type='raw' cache='none' io='threads'/>
<source file='/vm-images/vm1.img'/>
<target dev='vda' bus='virtio'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x04'
function='0x0'/>
</disk>
Add:
<disk type='file' device='disk'>
<driver name='qemu' type='raw' cache='none' io='threads'/>
<source file='/vm-images/vm1-add.img'/>
<target dev='vdb' bus='virtio'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x06'
function='0x0'/>
</disk>
# 這裡建議使用上面的新增硬碟的方式新增