kvm虚拟机的克隆和分区扩容

一、虚拟机的克隆

1.通过命令克隆虚拟机

a.关闭虚拟机

[[email protected] ~]# virsh list
 Id    Name                           State
----------------------------------------------------
 1     vm1                            running

[[email protected] ~]# virsh shutdown vm1
Domain vm1 is being shutdown

[[email protected] ~]# virsh list --all
 Id    Name                           State
----------------------------------------------------
 -     vm1                            shut off

b.使用命令克隆虚拟机

[[email protected] ~]# virt-clone -o vm1 -n vm2 -f /data/kvm/hosts/vm2.img
Cloning vm1.qcow2                                                                                                                       | 1.6 GB     00:33     

Clone ‘vm2‘ created successfully.

#参数说明
-o  表示要从哪个源进行clone
-n  表示新虚拟机的名称
-f  表示新虚拟机使用的disk文件(会自动创建)

二、对磁盘分区进行扩容

#安装工具
[[email protected] ~]# yum -y install libguestfs-tools

1.查看原分区信息

[[email protected] ~]# qemu-img info /data/kvm/hosts/vm2.img 
image: /data/kvm/hosts/vm2.img
file format: qcow2
virtual size: 10G (10737418240 bytes)
disk size: 1.6G
cluster_size: 65536
[[email protected] ~]# virt-df -h /data/kvm/hosts/vm2.img 
Filesystem                                Size       Used  Available  Use%
vm2.img:/dev/sda1                         484M        32M       428M    7%
vm2.img:/dev/VolGroup/lv_root             8.4G       806M       7.2G   10%

2.生成一个5G大小的qcow2磁盘

[[email protected] ~]# qemu-img create -f qcow2 /data/kvm/hosts/vm2_img_add.qcow2 5G
Formatting ‘/data/kvm/hosts/vm2_img_add.qcow2‘, fmt=qcow2 size=5368709120 encryption=off cluster_size=65536 
[[email protected] ~]# ll /data/kvm/hosts/
total 4918548
-rw-r--r-- 1 root root  1737490432 Jul 30 10:00 vm1.qcow2
-rwxr-xr-x 1 qemu qemu  1737687040 Jul 30 10:38 vm2.img
-rw-r--r-- 1 root root      197120 Jul 30 10:38 vm2_img_add.qcow2
-rw-r--r-- 1 root root 10737418240 Jul 29 17:52 vm2.raw

3.新增配置文件

[[email protected] ~]# virsh edit vm2
<disk type=‘file‘ device=‘disk‘>
      <driver name=‘qemu‘ type=‘qcow2‘ cache=‘none‘/>
      <source file=‘/data/kvm/hosts/vm2_img_add.qcow2‘/>
      #这里注意盘符,不要有重复
      <target dev=‘vdb‘ bus=‘virtio‘/>
      #注意这里的槽位
      <address type=‘pci‘ domain=‘0x0000‘ bus=‘0x00‘ slot=‘0x07‘ function=‘0x0‘/>
</disk>

4.重启vm2进行分区

[[email protected] ~]# virsh list
 Id    Name                           State
----------------------------------------------------
 2     vm2                            running

[[email protected] ~]# virsh reboot vm2

#查看磁盘信息
[[email protected] ~]# fdisk -l

Disk /dev/vda: 10.7 GB, 10737418240 bytes
16 heads, 63 sectors/track, 20805 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: 0x00007d4b

   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       20806     9972736   8e  Linux LVM
Partition 2 does not end on cylinder boundary.

#这是我们刚添加的磁盘
Disk /dev/vdb: 5368 MB, 5368709120 bytes
16 heads, 63 sectors/track, 10402 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

Disk /dev/mapper/VolGroup-lv_root: 9168 MB, 9168748544 bytes
255 heads, 63 sectors/track, 1114 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: 1040 MB, 1040187392 bytes
255 heads, 63 sectors/track, 126 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

5.将磁盘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 0x362268c6.
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): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-10402, default 1): 
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-10402, default 10402): 
Using default value 10402

Command (m for help): t
Selected partition 1
Hex code (type L to list codes): 8e
Changed system type of partition 1 to 8e (Linux LVM)

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
[[email protected] ~]# partx 
call: partx -opts [device] wholedisk

6.创建pv,扩展lvm

[[email protected] ~]# pvcreate /dev/vdb1
  Physical volume "/dev/vdb1" successfully created
[[email protected] ~]# pvs
  PV         VG       Fmt  Attr PSize PFree
  /dev/vda2  VolGroup lvm2 a--  9.51g    0 
  /dev/vdb1           lvm2 a--  5.00g 5.00g
[[email protected] ~]# vgs
  VG       #PV #LV #SN Attr   VSize VFree
  VolGroup   1   2   0 wz--n- 9.51g    0 

#扩展vg大小 
[[email protected] ~]# vgextend  VolGroup /dev/vdb1
  Volume group "VolGroup" successfully extended
[[email protected] ~]# vgs
  VG       #PV #LV #SN Attr   VSize  VFree
  VolGroup   2   2   0 wz--n- 14.50g 5.00g        #扩大了5G空间

#调整大小前分区挂载信息如下
[[email protected] ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
                      8.5G  806M  7.2G  10% /                #只有8.5G
tmpfs                 246M     0  246M   0% /dev/shm
/dev/vda1             485M   32M  428M   7% /boot  
    
#调整lvm大小
[[email protected] ~]# lvextend -l +100%FREE /dev/VolGroup/lv_root 
  Extending logical volume lv_root to 13.54 GiB
  Logical volume lv_root successfully resized
[[email protected] ~]# resize2fs  /dev/VolGroup/lv_root 
resize2fs 1.41.12 (17-May-2010)
Filesystem at /dev/VolGroup/lv_root is mounted on /; on-line resizing required
old desc_blocks = 1, new_desc_blocks = 1
Performing an on-line resize of /dev/VolGroup/lv_root to 3548160 (4k) blocks.
The filesystem on /dev/VolGroup/lv_root is now 3548160 blocks long.

#再次查看挂载信息
[[email protected] ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
                       14G  808M   12G   7% /            #分区大小已经调整到了14G
tmpfs                 246M     0  246M   0% /dev/shm
/dev/vda1             485M   32M  428M   7% /boot

#在宿主机上查看vm2的磁盘信息
[[email protected] ~]# virt-df -h /data/kvm/hosts/vm2.img /data/kvm/hosts/vm2_img_add.qcow2 
Filesystem                                Size       Used  Available  Use%
vm2.img+:/dev/sda1                        484M        32M       428M    7%
vm2.img+:/dev/VolGroup/lv_root             13G       808M        12G    6%
时间: 2024-07-31 09:39:58

kvm虚拟机的克隆和分区扩容的相关文章

KVM虚拟化笔记(六)------kvm虚拟机的克隆

kvm虚拟机的克隆分为两种情况:kvm主机本机虚拟机直接克隆和通过复制配置文件与磁盘文件的虚拟机复制克隆.接下来我们一一进行测试: (一)kvm主机虚拟机的直接克隆 1,查看虚拟机的配置文件和磁盘文件: [[email protected] qemu]# cat /etc/libvirt/qemu/hadoop1.xml  <!-- WARNING: THIS IS AN AUTO-GENERATED FILE. CHANGES TO IT ARE LIKELY TO BE  OVERWRITT

Centos6.5系统安装kvm虚拟机之克隆、拷贝文件安装新虚拟机

Centos 6.5 x86_64系统安装kvm虚拟机-克隆.拷贝xml文件安装新虚拟机 一.通过模板虚拟机克隆新虚拟机 IP规划: 宿主机:10.0.1.149 模板虚拟机:10.0.1.228 克隆虚拟机:10.0.1.100 关闭或者暂停模板虚拟机,再进行克隆安装新虚拟机. [[email protected] ~]# virt-clone -o kvm_mode_5566 -n mysql-server -f /data/kvmdisk/mysql-server.qcow2 ERROR 

关于kvm虚拟机的克隆方法总结

kvm虚拟机的克隆分为两种情况,第一种kvm宿主机上对虚拟机直接克隆 第二种通过复制配置文件与磁盘文件的虚拟机复制克隆(适用于异机的静态迁移). 现笔者将分别两种kvm虚拟机克隆的的详细操作过程都记录如下: 方法一:kvm宿主机上对虚拟机直接克隆(需要在关机或暂停的状态下操作) 1.查看所有的虚拟机.以及需要克隆的虚拟机的硬盘文件的位置. [[email protected]_kvm ~]# virsh list --all //查看已安装的所有的kvm虚拟机 2.我们可以通过编辑需要克隆的源虚

转:KVM 虚拟机的克隆

KVM 虚拟机的克隆 首先把需要克隆的源虚拟机先关闭,然后使用以下命令来进行克隆,注意我这里使用的是相对路径. virsh shutdown VM02 virt-clone -o VM02 -n VM05 -f VM05.img --connect=qemu:///system chown qemu.qemu VM05.img 需要修改一些东西,把 vnc 的端口号修改一下,避免两个产生冲突,并记录一下这里面的 MAC 地址备用. virsh edit VM05 先启动 VM05,目前两个虚拟机

KVM虚拟机的克隆

克隆KVM虚拟机使用到的命令是virt-clone,该工具主要用来克隆虚拟机,也可以使用一系列参数对克隆出的新虚拟机进行定制化. 需要注意的是,virt-clone不会修改Guest OS内的任何信息,它仅仅只是复制虚拟机磁盘并在宿主机端做一些修改.所以,类似修改密码.设置静态IP地址等都无法通过virt-clone来完成. virt-clone的用法: 基础选项: --version:查看版本 -h,--help:查看帮助信息 --connect=URI:连接到虚拟机管理程序 libvirt

如何给VirtualBox虚拟机的ubuntu LVM分区扩容

我在VirtualBox安装的ubuntu里安装Cloud Foundry时遇到错误信息,磁盘空间不够了: 使用这三个命令做了清理之后,结果依然不够理想: (1) sudo apt-get autoclean(已卸载软件的安装包) (2) sudo apt-get clean(未卸载软件的安装包) (3) 清理系统不再需要的孤立的软件包.sudo apt-get autoremove 于是我决定将ubuntu的虚拟机磁盘大小调整为30G. 当前磁盘空间通过命令行VBoxManage.exe li

烂泥:KVM虚拟机克隆

本文首发于烂泥行天下. 上一篇文章介绍了有关KVM虚拟机快照的创建与恢复,这篇文章我们来介绍有关KVM虚拟机克隆. KVM虚拟机的克隆,我们可以分以下几步: 1. 使用virt-clone命令进行克隆 2. 通过virsh edit命令修改克隆后虚拟机的VNC连接端口 3. 配置克隆后虚拟机的网卡 KVM虚拟机的克隆,我们可以使用virt-clone命令进行.有关virt-clone命令的使用,我们可以通过帮助文档进行查看,如下图: 强烈建议,在克隆虚拟机之前,原来的虚拟机一定要处于关机状态.

kvm 虚拟化 virt-clone 克隆虚拟机

一.virt-clone 概述 1.virt-clone 作用简介 virt-clone 主要是用来克隆kvm虚拟机,并且通过 Options.General Option.Storage Configuration.Networking Configuration 等不同选项对新的虚拟机进行一些特殊的定义. 2.virt-clone 参数介绍 Options(一些基本的选项): --version:查看版本 -h,--help:查看帮助信息 --connect=URI:连接到虚拟机管理程序 l

CentOS 6.9下KVM虚拟机通过virt-clone克隆虚拟机(转)

一.virt-clone概述 1.virt-clone作用简介 virt-clone主要是用来克隆kvm虚拟机,并且通过Options.General Option.Storage Configuration.Networking Configuration等不同选项对新的虚拟机进行一些特殊的定义. 2.virt-clone参数介绍 Options(一些基本的选项): --version:查看版本 -h,--help:查看帮助信息 --connect=URI:连接到虚拟机管理程序 libvirt