1. 程式人生 > >kvm 基本運維命令

kvm 基本運維命令

 

Kvm基本命令

一、查詢命令

1.列出所有的虛擬機器

virsh list –all

2.顯示虛擬機器資訊

virsh dominfo kvm-1

3.顯示虛擬機器記憶體和cpu的使用情況

yum install virt-top -y

virt-top

4.顯示虛擬機器分割槽資訊

virt-df kvm-1

5.關閉虛擬機器(shutodwn)

virsh shutdown kvm-1

6.啟動虛擬機器

virsh start kvm-1

7.設定虛擬機器(kvm-1)跟隨系統自啟

virsh autostart kvm-1

8. 關閉虛擬及自啟

virsh autostart --disable kvm-1

9.刪除虛擬機器

(當在安裝虛擬機器中系統過程中,沒有安裝成功,必須是刪除了才能重新安裝,不然會一直呼叫系統、驅動、空磁碟檔案)

virsh undefine kvm-1

9.1. 檢視列表定位要刪除的虛擬機器

virsh list –all

 

 

9.2.強制停止虛擬機器

virsh destroy vm4

 

 

9.3. 刪除虛擬機器

virsh undefined  vm4

 

 

9.4. 更新當前檔案,並查詢包含虛擬機器vm4的所有內容

updatedb

 

 

9.5. 刪除和vm4一切相關的內容

 

 

9.6. 更新本機檔案後繼續查詢,確保vm4相關檔案徹底刪除

 

 

10.通過控制視窗登入虛擬機器

virsh console kvm-1

 

二、給虛擬機器新增硬碟

1.新增硬碟(lvm卷)或者USB到虛擬機器上

virsh attach-disk kvm-1 /dev/sdb vbd --driver qemu --mode shareable

使用完成之後可以解除安裝usb

virsh detach-disk kvm vdb

2. 新增lvm卷,並掛載

[[email protected] ~]# lvcreate -n kvm-1-data -L 50G vg_shkvm1

[[email protected] ~]# virsh attach-disk kvm-1 /dev/vg_shkvm1/kvm-1-data vdb --driver qemu --mode shareable

Disk attached successfully

# 登入到kvm-1上檢視lvm是否已經被掛載

[[email protected] ~]# virsh console kvm-1 # 輸入kvm-1的使用者和密碼

[[email protected] ~]# 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

3. 格式化新新增的vdb,並新增到lvm組中

# 對新新增的硬碟分割槽

[[email protected] ~]# 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  # 儲存更改

[email protected] ~]# 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.

[[email protected] ~]# pvc reate /dev/vdb1   # 建立pv

vdb   vdb1

[[email protected] ~]# vgextend VolGroup /dev/vdb  # 擴充套件lvm vg

vdb   vdb1

[[email protected] ~]# vgs

  VG       #PV #LV #SN Attr   VSize  VFree

  VolGroup   2   2   0 wz--n- 69.50g 50.00g

# 從上面能看出,新新增的 已經加到lvm組中

 

三、改變虛擬機器的引數

1.通過命令列更改建立之後虛擬機器的記憶體,cpu等資訊

1.1更改記憶體

1. 檢視虛擬機器當前記憶體

[[email protected] ~]# 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

# 之後操作1,2,3步驟增加記憶體

 

2. 更改CPU

需要修改配置檔案,因此需要停止虛擬機器

virsh shutdown kvm-1

virsh edit kvm-1

#  <vcpu>2</vcpu>  # 4 > 2

virsh create /etc/libvirt/demu/kvm-1/xml

3. 硬碟擴容

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>

 # 這裡建議使用上面的新增硬碟的方式新增