原创!用migratepv迁移条带逻辑卷

单位买了新存储,系统管理员往往要将数据从旧存储迁移到新存储;如果是离线迁移,那么就简单多了,但实际上很多关键业务环境只能容许在线迁移的!如果逻辑卷是普通逻辑卷那好办,用migratepv就好了;那如果条带逻辑卷呢,一个LV跨多个PV的,红皮书和有些资料不是提到:migratepv可以将LV从一个PV在线迁移到另外一个PV,但这个LV是非条带的,否则会失败的吗?

其实不尽然,在有些版本当中,migratepv可以在线迁移条带化的LV。

以下是我的测试步骤及过程:
测试环境
操作系统:AIX53-10
存储:OPENFILER
主机:P170/DELL D630笔记本


1、创建包含HDISK123的测试卷组
# mkvg -y vg1 hdisk1 hdisk2 hdisk3
vg1
# lspv
hdisk0          0003744f5808d0c8                    rootvg          active
hdisk1          0003744f5ba9e80f                    vg1             active
hdisk2          0003744f5ba9fd07                    vg1             active
hdisk3          0003744f5baa10ae                    vg1             active

2、创建一个条带化的逻辑卷(看到这个LV20100928就知道我这个测试是昨天晚上作的吧,为论坛作贡献你我有责啊)
# mklv -t jfs2 -S 64k -y lv20100928 vg1 5 hdisk1 hdisk2 hdisk3
lv20100928
# lslv -l lv20100928
lv20100928:N/A
PV                COPIES        IN BAND       DISTRIBUTION  
hdisk1            002:000:000   100%          000:002:000:000:000
hdisk2            002:000:000   100%          000:002:000:000:000
hdisk3            002:000:000   100%          000:002:000:000:000

# lsvg -l vg1
vg1:
LV NAME             TYPE       LPs     PPs     PVs  LV STATE      MOUNT POINT
lv20100928          jfs2       6       6       3    closed/syncd  N/A
# lsvg lv20100928
0516-306 : Unable to find volume group lv20100928 in the Device
        Configuration Database.
# lslv lv20100928
LOGICAL VOLUME:     lv20100928             VOLUME GROUP:   vg1
LV IDENTIFIER:      0003744f00004c000000012b5bad394f.1 PERMISSION:     read/write
VG STATE:           active/complete        LV STATE:       closed/syncd
TYPE:               jfs2                   WRITE VERIFY:   off
MAX LPs:            512                    PP SIZE:        4 megabyte(s)
COPIES:             1                      SCHED POLICY:   striped
LPs:                6                      PPs:            6
STALE PPs:          0                      BB POLICY:      relocatable
INTER-POLICY:       maximum                RELOCATABLE:    no
INTRA-POLICY:       middle                 UPPER BOUND:    3
MOUNT POINT:        N/A                    LABEL:          None
MIRROR WRITE CONSISTENCY: on/ACTIVE                              
EACH LP COPY ON A SEPARATE PV ?: yes (superstrict)                     
Serialize IO ?:     NO                                    
STRIPE WIDTH:       3                                      
STRIPE SIZE:        64k                                    

3、在逻辑卷上创建一个文件系统,加载点为/20100928
# crfs -v jfs2 -d /dev/lv20100928 -m /20100928
File system created successfully.
24368 kilobytes total disk space.
New File System size is 49152

# mount /20100928

# df -g
Filesystem    GB blocks      Free %Used    Iused %Iused Mounted on
/dev/hd4           1.00      0.94    7%     5716     3% /
/dev/hd2           2.00      0.35   83%    39131    32% /usr
/dev/hd9var        0.12      0.06   54%     4456    24% /var
/dev/hd3           1.00      0.82   19%      407     1% /tmp
/dev/hd1           0.50      0.50    1%        7     1% /home
/proc                 -         -    -         -     -  /proc
/dev/hd10opt       0.59      0.50   16%     2004     2% /opt
/dev/oralv         9.00      4.58   50%    16974     2% /oracle
/dev/lv20100928      0.02      0.02    2%        4     1% /20100928

4、创建一个文本文件,输入内容
# cd /20100928
# ls
lost+found
# touch aixchina.net
# echo welcome to aixchina.net > aixchina.net
# more aixchina.net
welcome to aixchina.net

5、检查PP分布情况,共7个PP,分布在3个DISK上
# lspv hdisk1
PHYSICAL VOLUME:    hdisk1                   VOLUME GROUP:     vg1
PV IDENTIFIER:      0003744f5ba9e80f VG IDENTIFIER     0003744f00004c000000012b5bad394f
PV STATE:           active                                    
STALE PARTITIONS:   0                        ALLOCATABLE:      yes
PP SIZE:            4 megabyte(s)            LOGICAL VOLUMES:  2
TOTAL PPs:          15 (60 megabytes)        VG DESCRIPTORS:   1
FREE PPs:           12 (48 megabytes)        HOT SPARE:        no
USED PPs:           3 (12 megabytes)         MAX REQUEST:      256 kilobytes
FREE DISTRIBUTION:  03..00..03..03..03                        
USED DISTRIBUTION:  00..03..00..00..00                        

# lspv hdisk2
PHYSICAL VOLUME:    hdisk2                   VOLUME GROUP:     vg1
PV IDENTIFIER:      0003744f5ba9fd07 VG IDENTIFIER     0003744f00004c000000012b5bad394f
PV STATE:           active                                    
STALE PARTITIONS:   0                        ALLOCATABLE:      yes
PP SIZE:            4 megabyte(s)            LOGICAL VOLUMES:  1
TOTAL PPs:          15 (60 megabytes)        VG DESCRIPTORS:   1
FREE PPs:           13 (52 megabytes)        HOT SPARE:        no
USED PPs:           2 (8 megabytes)          MAX REQUEST:      256 kilobytes
FREE DISTRIBUTION:  03..01..03..03..03                        
USED DISTRIBUTION:  00..02..00..00..00                        

# lspv hdisk3
PHYSICAL VOLUME:    hdisk3                   VOLUME GROUP:     vg1
PV IDENTIFIER:      0003744f5baa10ae VG IDENTIFIER     0003744f00004c000000012b5bad394f
PV STATE:           active                                    
STALE PARTITIONS:   0                        ALLOCATABLE:      yes
PP SIZE:            4 megabyte(s)            LOGICAL VOLUMES:  1
TOTAL PPs:          15 (60 megabytes)        VG DESCRIPTORS:   1
FREE PPs:           13 (52 megabytes)        HOT SPARE:        no
USED PPs:           2 (8 megabytes)          MAX REQUEST:      256 kilobytes
FREE DISTRIBUTION:  03..01..03..03..03                        
USED DISTRIBUTION:  00..02..00..00..00      

6、尝试将HDISK1上的部分逻辑卷迁移到HDISK3上,失败;因为目标PV包含该LV的LP
# migratepv -l lv20100928 hdisk1 hdisk3
0516-1244 migratepv: Destination physical volume hdisk3 contains
        partitions of the logical volume lv20100928.
0516-812 migratepv: Warning, migratepv did not completely succeed;
        all physical partitions have not been moved off the PV.
# lspv
hdisk0          0003744f5808d0c8                    rootvg          active
hdisk1          0003744f5ba9e80f                    vg1             active
hdisk2          0003744f5ba9fd07                    vg1             active
hdisk3          0003744f5baa10ae                    vg1             active

7、添加一个PV,加入VG1
# cfgmgr -vl iscsi0
----------------
attempting to configure device 'iscsi0'
Time: 0 LEDS: 0x25b0
invoking /usr/lib/methods/cfgiscsi -l iscsi0
Number of running methods: 1
----------------
Completed method for: iscsi0, Elapsed time = 0
return code = 0
****************** stdout ***********
hdisk4
****************** no stderr ***********
----------------
Time: 0 LEDS: 0x539
Number of running methods: 0
----------------
attempting to configure device 'hdisk4'
Time: 0 LEDS: 0x25f3
invoking /usr/lib/methods/cfgscsidisk -l hdisk4
Number of running methods: 1
----------------
Completed method for: hdisk4, Elapsed time = 0
return code = 0
****************** no stdout ***********
****************** no stderr ***********
----------------
Time: 0 LEDS: 0x539
Number of running methods: 0
----------------
calling savebase
return code = 0
****************** no stdout ***********
****************** no stderr ***********
Configuration time: 0 seconds
# lspv
hdisk0          0003744f5808d0c8                    rootvg          active
hdisk1          0003744f5ba9e80f                    vg1             active
hdisk2          0003744f5ba9fd07                    vg1             active
hdisk3          0003744f5baa10ae                    vg1             active
hdisk4          none                                None            
# chdev -l hdisk4 -a pv=yes
hdisk4 changed
# lspv
hdisk0          0003744f5808d0c8                    rootvg          active
hdisk1          0003744f5ba9e80f                    vg1             active
hdisk2          0003744f5ba9fd07                    vg1             active
hdisk3          0003744f5baa10ae                    vg1             active
hdisk4          0003744f5bbc50e9                    None            
# extendvg  vg1 hdisk4


8、把HDISK1上的逻辑卷迁移到HDISK4
# migratepv -l lv20100928 hdisk1 hdisk4

# lslv lv20100928
LOGICAL VOLUME:     lv20100928             VOLUME GROUP:   vg1
LV IDENTIFIER:      0003744f00004c000000012b5bad394f.1 PERMISSION:     read/write
VG STATE:           active/complete        LV STATE:       opened/syncd
TYPE:               jfs2                   WRITE VERIFY:   off
MAX LPs:            512                    PP SIZE:        4 megabyte(s)
COPIES:             1                      SCHED POLICY:   striped
LPs:                6                      PPs:            6
STALE PPs:          0                      BB POLICY:      relocatable
INTER-POLICY:       maximum                RELOCATABLE:    no
INTRA-POLICY:       middle                 UPPER BOUND:    3
MOUNT POINT:        /20100928              LABEL:          /20100928
MIRROR WRITE CONSISTENCY: on/ACTIVE                              
EACH LP COPY ON A SEPARATE PV ?: yes (superstrict)                     
Serialize IO ?:     NO                                    
STRIPE WIDTH:       3                                      
STRIPE SIZE:        64k                                    

9、属于HDISK1的部分LV20100928已经迁移到HDISK4上;整个LV分布在HDISK234上了
# lslv -l lv20100928
lv20100928:/20100928
PV                COPIES        IN BAND       DISTRIBUTION  
hdisk4            002:000:000   100%          000:002:000:000:000
hdisk2            002:000:000   100%          000:002:000:000:000
hdisk3            002:000:000   100%          000:002:000:000:000

10、验证刚才的文本文件,还在,没丢呢
# cd /20100928
# ls
aixchina.net  lost+found
# more aixchina.net
welcome to aixchina.net

11、继续添加PV,把HDISK2 HDISK3迁移到HDISK5 HDISK6上
# lspv
hdisk0          0003744f5808d0c8                    rootvg          active
hdisk1          0003744f5ba9e80f                    vg1             active
hdisk2          0003744f5ba9fd07                    vg1             active
hdisk3          0003744f5baa10ae                    vg1             active
hdisk4          0003744f5bbc50e9                    vg1             active
hdisk5          none                                None            
hdisk6          none                                None            

# extendvg vg1 hdisk5 hdisk6
0516-1254 extendvg: Changing the PVID in the ODM.
0516-1254 extendvg: Changing the PVID in the ODM.

# migratepv -l lv20100928 hdisk2 hdisk5
# migratepv -l lv20100928 hdisk3 hdisk6

# lslv -l lv20100928
lv20100928:/20100928
PV                COPIES        IN BAND       DISTRIBUTION  
hdisk4            002:000:000   100%          000:002:000:000:000
hdisk5            002:000:000   100%          000:002:000:000:000
hdisk6            002:000:000   100%          000:002:000:000:000

# more /20100928/aixchina.net
welcome to aixchina.net

# lslv lv20100928
LOGICAL VOLUME:     lv20100928             VOLUME GROUP:   vg1
LV IDENTIFIER:      0003744f00004c000000012b5bad394f.1 PERMISSION:     read/write
VG STATE:           active/complete        LV STATE:       opened/syncd
TYPE:               jfs2                   WRITE VERIFY:   off
MAX LPs:            512                    PP SIZE:        4 megabyte(s)
COPIES:             1                      SCHED POLICY:   striped
LPs:                6                      PPs:            6
STALE PPs:          0                      BB POLICY:      relocatable
INTER-POLICY:       maximum                RELOCATABLE:    no
INTRA-POLICY:       middle                 UPPER BOUND:    3
MOUNT POINT:        /20100928              LABEL:          /20100928
MIRROR WRITE CONSISTENCY: on/ACTIVE                              
EACH LP COPY ON A SEPARATE PV ?: yes (superstrict)                     
Serialize IO ?:     NO                                    
STRIPE WIDTH:       3                                      
STRIPE SIZE:        64k                     

12、把LOGLV也迁移走,最终把HDISK1 HDISK2 HDISK3从VG中踢走
# migratepv -l loglv00 hdisk1 hdisk6
# lslv -l loglv00
loglv00:N/A
PV                COPIES        IN BAND       DISTRIBUTION  
hdisk6            001:000:000   100%          000:001:000:000:000

# reducevg vg1 hdisk1
# reducevg vg1 hdisk2
# reducevg vg1 hdisk3
# lspv
hdisk0          0003744f5808d0c8                    rootvg          active
hdisk1          0003744f5ba9e80f                    None            
hdisk2          0003744f5ba9fd07                    None            
hdisk3          0003744f5baa10ae                    None            
hdisk4          0003744f5bbc50e9                    vg1             active
hdisk5          0003744f5bcca452                    vg1             active
hdisk6          0003744f5bcca602                    vg1             active

完成!

最后悬赏:
migratepv迁移条带LV的时候,源PV与目标PV数量一致,LV不能由条带专为非条带;因为条带跨多个PV,管理起来比较麻烦,而且其中一个PV发生故障,那么PV里面的LV就也就损坏了;
因此,建议要将它专为非条带的LV,那该如何操作呢?

答案国庆之后揭晓。
参与21

21同行回答

abit2007abit2007  系统工程师 , 代维
cplv是可以将条带化去掉,楼主自己试试不就有结果了么。显示全部
cplv是可以将条带化去掉,楼主自己试试不就有结果了么。收起
互联网服务 · 2013-09-26
浏览3563
午夜幽魂午夜幽魂  系统运维工程师 , 计算机有限公司
原来是使用CPLV?LZ最终有准确答案了,但是能不能给出实验过程结果呢?显示全部
原来是使用CPLV?LZ最终有准确答案了,但是能不能给出实验过程结果呢?收起
系统集成 · 2013-09-25
浏览3511
abit2007abit2007  系统工程师 , 代维
无法去除它的条带化,就算是ppstripe也不行。显示全部
无法去除它的条带化,就算是ppstripe也不行。收起
互联网服务 · 2013-09-14
浏览3561
盈盈笑盈盈笑  系统工程师 , futong
谢谢分享!!!!!!!!!!!!!!!!!!!!!!!!!!!!!显示全部
谢谢分享!!!!!!!!!!!!!!!!!!!!!!!!!!!!!收起
互联网服务 · 2012-01-06
浏览3577
盈盈笑盈盈笑  系统工程师 , futong
谢谢分享!!!!!!显示全部
谢谢分享!!!!!!收起
互联网服务 · 2012-01-06
浏览3505
whiterainwhiterain  软件开发工程师 , china unicom
其实,实际生产环境中,用条带的LV多吗?我是没碰过了挺多的。特别是你使用了vxvm,你的host下面外挂了很多品牌的存储,做个stripe,还是挺多的。显示全部
其实,实际生产环境中,用条带的LV多吗?我是没碰过了
挺多的。特别是你使用了vxvm,你的host下面外挂了很多品牌的存储,做个stripe,还是挺多的。收起
互联网服务 · 2011-12-24
浏览3656
xxjsbxxjsb  系统工程师 , 嘉陵
现在,大部分机房都会用阵列吧,用条带化没意义吧,走的都是fc卡显示全部
现在,大部分机房都会用阵列吧,用条带化没意义吧,走的都是fc卡收起
互联网服务 · 2011-12-20
浏览3521
zhjbenetzhjbenet  系统工程师 , zdou
如果为了提高性能, 做条带还挺多的显示全部
如果为了提高性能, 做条带还挺多的收起
互联网服务 · 2010-10-11
浏览3680
极地冰山极地冰山  软件开发工程师 , 安图特
没用过学习了!!显示全部
没用过学习了!!收起
互联网服务 · 2010-10-11
浏览3587
myguangzhoumyguangzhou  技术经理 , Uniwise
对于铁蛋哥的回帖,大家可以讨论下显示全部
对于铁蛋哥的回帖,大家可以讨论下收起
互联网服务 · 2010-10-11
浏览3542

提问者

myguangzhou
技术经理Uniwise
擅长领域: 服务器AIXUnix

相关问题

相关文章

问题状态

  • 发布时间:2010-09-29
  • 关注会员:0 人
  • 问题浏览:26796
  • 最近回答:2013-09-26
  • X社区推广