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
96
ボリュームマネージャ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
74
データ冗長化のしくみ RAID ~冗長性が無いRAID0編~
sat
PRO
1
24
KubeConにproposalを送りたい人へのアドバイス
sat
PRO
3
310
俺とキャンプ2
sat
PRO
1
110
俺とキャンプ3
sat
PRO
0
89
データ冗長化のしくみRAID 基礎概念とRAID1編
sat
PRO
2
47
RAIDの実現方法
sat
PRO
2
99
Linux環境のCPU上で10ミリ秒間に起こること
sat
PRO
3
140
HDDへのアクセス速度は位置によって変わる!??
sat
PRO
4
73
Other Decks in Technology
See All in Technology
10分でわかる株式会社ログラス − エンジニア向け会社説明資料 / Loglass in 10 min for Engineers
loglass2019
3
14k
From here to resilience - a travel guide
ufried
1
300
actionlint の Linter 設計
rhysd
5
560
Go1.21から導入された Go Toolchainの仕組みをまるっと解説
yamatoya
12
2.7k
タイパ重視×アウトプット駆動ではじめるAWS 〜認定資格とコミュニティの先で考えるAWSの学び方〜
maimyyym
2
140
Custom logging with slog Making Logging Fun Again!
masumomo
3
320
リンクアンドモチベーション ソフトウェアエンジニア向け紹介資料 / Introduction to Link and Motivation for Software Engineers
lmi
4
220k
Practices_for_improving_freee_development_productivity
hikarumiyazawa
0
300
Unified Diff 形式の差分から Go AST を構築して feature flag を自動計装する
biwashi
7
800
OpenTelemetry Collector の Connectors って何者?
phaya72
1
850
組合せ最適化による問題解決の実践的アプローチ
recruitengineers
PRO
8
1k
初めてのRubyKaigi! / my-first-rubykaigi
judeeeee
0
7.1k
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
23
1.5k
GraphQLとの向き合い方2022年版
quramy
34
13k
Writing Fast Ruby
sferik
623
60k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
323
20k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
24
1.7k
[RailsConf 2023] Rails as a piece of cake
palkan
31
4.2k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
10
1.4k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
42
4.6k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
247
20k
Faster Mobile Websites
deanohume
300
30k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
19
7k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
19
1.7k
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