单位买了新存储,系统管理员往往要将数据从旧存储迁移到新存储;如果是离线迁移,那么就简单多了,但实际上很多关键业务环境只能容许在线迁移的!如果逻辑卷是普通逻辑卷那好办,用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,那该如何操作呢?
答案国庆之后揭晓。
收起