AIX系统移动lv.docx

上传人:b****3 文档编号:5876874 上传时间:2023-05-09 格式:DOCX 页数:15 大小:20.20KB
下载 相关 举报
AIX系统移动lv.docx_第1页
第1页 / 共15页
AIX系统移动lv.docx_第2页
第2页 / 共15页
AIX系统移动lv.docx_第3页
第3页 / 共15页
AIX系统移动lv.docx_第4页
第4页 / 共15页
AIX系统移动lv.docx_第5页
第5页 / 共15页
AIX系统移动lv.docx_第6页
第6页 / 共15页
AIX系统移动lv.docx_第7页
第7页 / 共15页
AIX系统移动lv.docx_第8页
第8页 / 共15页
AIX系统移动lv.docx_第9页
第9页 / 共15页
AIX系统移动lv.docx_第10页
第10页 / 共15页
AIX系统移动lv.docx_第11页
第11页 / 共15页
AIX系统移动lv.docx_第12页
第12页 / 共15页
AIX系统移动lv.docx_第13页
第13页 / 共15页
AIX系统移动lv.docx_第14页
第14页 / 共15页
AIX系统移动lv.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

AIX系统移动lv.docx

《AIX系统移动lv.docx》由会员分享,可在线阅读,更多相关《AIX系统移动lv.docx(15页珍藏版)》请在冰点文库上搜索。

AIX系统移动lv.docx

AIX系统移动lv

AIX系统移动lv

移动磁盘数据

磁盘维护

DavidTansley,系统管理员,AceEurope

简介:

磁盘上的数据维护是任何系统管理员的常见任务。

根据我的经验,数据移动就是一项频繁执行的任务。

数据移动可能由您磁盘上的热点所导致,一种快速修复方法是将一些逻辑卷转移到另一个磁盘上,以缓解阻塞。

在这种情况下,migratelp命令是您最值得信赖的朋友。

当遇到有故障的磁盘或者需要将数据从一个磁盘迁移到另一个磁盘时,可以使用migratepv令或创建一个镜像副本,并且您不会受限于一种方法。

对于原始卷组(VG),在向VG添加一个磁盘时,您可能遇到因数(factoring)问题。

但是,通过理解VG的特征,可以更改因数。

在本文中,我们将用一些示例讨论这些常见的磁盘维护任务。

在谈到磁盘维护时,熟悉磁盘相关属性的一些常见缩略语很有好处,因为它可让谈话变得更简练。

•    VG:

卷组

•    LV:

逻辑卷

•    LP:

逻辑分区

•    PP:

物理分区

•    PV:

物理卷(磁盘)

许多时候,您刚到达办公室,就会听到所有用户和支持人员开始抱怨系统运行缓慢。

常规的快速检查包括:

•    处理器限制

•    内存限制

•    磁盘访问

•    网络

•    进程侵扰

执行一些性能测试后您可能得出结论,是磁盘访问、数据在磁盘上的分散性导致了访问阻塞。

没有人喜欢这样。

所以,让我们假设您已通过分析来自filemon、topas、nmon或lvmstat等工具的输出,识别了磁盘上的热点。

您需要将该数据移动到另一个磁盘,以缓解阻塞。

另一个磁盘可能是一个新磁盘,更有可能是VG中一个未装满数据的现有磁盘。

让我们通过两个场景,看看如何将数据从一个磁盘移动到另一个。

但是,在此之前,最好了解一些命令,这样在查看LV和PV时就会很方便。

最重要的磁盘相关命令

以下是我认为您在执行数据迁移任务之前获取正确的信息,所需要知道的所有命令。

从一个PV获取信息

所关注磁盘的大小(以MB为单位)始终是需要知道的信息。

假设磁盘名为hdisk4,使用getconf命令查找大小:

#getconfDISK_SIZE/dev/hdisk4

9216

使用lspv命令提取磁盘信息。

lspv-l :

上面的命令列出LV和LP,以及PP和文件系统的挂载点(如果适用)。

lspv-m :

上面的命令列出PV、PP编号、LV和LP编号。

从一个VG获取信息

使用lsvg命令获取一个(或多个)PV所在的VG的布局。

lsvg :

  

上面的命令列出了有关VG属性的一般信息,主要是PP大小、总空间、空闲空间和已用空间。

lsvg-l :

上面的命令列出了文件系统的类型、LP和PV,以及LV状态(打开还是关闭)和文件系统挂载点(如果适用)。

lsvg-p :

  

上面的命令列出了属于该VG的PV,以及总PP空间和空闲PP空间。

从LV获取信息

可使用lslv命令获取有关LV的信息。

lslv-l :

上面的命令列出了LV所在的PV。

lslv-m :

上面的命令列出了LP、分区编号和PV,这些信息适用于LV所在的所有PV。

上述命令的输出为您提供了充分的信息来确定是否适合使用以下迁移技术执行数据迁移:

•    migratelp

•    migratepv

•    磁盘镜像

在此演示中,我创建了小型文件系统,即小型LV,因为我需要让输出尽可能的少。

在现实中,正常应用程序的LV会很大。

因此,LV的LP清单会很长。

一个技巧是打印出LV清单,然后使用一个标记笔确定要移动的LP。

使用migratelp命令移动数据

如果需要移动LP,也就是要将LV的一个部分从一个磁盘移动到另一个磁盘,那么可以使用migratelp。

您可指定一个或多个LV分段中您希望移动到另一个磁盘的部分。

LV监视工具lvmstat的输出与您需要用于migratelp命令的输入格式很相似,这并不是巧合。

对于本演示,migratelp命令的格式为:

migratelp 

可能您希望移动的LV已建立镜像。

这没有问题,只需选择您希望移动的副本即可。

假设我们拥有以下磁盘:

#lspv

hdisk1      00c23bed42b3afff          None

hdisk2      00525c6a888e32cd          vg00        active

hdisk3      00c23bed32883598            None

hdisk0      00c23bed42b3aefe          rootvg      active

我们认为LVfslv00的负担过重,这些负担可能源于磁盘读写。

我们决定将另一个磁盘(也就是VGvg00)放入该LV中,将LVfslv00的一部分迁移到新磁盘中,以缓解阻塞。

首先,让我们看看磁盘hdisk2,fslv00目前位于其中:

#lspv-lhdisk2

hdisk2:

LVNAME          LPs    PPs    DISTRIBUTION      MOUNTPOINT

fslv00          4    4    00..04..00..00..00  /devhold

loglv00          1    1    00..01..00..00..00  N/A

fslv01          4    4    00..04..00..00..00  /apps

现在,让我们看看实际的VG,vg00。

#  lsvg-lvg00

vg00:

LVNAME      TYPE    LPs    PPs    PVs  LVSTATE    MOUNTPOINT

loglv00      jfs2log  1    1    1  open/syncd  N/A

fslv00      jfs2    4    4    1  open/syncd  /devhold

fslv01      jfs2    4    4    1  open/syncd  /apps

我们现在可以看到,该LVfslv00位于一个磁盘上。

现在将另一个磁盘hdisk3添加到VG上:

#extendvgvg00hdisk3

确认该磁盘已添加,我们知道已经添加了该磁盘,因为我们在扩展VG时未遇到任何错误:

#lsvg-pvg00

vg00:

PV_NAME    PVSTATE  TOTALPPs  FREEPPs  FREEDISTRIBUTION

hdisk2      active      542      533    09..99..108..108..109

hdisk3      active      2187    2187  438..437..437..437..438

现在,让我们看看我们的LV布局。

同样的,我们可以看到所有LP都在位于hdisk2上的LVfslv00之上:

#  lslv-mfslv00

fslv00:

/devhold

LP  PP1  PV1          PP2  PV2          PP3  PV3

0001  0111hdisk2

0002  0112hdisk2

0003  0113hdisk2

0004  0114hdisk2

现在将前两个LP(即0001和0002)从fslv00移动到新磁盘hdisk3。

#migratelpfslv00/1hdisk3

migratelp:

Mirrorcopy1oflogicalpartition1oflogicalvolume

      fslv00migratedtophysicalpartition439ofhdisk3.

#migratelpfslv00/2hdisk3

migratelp:

Mirrorcopy1oflogicalpartition2oflogicalvolume

      fslv00migratedtophysicalpartition440ofhdisk3.

上述两个migratelp命令的运行很正常。

现在通过再次查询fslv00确认这些LP已在新磁盘上:

#lslv-mfslv00

fslv00:

/devhold

LP  PP1  PV1          PP2  PV2          PP3  PV3

0001  0439hdisk3

0002  0440hdisk3

0003  0113hdisk2

0004  0114hdisk2

和预期一样,该LV现在已分散在两个磁盘上:

hdisk2和hdisk3。

可以通过列出两个hdisk的内容来进一步确认这一点,如下所示:

#lspv-lhdisk3

hdisk3:

LVNAME          LPs    PPs    DISTRIBUTION      MOUNTPOINT

fslv00          2    2    00..02..00..00..00  /devhold

#lspv-lhdisk2

hdisk2:

LVNAME          LPs    PPs    DISTRIBUTION      MOUNTPOINT

fslv00          2    2    00..02..00..00..00  /devhold

loglv00          1    1    00..01..00..00..00  N/A

fslv01          4    4    00..04..00..00..00  /apps

如果您在某一刻觉得迁移没有意义,不用担心,只需将它们迁移回来即可,如下所示:

#migratelpfslv00/1hdisk2

migratelp:

Mirrorcopy1oflogicalpartition1oflogicalvolume

      fslv00migratedtophysicalpartition111ofhdisk2.

#migratelpfslv00/2hdisk2

migratelp:

Mirrorcopy1oflogicalpartition2oflogicalvolume

      fslv00migratedtophysicalpartition112ofhdisk2.

现在,如果我们查询hdisk3,就会发现hdisk3上的部分中应该没有LV:

#lspv-lhdisk3

没有返回输出,这表明该磁盘上没有数据。

然而,对于hdisk2,fslv00的布局现在已完全还原到之前的状态:

#lspv-lhdisk2

hdisk2:

LVNAME          LPs    PPs    DISTRIBUTION      MOUNTPOINT

fslv00          4    4    00..04..00..00..00  /devhold

loglv00          1    1    00..01..00..00..00  N/A

fslv01          4    4    00..04..00..00..00  /apps

如果需要进一步确认,只需查询LV即可:

#lslv-mfslv00

fslv00:

/devhold

LP  PP1  PV1          PP2  PV2          PP3  PV3

0001  0111hdisk2

0002  0112hdisk2

0003  0113hdisk2

0004  0114hdisk2

镜像迁移

可通过许多方法移动数据。

前面我们查看了migratelp命令。

现在让我们看看磁盘镜像。

在此演示中,想象我们有一个故障磁盘,需要将数据转移到新磁盘。

我们装入了另一个磁盘,然后将LV镜像复制到新磁盘。

完成镜像复制之后,将会删除原始副本。

然后从VG中删除故障磁盘。

我们假设已将一个磁盘装入VGvg00中。

下一个任务是在新磁盘中创建这些VG的副本。

首先,让我们检查一下VGvg00的布局:

#  lsvg-lvg00

vg00:

LVNAME      TYPE    LPs    PPs    PVs  LVSTATE    MOUNTPOINT

loglv00      jfs2log  1    1    1  open/syncd  N/A

fslv00      jfs2    4    4    1  open/syncd  /devhold

fslv01      jfs2    4    4    1  open/syncd  /apps

假设新磁盘hdisk3已添加到VGvg00中。

接下来,在新添加的磁盘上创建所有LV的副本。

在本演示中,mklvcopy命令的格式为:

mklvcopy 

其中copy_number为2,即LV的第二个(副本),destination_PV(在本演示中)为hdisk3。

#mklvcopyfslv002hdisk3

#mklvcopyfslv012hdisk3

#mklvcopyloglv002hdisk3

现在我们在新磁盘上已经有了LV的副本。

接下来,我们需要使用syncvg命令同步/镜像LV:

#syncvg-lfslv00

#syncvg-lfslv01

#syncvg-lloglv00

我们现在已完成到新磁盘hdisk3的镜像。

这可以通过列出VG中的LV来确认。

请注意,PP列是每个LV的LP的两倍。

这意味着这些LV已完成镜像:

#  lsvg-lvg00

vg00:

LVNAME      TYPE    LPs    PPs    PVs  LVSTATE    MOUNTPOINT

loglv00      jfs2log  1    2    2  open/syncd  N/A

fslv00      jfs2    4    8    2  open/syncd  /devhold

fslv01      jfs2    4    8    2  open/syncd  /apps

现在我们的数据已放在一个好的磁盘上,可以删除原始副本,即故障磁盘hdisk2上的LV。

在本演示中,rmlvcopy命令的格式为:

rmlvcopy 

其中,在LV第一次出现时或者在您更喜欢原始LV的时候,copy_number将为1,在本演示中PV_to_remove_copy为hdisk2

现在将这些LV副本从故障磁盘hdisk2中删除:

#rmlvcopyfslv001hdisk2

#rmlvcopyfslv011hdisk2

#rmlvcopyloglv001hdisk2

来自hisk2的所有副本现在已删除。

hdisk2不应再有任何数据,这可以通过查看VG来确认。

在以下输出中,请注意,对于hdisk2,TOTALPP和FREEPP值是相同的,这意味着该磁盘是空的:

#lsvg-pvg00

vg00:

PV_NAME  PVSTATE  TOTALPPs  FREEPPs  FREEDISTRIBUTION

hdisk2    active      542      542    109..108..108..108..109

hdisk3    active      2187      2178  438..428..437..437..438

可以通过列出两个磁盘进一步确认这一点。

hdisk2应该没有数据,但hdisk3上应有LV。

#lspv-lhdisk2

没有返回任何输出,这表明该磁盘上没有数据。

#lspv-lhdisk3

hdisk3:

LVNAME          LPs    PPs    DISTRIBUTION      MOUNTPOINT

fslv00          4    4    00..04..00..00..00  /devhold

loglv00          1    1    00..01..00..00..00  N/A

fslv01          4    4    00..04..00..00..00  /apps

现在,剩下的任务是从VG删除故障磁盘hdisk2:

#reducevgvg00hdisk2

要确认VG现在仅包含好的hdisk3磁盘,请执行以下命令:

#lsvg-pvg00

vg00:

PV_NAME  PVSTATE  TOTALPPs  FREEPPs  FREEDISTRIBUTION

hdisk3    active      2187      2178    438..428..437..437..438

数据已成功从一个故障磁盘移动到VGvg00中的一个新磁盘。

在某一时刻,故障磁盘与VG是没有关联的,应该在此时物理更换它。

使用migratepv命令复制LV中的数据

当有一个内容非常稠密的磁盘包含许多要迁移的LV时,有时使用migratepv命令复制数据很有效。

您还可以使用此命令复制单独的LV。

假设我们需要将数据从hdisk2迁移到hdisk3。

目标磁盘的大小可能比来源磁盘更小,只要所有LV都能装入目标磁盘。

在本演示中,migratepv命令的格式为:

migratepv  

migratepv-l   

其中 是您希望迁移的LV的名称。

在VGvg00的以下输出中,可以注意到hdisk3是空的。

这可以通过查看TOTALPP和FREEPP值来确认,这两个值是相同的。

这意味着该磁盘上没有数据。

#lsvg-pvg00

vg00:

PV_NAME    PVSTATE  TOTALPPs  FREEPPs  FREEDISTRIBUTION

hdisk2      active    542    532    109..98..108..108..109

hdisk3      active    2187    2187    438..437..437..437..438

要进一步确认所有LV都在hdisk2上,可对每个LV运行lslv命令:

#lslv-mfslv00

fslv00:

/apps

LP  PP1  PV1          PP2  PV2          PP3  PV3

0001  0111hdisk2

0002  0112hdisk2

0003  0113hdisk2

0004  0114hdisk2

0005  0115hdisk2

#lslv-mfslv01

fslv01:

/devhold

LP  PP1  PV1          PP2  PV2          PP3  PV3

0001  0116hdisk2

0002  0117hdisk2

0003  0118hdisk2

0004  0119hdisk2

#lslv-mloglv00

loglv00:

N/A

LP  PP1  PV1          PP2  PV2          PP3  PV3

0001  0110hdisk2

现在,让我们使用以下migratepv命令将LVfslv00从hdisk2迁移到hdisk3:

#migratepv-lfslv00hdisk2hdisk3

通过查看LV,我们可以确定LVfslv00现在位于hdisk3上:

#lslv-mfslv00

fslv00:

/apps

LP  PP1  PV1          PP2  PV2          PP3  PV3

0001  0439hdisk3

0002  0440hdisk3

0003  0441hdisk3

0004  0442hdisk3

0005  0443hdisk3

假设您现在需要将其他所有LV(也就是来自hdisk2的所有数据)复制到hdisk3上,可运行以下命令:

#migratepvhdisk2hdisk3

成功完成migratepv命令后,hdisk2上将没有任何数据,所有数据现在都位于hdisk3上:

#lspv-lhdisk2

上面的命令不会返回任何输出,这表明该磁盘上没有任何数据。

#lspv-lhdisk3

hdisk3:

LVNAME          LPs    PPs    DISTRIBUTION      MOUNTPO

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2