RHEL6.3にTech Previewで含まれる LVM thin provisioningがきになる
RHEL6.3 beta release note●   Thin-provisioning and scalable snapshot    capabilities●   The dm-thinp targets, thin and thi...
LVM support for (non-clustered)           thinp snapshots●   A new implementation of LVM copy-on-write (cow)    snapshots ...
複数レベルスナップショットの用途●   仮想ディスクイメージについて    –   ちょっと作業したイメージ    –   そのちょっと後のイメージ    –   さらになんか作業したあとのイメージ……    とスナップショットを作りまくる運用...
qcow2の微妙なところ●    ファイルシステム上にある    –   ちょっとコストが高い    –   更新日時とかのメタデータは不要●    細かいレベルでのフラグメンテーションの懸念    –   最悪ケースでは4kB毎にフラグメント...
LVM thin provision >> qcow2●   ファイルシステムがいらない    –   低コストを期待●   フラグメンテーションのコスト緩和    –   1MB単位などで実装できるため最悪ケースでもフ        ラグメン...
LVM thin provisioningイメージ図                                     書き込みがあって   LV                        LV      参照カウントがあったら   ...
コマンド例●   pvcreate /dev/sdb1●   vgcreate VGthin /dev/sdb1●   lvcreate -L 1G -T VGthin/thinpool    –   thinpoolとよばれるthin poo...
LVM thin provisioning実装●   device mapper上でCopy on Writeの仕組みを実現●    メタデータを導入    –   ブロックの管理(ブロック毎のロック管理、同時書き込み        競合の予防...
現状の制限●   RHELでTech Preview●   クラスタで使えない●   pool deviceでブロックが足りなくなった時の    QAに不安が……
Upcoming SlideShare
Loading in …5
×

Lvm thin povisioning

2,313 views
2,114 views

Published on

RHEL6.3でtech previewとして導入されたLVMのthin provisioningの紹介

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,313
On SlideShare
0
From Embeds
0
Number of Embeds
33
Actions
Shares
0
Downloads
16
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Lvm thin povisioning

  1. 1. RHEL6.3にTech Previewで含まれる LVM thin provisioningがきになる
  2. 2. RHEL6.3 beta release note● Thin-provisioning and scalable snapshot capabilities● The dm-thinp targets, thin and thin-pool, provide a device mapper device with thin- provisioning and scalable snapshot capabilities. This feature is available as a Technology Preview.
  3. 3. LVM support for (non-clustered) thinp snapshots● A new implementation of LVM copy-on-write (cow) snapshots is available in Red Hat Enterprise Linux 6.3 as a Technology Preview. The main advantage of this implementation, compared to the previous implementation of snapshots, is that it allows many virtual devices to be stored on the same data volume. This implementation also provides support for arbitrary depth of recursive snapshots (snapshots of snapshots of snapshots …).
  4. 4. 複数レベルスナップショットの用途● 仮想ディスクイメージについて – ちょっと作業したイメージ – そのちょっと後のイメージ – さらになんか作業したあとのイメージ…… とスナップショットを作りまくる運用● VMware(VMFSで実装)とかVirtualBox(独自差 分イメージ管理で実装)では普通の運用● qcow2で実現可能だけどちょい遅いので微妙
  5. 5. qcow2の微妙なところ● ファイルシステム上にある – ちょっとコストが高い – 更新日時とかのメタデータは不要● 細かいレベルでのフラグメンテーションの懸念 – 最悪ケースでは4kB毎にフラグメント – 最大2MB毎にクラスタを確保できるので以前より改 善された● フォーマットの制限 – スナップショットを破棄しても確保したブロックは 開放しない
  6. 6. LVM thin provision >> qcow2● ファイルシステムがいらない – 低コストを期待● フラグメンテーションのコスト緩和 – 1MB単位などで実装できるため最悪ケースでもフ ラグメントの影響が緩和● ブロック開放 – 参照カウントによるpool device上のextent開放
  7. 7. LVM thin provisioningイメージ図 書き込みがあって LV LV 参照カウントがあったら 新ブロックを確保 thinpool タイプのLV LVのextentとpool deviceの btree btree extentの対応表 pool device上のextentについての space-map 参照カウントの管理 pool device
  8. 8. コマンド例● pvcreate /dev/sdb1● vgcreate VGthin /dev/sdb1● lvcreate -L 1G -T VGthin/thinpool – thinpoolとよばれるthin poolタイプのLVを作成● lvcreate -V 100G --thinpool VGthin/thinpool -n hoge – VGthin/thinpool上に100GのLV hogeを作成● lvcreate -s VGthin/hoge -n huga – hogeのスナップショットhugaを作成
  9. 9. LVM thin provisioning実装● device mapper上でCopy on Writeの仕組みを実現● メタデータを導入 – ブロックの管理(ブロック毎のロック管理、同時書き込み 競合の予防) – トランザクション管理(CoWのセマンティクス維持のため) – スペースマップ(ブロックのリファレンスカウント・割り 当て・開放のため) – btree(各LVの対応表を保持するため)● ドキュメント – Documentation/device-mapper/persistent-data.txt – Documentation/device-mapper/thin-provisioning.txt
  10. 10. 現状の制限● RHELでTech Preview● クラスタで使えない● pool deviceでブロックが足りなくなった時の QAに不安が……

×