Your SlideShare is downloading. ×
Lvm thin povisioning
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

Lvm thin povisioning

1,652
views

Published on

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

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
1,652
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
13
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. RHEL6.3にTech Previewで含まれる LVM thin provisioningがきになる
  • 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. 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. 複数レベルスナップショットの用途● 仮想ディスクイメージについて – ちょっと作業したイメージ – そのちょっと後のイメージ – さらになんか作業したあとのイメージ…… とスナップショットを作りまくる運用● VMware(VMFSで実装)とかVirtualBox(独自差 分イメージ管理で実装)では普通の運用● qcow2で実現可能だけどちょい遅いので微妙
  • 5. qcow2の微妙なところ● ファイルシステム上にある – ちょっとコストが高い – 更新日時とかのメタデータは不要● 細かいレベルでのフラグメンテーションの懸念 – 最悪ケースでは4kB毎にフラグメント – 最大2MB毎にクラスタを確保できるので以前より改 善された● フォーマットの制限 – スナップショットを破棄しても確保したブロックは 開放しない
  • 6. LVM thin provision >> qcow2● ファイルシステムがいらない – 低コストを期待● フラグメンテーションのコスト緩和 – 1MB単位などで実装できるため最悪ケースでもフ ラグメントの影響が緩和● ブロック開放 – 参照カウントによるpool device上のextent開放
  • 7. LVM thin provisioningイメージ図 書き込みがあって LV LV 参照カウントがあったら 新ブロックを確保 thinpool タイプのLV LVのextentとpool deviceの btree btree extentの対応表 pool device上のextentについての space-map 参照カウントの管理 pool device
  • 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. LVM thin provisioning実装● device mapper上でCopy on Writeの仕組みを実現● メタデータを導入 – ブロックの管理(ブロック毎のロック管理、同時書き込み 競合の予防) – トランザクション管理(CoWのセマンティクス維持のため) – スペースマップ(ブロックのリファレンスカウント・割り 当て・開放のため) – btree(各LVの対応表を保持するため)● ドキュメント – Documentation/device-mapper/persistent-data.txt – Documentation/device-mapper/thin-provisioning.txt
  • 10. 現状の制限● RHELでTech Preview● クラスタで使えない● pool deviceでブロックが足りなくなった時の QAに不安が……