Linuxでの共有VG領域のオンライン拡張とか

はい、今回はファミコンではなくて光輪サーバのお話です。
ユーザディレクトリ配下を物置みたいに使ってたら容量が逼迫してきたので、
一部の領域を共有ディスク(MSA1000)に逃がそうかと考えました。
(まだ余裕はあるんですが、内蔵ディスクには容量の上限があるため…)

んで色々調べた結果こんな感じでイケましたので、
メモがてらにご紹介しておきます。。。

まず環境と方法ですが、
現在はMSA1000から50GBでアサインしている領域をMSAの機能によりオンラインで150GBに拡張します。
そのままLinuxのOS無停止にてディスクの認識からVG上にLvol追加構成まで実施します。

○ 現状のVG構成確認
[root@Linux-Server ~]# vgdisplay -v vg01pA
    Using volume group(s) on command line
    Finding volume group “vg01pA”
  — Volume group —
  VG Name               vg01pA
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  6
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               49.97 GiB <= VGのサイズが50GBなのがわかる
  PE Size               32.00 MiB
  Total PE              1599
  Alloc PE / Size       832 / 26.00 GiB
  Free  PE / Size       767 / 23.97 GiB
  VG UUID               mPna9R-oMeL-nyqJ-R5FT-7XK1-oTPp-uHOVS5
   
  — Logical volume —
  LV Path                /dev/vg01pA/lvol1
  LV Name                lvol1
  VG Name                vg01pA
  LV UUID                c8lUQJ-Zbp3-36FF-S32Z-XV3F-PiDz-U9xTPX
  LV Write Access        read/write
  LV Creation host, time ,
  LV Status              available
  # open                 1
  LV Size                1.00 GiB
  Current LE             32
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  – currently set to     256
  Block device           253:8
   
  — Logical volume —
  LV Path                /dev/vg01pA/lvol2
  LV Name                lvol2
  VG Name                vg01pA
  LV UUID                rfr2S7-JVEz-oOaE-313P-jvNj-NX5g-Y7uCo7
  LV Write Access        read/write
  LV Creation host, time ,
  LV Status              available
  # open                 1
  LV Size                25.00 GiB
  Current LE             800
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  – currently set to     256
  Block device           253:9
   
  — Physical volumes —
  PV Name               /dev/mapper/MSA1000-01 <= 使用しているPV名が確認できる  
  PV UUID               BwZSue-pFWx-pyqY-8gta-01w2-JfC5-tbpq3F
  PV Status             allocatable
  Total PE / Free PE    1599 / 767

[root@Linux-Server ~]# vgdislplay -C Linuxにはこんなコマンドもあるみたい…
  VG     #PV #LV #SN Attr   VSize   VFree
  vg00     1  10   0 wz–n- 464.72g 21.72g
  vg01pA   1   2   0 wz–n-  49.97g 23.97g
  vg02pB   1   2   0 wz–n-  49.97g 14.97g

[root@Linux-Server ~]# pvdisplay -v /dev/mapper/MSA1000-01 <= PVの詳細を確認
    Using physical volume(s) on command line
  — Physical volume —
  PV Name               /dev/mapper/MSA1000-01
  VG Name               vg01pA
  PV Size               50.00 GiB / not usable 30.22 MiB <= 間違いなく50GB!
  Allocatable           yes
  PE Size               32.00 MiB
  Total PE              1599
  Free PE               767
  Allocated PE          832
  PV UUID               BwZSue-pFWx-pyqY-8gta-01w2-JfC5-tbpq3F

[root@Linux-Server ~]# pvdisplay -C 一応これも打ってみる…
  PV                     VG     Fmt  Attr PSize   PFree
  /dev/mapper/MSA1000-01 vg01pA lvm2 a–   49.97g 23.97g
  /dev/mapper/MSA1000-02 vg02pB lvm2 a–   49.97g 14.97g
  /dev/md1               vg00   lvm2 a–  464.72g 21.72g

○ マルチパスの状態およびデバイス確認
[root@Linux-Server ~]# multipath -ll MSA1000-01
MSA1000-01 (3600805f30019cba0a00b799880850069) dm-2 HP,MSA VOLUME
size=50G features=’1 queue_if_no_path’ hwhandler=’0′ wp=rw
|-+- policy=’round-robin 0′ prio=130 status=active
| `- 6:0:0:1 sdc 8:32  active ready running <= パスの1本目は/dev/sdcなのがわかる
`-+- policy=’round-robin 0′ prio=10 status=enabled
`- 6:0:1:1 sdf 8:80  active ready running <= パスの2本目は/dev/sdfなのがわかる

○ デバイスの再スキャン(容量が変更された事を認識させるため)
[root@Linux-Server ~]# echo 1 > /sys/block/sdc/device/rescan <= パスの1本目に実施
[root@Linux-Server ~]# echo 1 > /sys/block/sdf/device/rescan <= パスの2本目に実施
[root@Linux-Server ~]# multipathd -k”resize map MSA1000-01″ <= DM-Multipathにサイズの変更を教える
ok

[root@Linux-Server ~]# multipath -ll MSA1000-01
MSA1000-01 (3600805f30019cba0a00b799880850069) dm-2 HP,MSA VOLUME
size=150G features=’1 queue_if_no_path’ hwhandler=’0′ wp=rw <= 150GBに変わった!
|-+- policy=’round-robin 0′ prio=130 status=active
| `- 6:0:0:1 sdc 8:32  active ready running
`-+- policy=’round-robin 0′ prio=10 status=enabled
  `- 6:0:1:1 sdf 8:80  active ready running

○ PVの容量をリサイズする
[root@Linux-Server ~]# pvresize /dev/mapper/MSA1000-01
  Physical volume “/dev/mapper/MSA1000-01” changed
  1 physical volume(s) resized / 0 physical volume(s) not resized

○ PVおよびVGの容量が増えたことを確認
[root@Linux-Server ~]# pvdisplay -v /dev/mapper/MSA1000-01
    Using physical volume(s) on command line
  — Physical volume —
  PV Name               /dev/mapper/MSA1000-01
  VG Name               vg01pA
  PV Size               150.00 GiB / not usable 28.66 MiB <= 150GBに増えた!
  Allocatable           yes
  PE Size               32.00 MiB
  Total PE              4799
  Free PE               3967
  Allocated PE          832
  PV UUID               BwZSue-pFWx-pyqY-8gta-01w2-JfC5-tbpq3F

[root@Linux-Server ~]# pvdisplay -C 一応これも…
  PV                     VG     Fmt  Attr PSize   PFree  
  /dev/mapper/MSA1000-01 vg01pA lvm2 a–  149.97g 123.97g
  /dev/mapper/MSA1000-02 vg02pB lvm2 a–   49.97g  14.97g
  /dev/md1               vg00   lvm2 a–  464.72g  21.72g

[root@Linux-Server ~]# vgdisplay -v vg01pA
    Using volume group(s) on command line
    Finding volume group “vg01pA”
  — Volume group —
  VG Name               vg01pA
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  7
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               149.97 GiB <= 150GBに増えた!
  PE Size               32.00 MiB
  Total PE              4799
  Alloc PE / Size       832 / 26.00 GiB
  Free  PE / Size       3967 / 123.97 GiB
  VG UUID               mPna9R-oMeL-nyqJ-R5FT-7XK1-oTPp-uHOVS5
   
  — Logical volume —
  LV Path                /dev/vg01pA/lvol1
  LV Name                lvol1
  VG Name                vg01pA
  LV UUID                c8lUQJ-Zbp3-36FF-S32Z-XV3F-PiDz-U9xTPX
  LV Write Access        read/write
  LV Creation host, time ,
  LV Status              available
  # open                 1
  LV Size                1.00 GiB
  Current LE             32
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  – currently set to     256
  Block device           253:8
   
  — Logical volume —
  LV Path                /dev/vg01pA/lvol2
  LV Name                lvol2
  VG Name                vg01pA
  LV UUID                rfr2S7-JVEz-oOaE-313P-jvNj-NX5g-Y7uCo7
  LV Write Access        read/write
  LV Creation host, time ,
  LV Status              available
  # open                 1
  LV Size                25.00 GiB
  Current LE             800
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  – currently set to     256
  Block device           253:9
   
  — Physical volumes —
  PV Name               /dev/mapper/MSA1000-01     
  PV UUID               BwZSue-pFWx-pyqY-8gta-01w2-JfC5-tbpq3F
  PV Status             allocatable
  Total PE / Free PE    4799 / 3967

○ 追加領域作成などなど…
[root@Linux-Server ~]# lvcreate -L 100GibB /dev/vg01pA 100GBでLvol追加作成
  Logical volume “lvol3” created

[root@Linux-Server ~]# mkfs -t ext3 /dev/vg01pA/lvol3 ファイルシステム作成(rlvolじゃないよ…)
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
6553600 inodes, 26214400 blocks
1310720 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=0
800 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872

Writing inode tables: 800/800 done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 39 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

[root@Linux-Server ~]# mount /dev/vg01/pA/lvol3 /mnt /mntにマウントしてみる
[root@Linux-Server ~]# df -k /mnt
Filesystem           1K-ブロック    使用   使用可 使用% マウント位置
/dev/mapper/vg01pA-lvol3
                     103212320    192248  97777192   1% /mnt <= マウントできました!

…もし、現在のLvolを拡張したければ、
# lvextend -L 100GiB /dev/vg01pA/lvol1 拡張後のサイズを指定
# resize2fs /dev/vg01pA/lvol1 ファイルシステム拡張

こんなんでイケましたー。
ではでは…

参考URL
https://access.redhat.com/knowledge/docs/ja-JP/Red_Hat_Enterprise_Linux/6/html/Storage_Administration_Guide/
http://prototype030.blogspot.jp/2009/11/linux-lvmvgpv.html

MSA1000のFANについて調べてみた。

グーグル先生にお伺いを立ててみたところ…

123482-001 という型番のパーツを入手すれば良いようです。
・・・で、以前紹介したセカイモンで入手すると…

落札代金+米国内送料+手数料=約2000円
米国 ⇒ 日本 輸送料=約3000円

・・・ぉぃ、送料の方が高いやんけ。
まぁ、そのうち入手するしかないかぁ…

参考URL
http://mblog.excite.co.jp/user/dynabookz/entry/detail/?id=15780571

MSAがなんかエラー吐いちゃった…

ファミコンステレオ化改造でソフトが無いよ!
ってな訳で、仕事帰りに実家でソフトを発掘してふとMSAを見てみたら…

MSAファンエラー
ん・・・なんか、エラー吐いてる。

MSAファンエラー
ゲゲゲっ・・・FANかよぅ(泣)
部品交換じゃなくて、自分で修理とかできないのかなぁ・・・(悩)

MSA1000パフォーマンス計測:まとめ

それでは最後に各RAIDの最小構成と同一ディスク数での構成時の
測定値をグラフ化してみます。

RAID最小構成のパフォーマンス比較


容量も耐障害性も捨てがたい・・・と言う場合には、
RAID5が妥当な選択肢かもしれませんね。

同一ディスク数(4台)構成時のパフォーマンス比較

このデータを見て、ふと思いました。
RAID1+0よりRAID5の方が遅いから、本番環境はRAID1+0で
開発環境はRAID5…よく聞く話ですが、上のグラフを見ると
なんか同じディスク数なら、RAID5の方が性能は良さそうに見えます。
(RAID5はWriteが遅いじゃん…と言うのは置いておいて)

Continue Reading »

« Prev - Next »