




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Kvm之Lvm存储测试实验1. Kvm添加Lvm存储池2. 使用Lv安装操作系统3. 使用Lv快照创建操作系统4. 扩展虚拟机LVM之lv root分区空间5. 根据上一个实例,现有另一个问题,如果data分区是分布在两个物理卷PV,如何扩充此分区呢?6. 虚拟机快照及PV数据迁移7. LVM虚拟机克隆实验1.略实验2.使用Lv安装操作系统实验环境:宿主机使用的是lvm存储,guest使用lvm分区此一句话带过吧,太简单了,用lvcreate L 20G n web01-lvm vg_lvm,便可创建一个逻辑卷.这时我们便可以用此卷安装操作系统了.virt-install -connect q
2、emu:/system -name web01_lvm -ram 1024 -vcpus=1 -disk=/dev/vg_lvm/web01-lvm -network bridge:br0 -accelerate -cdrom /iso/CentOS-6.3-x86_64-bin-DVD1.iso -vnc -vncport=5902 -vnclisten=0.0.0.0这样我们就可以通过mRemote工具到这台guest上安装虚拟机了.如果你使用的是kickstart安装,还可以借助下面的命令来自动化安装virt-install -name cache1 -vcpus=8 -ram 6144
3、 -pxe -network bridge=br0 -network bridge=br1 -disk=/dev/vg_lvs2/vm-cache1 -vnc -vncport 5902 -vnclisten=0.0.0.0 -noautoconsole仅供参考!实验3. 使用Lv快照创建操作系统实验环境:宿主机使用的是lvm存储,guest使用lvm分区在实验2处,我们已经通过宿主机的一个逻辑卷安装了guest,在此,我想通过LVM的快照技术,生成一个快照卷,用此卷来生成一个全新的系统,因其创建快,用与培训机构供学生作为练习机,还是很不错的。往下走。先看一下这个虚拟机是多大的,到时候我们可以
4、根据此大小增长15%-20%,此部分用来存放原主机被修改的部分.执行如下命令:rootlvm # lvs LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert os_img vg_lvm -wi-ao- 147.66g web01-lvm vg_lvm -wi-a- 20.00g web01_lvm_disk1 vg_lvm -wi-a- 10.00g web01_lvm_disk2 vg_lvm -wi-a- 10.00g web01_lvm_disk3 vg_lvm -wi-a- 30.00g rootlvm # lvcreat
5、e -s -L 4G -n web01-lvm-snap /dev/vg_lvm/web01-lvm Logical volume "web01-lvm-snap" created此时,我们便可以用web01-lvm-snap作为启动虚拟机的镜像文件了。切记,我们能使用的空间只有4G,原因请看下lvm快照的原理.在这我就不深入了。以上,是通过virt-manager工具创建的快照虚拟机,下面在命令行上再创建一次;rootlvm # lvcreate -s -L 4G -n web01-lvm-snap /dev/vg_lvm/web01-lvm Logical volume
6、 "web01-lvm-snap" created导出web01_lvm虚拟机的配置信息,并修改4处信息virsh dumpxml web01-lvm >/etc/libvirt/qemu/web01_lvm_snap.xmlUUID生成:rootlvm # uuidgen 678fda12-51ca-4b97-aab7-f0bcdf560b33MAC生成: rootlvm qemu# python -c "from virtinst.util import randomMAC;print randomMAC(type='qemu')&quo
7、t;52:54:00:8d:be:fc rootlvm # more /etc/libvirt/qemu/web01_lvm_snap.xml<domain type='kvm'> <name>web01-lvm-snap</name> <uuid>678fda12-51ca-4b97-aab7-f0bcdf560b33</uuid> <memory unit='KiB'>1048576</memory> <currentMemory unit='KiB'&
8、gt;1048576</currentMemory> <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='rhel6.3.0'>hvm</type> <boot dev='hd'/> </os> <features> <acpi/> <apic/> <pae/> </features> <
9、clock offset='utc'/> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>restart</on_crash> <devices> <emulator>/usr/libexec/qemu-kvm</emulator> <disk type='block' device='disk'> <driver
10、 name='qemu' type='raw' cache='none' io='native'/> <source dev='/dev/vg_lvm/web01-lvm-snap'/> <target dev='hda' bus='ide'/> <address type='drive' controller='0' bus='0' target='0' unit='0
11、9;/> </disk> <disk type='block' device='cdrom'> <driver name='qemu' type='raw'/> <target dev='hdc' bus='ide'/> <readonly/> <address type='drive' controller='0' bus='1' target='0' unit=
12、'0'/> </disk> <controller type='usb' index='0'> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> </controller> <controller type='ide' index='0'> <address typ
13、e='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/> </controller> <interface type='bridge'> <mac address='52:54:00:8d:be:fc'/> <source bridge='br0'/> <address type='pci' domain='0x00
14、00' bus='0x00' slot='0x03' function='0x0'/> </interface> <serial type='pty'> <target port='0'/> </serial> <console type='pty'> <target type='serial' port='0'/> </console> <input type=&
15、#39;mouse' bus='ps2'/> <graphics type='vnc' port='5902' autoport='no' listen='0.0.0.0'> <listen type='address' address='0.0.0.0'/> </graphics> <video> <model type='cirrus' vram='9216' heads='
16、;1'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> </video> <memballoon model='virtio'> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='
17、0x0'/> </memballoon> </devices></domain>生成快照虚拟机rootlvm # virsh define /etc/libvirt/qemu/web01_lvm_snap.xml Domain web01_lvm_snap defined from /etc/libvirt/qemu/web01_lvm_snap.xml启动快照虚拟机rootlvm # virsh start web01_lvm_snapDomain web01_lvm_snap started虚拟机创建了,这时我们就可以将此虚拟机交付与他人了
18、,即使破坏了,我们也不用担心,再创建一个快照便可了.实验4. 扩容虚拟机LVM之lv 全root分区空间实验环境:宿主机使用的是lvm存储,guest使用lvm分区好了, 现在让我们看看怎么使用virt-resize来调整大小. 首先让我们看下虚拟机卷组的相关信息:guest# vgs VG #PV #LV #SN Attr VSize VFree vg_lvm 1 3 0 wz-n- 9.90g 0逻辑卷相关信息:guest# lvs LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert data vg_lvm -wi-ao- 2
19、.04g root vg_lvm -wi-ao- 5.86g swap vg_lvm -wi-ao- 2.00g 现在关闭虚拟机host# virsh shutdown web01-lvmDomain web01-lvm is being shutdown在使用resize命令前,先看下此虚拟机镜像文件的大小和类型.host# qemu-img info /dev/vg_lvm/web01-lvmimage: /dev/vg_lvm/web01-lvmfile format: rawvirtual size: 10G (10737418240 bytes)disk size: 0我们将要重命名
20、/dev/vg_lvm/web01-lvm逻辑卷并且最后创建一个新的大小的卷。现在这个虚拟镜像是10G,现在我们要将其扩充到20G。现在让我们用lvrename命令来改名,并且用lvcreate创建一个20G的镜像磁盘。host# lvrename vg_lvm web01-lvm web01-lvm-OLD Renamed "web01-lvm" to "web01-lvm-OLD" in volume group "vg_lvm"rootlvm # lvs LV VG Attr LSize Pool Origin Data% Mo
21、ve Log Copy% Convert os_img vg_lvm -wi-ao- 147.66g web01-lvm-OLD vg_lvm -wi-a- 10.00g web01_lvm_disk1 vg_lvm -wi-ao- 10.00g web01_lvm_disk2 vg_lvm -wi-ao- 10.00g 再创建一个20G的web01-lvmhost# lvcreate -L 20G -n web01-lvm vg_lvm Logical volume "web01-lvm" createdhost# lvs LV VG Attr LSize Pool Or
22、igin Data% Move Log Copy% Convert os_img vg_lvm -wi-ao- 147.66g web01-lvm vg_lvm -wi-a- 20.00g web01-lvm-OLD vg_lvm -wi-a- 10.00g web01_lvm_disk1 vg_lvm -wi-ao- 10.00g web01_lvm_disk2 vg_lvm -wi-ao- 10.00g 现在我们可以执行下面的命令来扩充root分区的空间了host# virt-resize /dev/vg_lvm/web01-lvm-OLD /dev/vg_lvm/web01-lvm -e
23、xpand /dev/vda2 -LV-expand /dev/vg_lvm/rootExamining /dev/vg_lvm/web01-lvm-OLD .*Summary of changes:/dev/sda1: This partition will be left alone./dev/sda2: This partition will be resized from 9.9G to 19.9G. The LVM PV on /dev/sda2 will be expanded using the 'pvresize' method./dev/vg_lvm/root
24、: This logical volume will be expanded to maximum size. The filesystem ext4 on /dev/vg_lvm/root will be expanded using the 'resize2fs' method.*Setting up initial partition table on /dev/vg_lvm/web01-lvm .Copying /dev/sda1 .Copying /dev/sda2 . 省略进度.Expanding /dev/sda2 using the 'pvresize&
25、#39; method .Expanding /dev/vg_lvm/root using the 'resize2fs' method .Resize operation completed with no errors. Before deleting the old disk, carefully check that the resized disk boots and works correctly.*注意上面标红的那句.在删除老文件前,请确认虚拟机可以正常启动和工作。*注意/dev/vda2是vg_lvm的物理卷,也就是你需要扩容的虚拟机root分区所在的物理卷.如
26、图: 这个命令执行完后,将会使vg_lvm卷增大20G,root分区也会增加近10G.以下是检查部分,启动虚拟机.guest# vgs VG #PV #LV #SN Attr VSize VFree vg_lvm 1 3 0 wz-n- 19.90g 0 guest# lvs LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert data vg_lvm -wi-ao- 2.04g root vg_lvm -wi-ao- 15.86g swap vg_lvm -wi-ao- 2.00g 我们再来看看这台虚拟机磁盘镜像是多大吧.host
27、# qemu-img info /dev/vg_lvm/web01-lvmimage: /dev/vg_lvm/web01-lvmfile format: rawvirtual size: 20G (21474836480 bytes)disk size: 0OK,此部分实验目标达成,已经成功为虚拟机root分区追加10G的空间.现在我们可以使用lvremove删除掉原来老的镜像了.host# lvremove /dev/vg_lvm/web01-lvm-OLD Do you really want to remove active logical volume web01-lvm-OLD?
28、y/n: y Logical volume "web01-lvm-OLD" successfully removedhost# lvs LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert os_img vg_lvm -wi-ao- 147.66g web01-lvm vg_lvm -wi-ao- 20.00g web01_lvm_disk1 vg_lvm -wi-ao- 10.00g web01_lvm_disk2 vg_lvm -wi-ao- 10.00g 现在我们想一下,如果我要扩充的分区,占据了两个物理卷
29、,那么这个expand如何指定?继续下面的实验.案验5,lvm分区中data分区占据两个pv,如何扩充此分区实验环境:宿主机使用的是lvm存储,guest使用lvm分区 data分区应该分布在vda和vdb之间,一开始按照实验4操作,发现此路不通,与是乎突然想到guest不是用lvm吗?那我何不扩充vg的空间,再将vg的省余空间填充给我们要扩充的逻辑分区呢?根据我的实验环境,简单讲下操作流程:(1) 如果宿主没有空间,我们添加一块物理磁盘,转换在pv,命令fdisk,pvcreate(2) 在宿主主机上添加一块10G逻辑卷lv,命令lvcreate(3) 将此逻辑卷挂载到guest主机上,再p
30、v 添加磁盘 virsh attach-disk -domain web02-lvm -source /dev/vg_lvm/web01_lvm_disk2 -target vdb persistent删除磁盘virsh detach-disk -domain web02-lvm -target vdb persistent注意此命令可以支持在线添加/删除(如果没有persistent参数,后期关机,再开机还会再有)可以通过domblklist 查看guest主机的块设备rootlvm # virsh domblklist web02-lvmTarget Source-vda /de
31、v/vg_lvm/web01_lvm_disk1vdb /dev/vg_lvm/web01_lvm_disk2(4) 将pv的物理卷添加到卷组(如果你想将某一物理卷从卷组中移除,你可以考略使用pvmove命令将数据移走,此物理卷便可移除了,这是pv迁移技术,请看实验6),命令vgextend(5) 这时我们的vg的size就增大了,这时我们再用lvresize扩充data分区喽,命令lvresize(6) 再通过resize2fs命令,便可以增加data分区了。呵呵,如果guest使用的不是lvm技术,那么我们只能使用virt-resize来扩充分区空间了,这个我也会再写篇实验来说明.最终结果
32、(与上图比较,我的data分区增加了10G):guest# df -hFilesystem Size Used Avail Use% Mounted on/dev/mapper/vg_lvm-root 4.9G 1.8G 2.9G 38% /tmpfs 499M 0 499M 0% /dev/shm/dev/vda1 97M 28M 65M 30% /boot/dev/mapper/vg_lvm-data 23G 164M 22G 1% /data 其实,我们实验4也可以采用实验5的技术来做的,发现了没?实验6.虚拟机快照及PV数据迁移实验环境:宿主机使用的是lvm存储,guest使用lvm分
33、区今天我们要做的实验是虚拟机快照,这里的虚拟机快照采用的是LVM的快照技术. 闲话不多说,开始实验: 先看下主机逻辑卷信息(我们的guest使用的就是主机的逻辑卷) host# lvs LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert os_img vg_lvm -wi-ao- 147.66g web01-lvm vg_lvm -wi-ao- 20.00g web01_lvm_disk1 vg_lvm -wi-a- 10.00g web01_lvm_disk2 vg_lvm -wi-a- 10.00g web01_lvm_dis
34、k3 vg_lvm -wi-a- 30.00g 标红的卷就是guest web01-lvm的镜像文件,我们现在要对此逻辑卷做一个卷快照,后期我们将对web01-lvm做安装一个telnet软件的操作,后期将用此快照做恢复操作.host# virsh shutdown web01-lvmDomain web01-lvm is being shutdownhost# lvcreate -s -n web01-lvm-snap -L 4G /dev/vg_lvm/web01-lvm Logical volume "web01-lvm-snap" createdhost# lvdi
35、splay - Logical volume - LV Path /dev/vg_lvm/web01-lvm LV Name web01-lvm VG Name vg_lvm LV UUID MVF7pH-SLBs-4dGH-ftAt-XWr3-JK5R-GCyB6t LV Write Access read/write LV Creation host, time , 2011-11-14 22:11:40 +0800 LV snapshot status source of web01-lvm-snap active LV Status available # open 1 LV Size
36、 20.00 GiB Current LE 5120 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:4 - Logical volume - LV Path /dev/vg_lvm/web01-lvm-snap LV Name web01-lvm-snap VG Name vg_lvm LV UUID nO8s7l-utBH-gdS2-zBOe-MTpS-SoHP-fRILYu LV Write Access read/write LV Creation
37、 host, time , 2011-11-16 00:49:09 +0800 LV snapshot status active destination for web01-lvm LV Status available # open 0 LV Size 20.00 GiB Current LE 5120 COW-table size 4.00 GiB COW-table LE 1024 Allocated to snapshot 0.00% Snapshot chunk size 4.00 KiB Segments 1 Allocation inherit Read ahead secto
38、rs auto - currently set to 256 Block device 253:1我们到guest上装个telnet软件host# virsh start web01-lvmDomain web01-lvm startedguest# yum -y install telnetguest# telnet 80Trying 115.239.210.26.Connected to .Escape character is ''. 关闭虚拟机/恢复测试host# virsh shutdown web01-lvmDomain web01-lvm is being shu
39、tdownhost# lvconvert -merge /dev/vg_lvm/web01-lvm-snap Merging of volume web01-lvm-snap started. web01-lvm: Merged: 1.1% web01-lvm: Merged: 0.0% Merge of snapshot into logical volume web01-lvm has finished. Logical volume "web01-lvm-snap" successfully removed从以上可以看出恢复成功且逻辑卷快照web01-lvm-snap
40、成功删除了开启虚拟机检查host# virsh start web01-lvmDomain web01-lvm startedguest# telnet-bash: telnet: command not found注意:创建快照不需要关闭guest,快照恢复需要关闭guest.切记,切记PV迁移因种种原因我们可能需要将某一个物理卷移除,那么我们应该怎么做呢?假设我们的磁盘分区如下图: 现在我们想把vdb磁盘移除,前提是此物理卷必须是在没有数据的情况下,从上图分区可以看出,vdb是有数据的,我们应该手动添加一块物理磁盘,将存放vdb的数据,以便可以移除vdb,切记,添加的磁盘一定要大与vdb。
41、使用lvm的逻辑卷作为guest的物理磁盘lvcreate -L 30G -n web01_lvm_disk3 vg_lvm将/dev/vg_lvm/web01_lvm_disk3作为磁盘附加到web02-lvm虚拟机上.登录guest查看vdc磁盘guest# fdisk /dev/vdc -l Disk /dev/vdc: 32.2 GB, 32212254720 bytes16 heads, 63 sectors/track, 62415 cylindersUnits = cylinders of 1008 * 512 = 516096 bytesSector size (logical
42、/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisk identifier: 0x00000000fdisk分区Disk /dev/vdc: 32.2 GB, 32212254720 bytes16 heads, 63 sectors/track, 62415 cylindersUnits = cylinders of 1008 * 512 = 516096 bytesSector size (logical/physical): 512 bytes / 512 bytesI
43、/O size (minimum/optimal): 512 bytes / 512 bytesDisk identifier: 0x743d0bf6 Device Boot Start End Blocks Id System/dev/vdc1 1 62415 31457128+ 8e Linux LVMCommand (m for help): w创建pvguest# pvcreate /dev/vdc1 Writing physical volume data to disk "/dev/vdc1" Physical volume "/dev/vdc1&qu
44、ot; successfully created添加此pv到vg_lvm卷组中guest# vgextend vg_lvm /dev/vdc1 Volume group "vg_lvm" successfully extended查看pv信息guest# pvdisplay - Physical volume - PV Name /dev/vda2 VG Name vg_lvm PV Size 9.90 GiB / not usable 3.00 MiB Allocatable yes (but full) PE Size 4.00 MiB Total PE 2534 Free PE 0 Allocated PE 2534 PV UUID faSIYE-go99-gsQl-CvTG-uOPJ-KzCs-jCByv0 - Physical volume - PV Name /dev/vdb1 VG Name vg_lvm PV Size 10.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 上海视觉艺术学院《事业启航》2023-2024学年第一学期期末试卷
- 泰山科技学院《市场营销学B》2023-2024学年第二学期期末试卷
- 天津市宝坻区普通高中2025届高三下期末质量调研(一模)英语试题含解析
- 辽宁省沈阳市四校协作体2025年高三5月阶段性教学质量检测试题语文试题理含解析
- 2021-2022学年甘肃省白银市高二上学期期末语文试题
- 江西省南昌市重点高中2025年高三第二次月考试卷含解析
- 那曲地区聂荣县2024-2025学年六年级下学期小升初数学试卷含解析
- 喀什理工职业技术学院《桥梁施工技术A》2023-2024学年第一学期期末试卷
- 2025年网络营销师职业资格考试试卷及答案
- 2025年医疗卫生执业考试试卷及答案
- 财务指标分析试题及答案
- 2025至2030中国鸭脖子市场营销策略与发展前景趋势研究报告
- 山东省德州市陵城区2024-2025学年下学期期中考试七年级数学试题(含答案)
- 乡村振兴面试题及答案
- 2025广东高考:历史必考知识点总结
- 剪辑考试试题及答案
- 火锅店服务员接待流程解析
- 2025年上半年福建福州广播电视台招聘重点基础提升(共500题)附带答案详解
- 高中政治经济主观题材料对应术语总结
- 2025年金融数学考试试题及答案
- 2024年安徽省公务员【申论】考试真题及答案-(A卷+B卷+C卷)三套
评论
0/150
提交评论