迁移LVM分区到新的逻辑卷/驱动器(第六部分)

迁移LVM分区到新的逻辑卷/驱动器(第六部分)

这是我们正在进行的LVM系列的第六部分。在本文中,我们将为大家展示怎样在线将现存的逻辑卷迁移到其它新的驱动器。在开始之前,我想要先来介绍一下LVM迁移及其特性。

LVM存储迁移

什么是LVM迁移?

LVM迁移是LVM众多优秀特性之一,通过它,我们可以迁移逻辑卷到一个新的磁盘而不会丢失数据,也不用关机操作。该特性的功能是将数据从旧磁盘移动到新磁盘。通常,我们只是在一些磁盘发生错误时,才将数据从一个磁盘迁移到另外一个磁盘存储。

迁移特性

  • 将逻辑卷从一个磁盘移动到另一个磁盘。
  • 我们可以使用任何类型的磁盘,如SATA、SSD、SAS、SAN storage iSCSI或者FC。
  • 在线迁移磁盘,而且数据不会丢失。

在LVM迁移中,我们将交换各个卷、文件系统以及位于已有的存储中的数据。例如,如果我们有一个单一逻辑卷,它已经映射到了物理卷,而该物理卷是一个物理硬盘驱动器。

现在,如果我们需要升级服务器存储为SSD硬盘驱动器,我们首先需要考虑什么?重新格式化磁盘?不!我们不必重新格式化服务器,LVM可以选择将这些旧的SATA驱动器上的数据迁移到新的SSD驱动器上。在线迁移将会支持任何类型的磁盘,不管是本地驱动器,还是SAN或者光纤通道都可以。

我的服务器设置


  1. 操作系统: CentOS 6.5 Final
  2. IP地址: 192.168.0.224
  3. 系统主机名: lvmmig.tecmintlocal.com

步骤1: 检查当前驱动器

1.假设我们已经有一个名为“vdb”的虚拟驱动器,它已经被映射到了其中一个逻辑卷“tecmint_lv”。现在,我们想要迁移“vdb”这个逻辑卷到其它某个新的存储设备中。在开始之前,首先在下面所示的fdisk和lvs命令的帮助下验证该虚拟驱动器。


  1. # fdisk -l | grep vd
  2. # lvs

检查逻辑卷磁盘

步骤2: 检查新添加的驱动器

2.在我们确认了现存驱动器后,现在是时候来将新的SSD驱动器连接到系统并在fdisk命令的帮助下验证新添加的驱动器了。


  1. # fdisk -l | grep dev

检查新添加的驱动器

注意:你看到上面屏幕中的内容了吗?新的驱动器已经被成功添加了,其名称为“/dev/sda”。

步骤3: 检查当前逻辑和物理卷

3.现在,让我们开始创建物理卷、卷组和逻辑卷以用于迁移。在创建卷时,确保检查/mnt/lvm挂载点下的当前逻辑卷的数据。用以下命令来列出挂载点并检查数据。


  1. # df -h
  2. # cd /mnt/lvm
  3. # cat tecmint.txt

检查逻辑卷数据

注意:出于演示的目的,我们已经在/mnt/lvm挂载点下创建了两个文件,我们将在线将这些数据迁移到新的驱动器中。

4.在迁移之前,确保对确认与物理卷相关的逻辑卷和卷组名称,并且确认哪个物理卷用于容纳该卷组和逻辑卷。


  1. # lvs
  2. # vgs -o+devices | grep tecmint_vg

确认逻辑卷名称

注意:看到上面屏幕中的内容了吗?“vdb”容纳了卷组tecmint_vg。

步骤4: 创建新物理卷

5.在在我们新添加的SSD驱动器中创建物理卷之前,我们需要使用fdisk来定义分区。在创建分区时,别忘了修改分区类型为LVM(8e)。


  1. # pvcreate /dev/sda1 -v
  2. # pvs

创建物理卷

6.接下来,使用‘vgextend命令’来添加新创建的物理卷到现存卷组tecmint_vg。


  1. # vgextend tecmint_vg /dev/sda1
  2. # vgs

添加物理卷

7.要获得卷组的完整信息列表,请使用‘vgdisplay’命令。


  1. # vgdisplay tecmint_vg -v

列出卷组信息

注意:在上面屏幕中,我们可以看到在输出结果的结束处,我们的PV已经添加到了卷组中。

8.如果我们需要知道更多关于哪些设备被映射的信息,请使用‘dmsetup’依赖命令。


  1. # lvs -o+devices
  2. # dmsetup deps /dev/tecmint_vg/tecmint_lv

在上面的结果中,有个1个依赖(PV)或(驱动器),而这里17被列出了。如果你想要检查设备,那些关联的有着主、次设备号的驱动器,以确认,使用下面的命令。


  1. # ls -l /dev | grep vd

列出设备信息

注意:在上面的命令中,我们可以看到主设备号是252,次设备号是17,它连接到了vdb1。希望你理解了上面命令的输出。

步骤5: LVM镜像法

9.现在,该使用镜像法来进行迁移了。使用‘lvconvert’命令来将数据从旧逻辑卷迁移到新驱动器。


  1. # lvconvert -m 1 /dev/tecmint_vg/tecmint_lv /dev/sda1
  • -m = 镜像
  • 1 = 添加单个镜像

镜像法迁移

注意:上面的迁移过程根据卷的大小会花费一段时间。

10.在迁移过程完成后,验证转换的镜像。


  1. # lvs -o+devices

验证转换的镜像

11.当你确认转换的镜像没有任何问题后,你可以移除旧的虚拟磁盘vdb1。-m选项将移除镜像,先前我们使用l来添加镜像。


  1. # lvconvert -m 0 /dev/tecmint_vg/tecmint_lv /dev/vdb1

移除虚拟磁盘

12.在旧虚拟磁盘移除后,你可以使用以下命令来再次检查逻辑卷设备。


  1. # lvs -o+devices
  2. # dmsetup deps /dev/tecmint_vg/tecmint_lv
  3. # ls -l /dev | grep sd

检查新镜像的设备

在上面的图片中,你看到了吗?我们的逻辑卷现在依赖于8,1,名称为sda1。这说明我们的迁移过程已经完成了。

13.现在验证我们从旧驱动器上迁移过来的文件。如果在新驱动器中的数据与原数据一样,那就说明我们每一步都完成得很完美。


  1. # cd /mnt/lvm/
  2. # cat tecmin.txt

检查镜像的数据


  1. # vgreduce /dev/tecmint_vg /dev/vdb1
  2. # vgs -o+devices

14.在所有的都被完美创建后,现在该从卷组中删除vdb1并进行再次确认,哪些设备依赖于我们的卷组。

15.在从卷组tecmint_vg移除vdb1后,我们的逻辑卷还在那儿,因为我们已经将它从vdb1迁移到了sda1。


  1. # lvs

删除虚拟磁盘

步骤6: LVM pvmove镜像法

16.我们可以使用带有‘-n’(逻辑卷名称)选项的‘pvmove’命令来取代‘lvconvert’镜像命令,在两个设备间进行数据镜像。


  1. # pvmove -n /dev/tecmint_vg/tecmint_lv /dev/vdb1 /dev/sda1

该命令是在两个设备间镜像数据的最简单的一个,但是在真实环境中,镜像比pvmove使用得更为频繁。

结尾

在本文中,我们介绍了怎样将逻辑卷从一个驱动器迁移到另一个驱动器。希望你已经掌握了逻辑卷管理中这一新的技巧。对于该配置,必须建立在掌握逻辑卷管理基础技能的基础上。对于基础配置,请参阅本文顶部需求章节中提供的链接。

原文发布时间:2014-12-19

本文来自云栖合作伙伴“linux中国”

时间: 2024-08-18 07:34:17

迁移LVM分区到新的逻辑卷/驱动器(第六部分)的相关文章

LVM,如何指定或修改逻辑卷的major, minor号

在创建逻辑卷时,可以指定逻辑卷的major和minor设备号. [-M|--persistent {y|n}] [--major major] [--minor minor] -M, --persistent {y|n} Set to y to make the minor number specified persistent. --minor minor Sets the minor number. -M必须和--major一起使用 例子 lvcreate -l 50%VG -n lv01

Linux如何创建使用逻辑卷管理LVM

      LVM是逻辑卷管理,是Linux下对磁盘分区管理的一种机制,相信不少人想要知道Linux如何创建LVM和LVM的使用方法,因此小编将针对LVM的创建和使用做个详细介绍,一起来学习下吧. LVM讲解: 图像大纲: 1)LVM是什么,作用: LVM称为逻辑卷管理,作用是提高磁盘分区的管理和使用灵活性. 通过逻辑卷LVM可以有效的管理和分配磁盘空间,可以把分散的小分区组合成一个大的卷组,从卷组中分出需要的空间做出逻辑卷,这样使得磁盘扩容和缩减方便易用.还有着备份的功能,指的就是lvm快照.

如何在 Ubuntu 中管理和使用逻辑卷管理 LVM

在我们之前的文章中,我们介绍了什么是 LVM 以及能用 LVM 做什么,今天我们会给你介绍一些 LVM 的主要管理工具,使得你在设置和扩展安装时更游刃有余. 正如之前所述,LVM 是介于你的操作系统和物理硬盘驱动器之间的抽象层.这意味着你的物理硬盘驱动器和分区不再依赖于他们所在的硬盘驱动和分区.而是你的操作系统所见的硬盘驱动和分区可以是由任意数目的独立硬盘汇集而成的或是一个软件磁盘阵列. 要管理 LVM,这里有很多可用的 GUI 工具,但要真正理解 LVM 配置发生的事情,最好要知道一些命令行工

Linux磁盘管理:LVM逻辑卷管理

Linux磁盘管理:LVM逻辑卷管理 原文地址:http://www.cnblogs.com/xiaoluo501395377/archive/2013/05/22/3093405.html Linux学习之CentOS(二十五)--Linux磁盘管理:LVM逻辑卷基本概念及LVM的工作原理 这篇随笔将详细讲解Linux磁盘管理机制中的LVM逻辑卷的基本概念以及LVM的工作原理!!! 一.传统的磁盘管理 其实在Linux操作系统中,我们的磁盘管理机制和windows上的差不多,绝大多数都是使用M

【AIX 命令学习】创建逻辑卷!

用途 创建逻辑卷.语法 mklv [ -a Position ] [ -b BadBlocks ] [ -c Copies ] [ -C Stripe_width ] [ -d Schedule ] [ -e Range ] [ -i ] [ -L Label ] [ -m MapFile ] [ -o y / n ] [ -r Relocate ] [ -s Strict ] [ -t Type ] [ -T O ] [ -uUpperBound ] [ -v Verify ] [ -w Mi

在Linux中直接挂载/卸载LVM分区教程

LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制,它由Heinz Mauelshagen在Linux 2.4内核上实现,目前最新版本为:稳定版1.0.5,开发版 1.1.0-rc2,以及LVM2开发版.Linux用户安装Linux操作系统时遇到的一个常见的难以决定的问题就是如何正确地评估各分区大小,以分配合适的硬盘空间.普通的磁盘分区管理方式在逻辑分区划分好之后就无法改变其大小,当一个逻辑分区存放不下某个文件时,这个文件

Linux有问必答:如何在Linux中直接挂载LVM分区

提问: 我有一个USB盘包含了LVM分区. 我想要在Linux中访问这些LVM分区.我该如何在Linux中挂载LVM分区? LVM是逻辑卷管理工具,它允许你使用逻辑卷和卷组的概念来管理磁盘空间.使用LVM相比传统分区最大的好处是弹性地为用户和程序分配空间而不用考虑每个物理磁盘的大小. 在LVM中,那些创建了逻辑分区的物理存储是传统的分区(比如:/dev/sda2,/dev/sdb1).这些分区必须被初始化为"物理卷 PV"并加上卷标(如,"Linux LVM")来使

【AIX 命令学习】删除逻辑卷rmlv 命令!

用途  从卷组中除去逻辑卷. 语法 rmlv [  -B ] [  -f ]  [  -p Physical Volume ]  LogicalVolume ... 描述 注意: 该命令破坏指定逻辑卷上的所有数据. rmlv 命令除去逻辑卷.LogicalVolume 参数可以是一个逻辑卷名称或逻辑卷标识.逻辑卷首先必须处于关闭状态.如果卷组在并发方式上联机,该逻辑卷必须在所有卷组联机的并行节点上处于关闭状态.例如,如果逻辑卷包含一个文件系统,它必须处于未安装状态.然而,除去该逻辑卷将不警告操作

【AIX 命令学习】复制逻辑卷 cplv

用途 将一个逻辑卷的内容复制到一个新的逻辑卷. 语法 复制到一个新的逻辑卷cplv [  -v VolumeGroup ] [  -y NewLogicalVolume |  -Y Prefix ] SourceLogicalVolume cplv -V MYVG -y newlv oldvg 将旧逻辑卷oldlv 的内容拷贝到在名为myvg 卷组中的一个新的逻辑卷newlv,如果不指定卷组,新的与旧的逻辑卷在同一个卷组里面.复制到一个已存在的逻辑卷,cplv 不会把逻辑卷开始的512个字节复制