Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ボリュームマネージャLVM
Search
Satoru Takeuchi
PRO
December 30, 2023
Technology
2
210
ボリュームマネージャLVM
以下動画のテキストです。
https://youtu.be/0R02LLBFk4o
Satoru Takeuchi
PRO
December 30, 2023
Tweet
Share
More Decks by Satoru Takeuchi
See All by Satoru Takeuchi
デバイスにアクセスするデバイスファイル
sat
PRO
1
20
ファイルシステムのデータを ブロックデバイスへの操作で変更
sat
PRO
1
16
デバイスドライバ
sat
PRO
0
21
マルチスレッドの実現方法 ~カーネルスレッドとユーザスレッド~
sat
PRO
2
56
共有メモリ
sat
PRO
3
47
マルチスレッドプログラム
sat
PRO
3
40
Linuxのブートプロセス initramfs編
sat
PRO
2
51
Linuxのブートプロセス
sat
PRO
6
160
シェルのジョブ
sat
PRO
1
32
Other Decks in Technology
See All in Technology
グループ ポリシー再確認 (2)
murachiakira
0
210
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
7
63k
白金鉱業Meetup_Vol.18_生成AIはデータサイエンティストを代替するのか?
brainpadpr
4
220
AIにおけるソフトウェアテスト_ver1.00
fumisuke
1
330
AIとSREで「今」できること
honmarkhunt
3
690
AIによるコードレビューで開発体験を向上させよう!
moongift
PRO
0
350
GraphQLを活用したリアーキテクチャに対応するSLI/Oの再設計
coconala_engineer
0
190
Compose におけるパスワード自動入力とパスワード保存
tonionagauzzi
0
190
10分で学ぶ、RAGの仕組みと実践
supermarimobros
0
730
Simplify! 10 ways to reduce complexity in software development
ufried
1
190
DjangoCon Europe 2025 Keynote - Django for Data Science
wsvincent
0
400
生成AIのユースケースをとにかく集めてまるっと学ぶ!/ all about generative ai usecases
gakumura
3
360
Featured
See All Featured
Navigating Team Friction
lara
185
15k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
780
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
137
33k
Designing for Performance
lara
608
69k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.8k
How STYLIGHT went responsive
nonsquared
100
5.5k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Documentation Writing (for coders)
carmenintech
70
4.7k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Unsuck your backbone
ammeep
671
57k
Transcript
ボリュームマネージャ LVM Satoru Takeuchi X: satoru_takeuchi 1
原始的なブロックデバイス管理の課題 • サイズはディスクの全容量か、それを区切ったパーティションの容量 ◦ ディスクサイズを超える大きさのボリュームは作れない • 一度決めた構成は変えづらい ◦ パーティションの作りなおし /最後のパーティションを拡張
/新パーティションの作成 2
LVM(Logical Volume Manager) • 1ノード内の複数ディスクを束ねてVolume Group(VG)と呼ばれるストレージプール を作る ◦ Volume Groupに組み込むディスクを
Physical Volume(PV)と呼ぶ • Volume Groupのサイズが許す限り好きな数だけLogical Volume(LV)と呼ばれる ブロックデバイスを作る 3 disk disk disk Volume Group … LV LV LV PV PV PV …
LVMの利点 • VGにディスクを追加、削除できる • VGの容量を超えない範囲で好きな数だけ好きな容量のLVを作れる ◦ 一台のディスクの容量を超えるサイズの LVも作れる • LVの拡張、縮小ができる
◦ 📝LVの拡張、縮小後にファイルシステムも拡張、縮小する必要がある • スナップショットを採取できる • 上記すべてをディスクアクセスを止めずに実現できる 4
例: 2つのディスクから3つのLVを作る 5 /dev/sda /dev/sdb Volume Group /dev/testvg/testlv0 /dev/testvg/testlv1 /dev/testvg/testlv2
PV PV 別名 /dev/mapper/testvg-testlv /dev/dm-X
例: Ubuntu22.04はでフォルトでLVMを使う 6 /dev/sda ubuntu-vg /dev/ubuntu-vg/root /dev/ubuntu-vg/home /dev/ubuntu-vg/swap_1 /dev/sda1 /dev/sda2
PV / boot efi home
LVMはdevice mapperを利用して実装されている • linearターゲットを使う ◦ 📝 「device mapperによるディスクI/O障害のエミュレーション 既存ターゲット編」 •
VGに組み込まれたディスクの一部をリニアマップ 7 sda sdb lv0 lv1 lv2
まとめ • Linuxにはブロックデバイス管理を楽にするためのLVMという機能がある • ディスクの容量に縛られず、柔軟なボリューム管理ができる • VGへのディスク追加/削除、LVの作成/削除/拡張/縮小が無停止でできる • スナップショットも採取できる •
LVMは内部でdevice mapperを使える • 📝 使い方はArch Wikiが詳しい ◦ https://wiki.archlinux.jp/index.php/LVM 8