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
Virtualization Fundamental
Search
HASUNUMA Kenji
April 20, 2016
Programming
1
46
Virtualization Fundamental
HASUNUMA Kenji
April 20, 2016
Tweet
Share
More Decks by HASUNUMA Kenji
See All by HASUNUMA Kenji
Jakarta EE: The First Parts
khasunuma
0
53
Life of our small product
khasunuma
0
39
How to adapt MicroProfile API for generic Web applications
khasunuma
0
40
Overviewing Admin Console
khasunuma
0
39
Introduction to MicroProfile Metrics
khasunuma
0
61
Basic method for Java EE Web Profile
khasunuma
0
38
Introduction to JCA and MDB
khasunuma
0
90
Collections Framework Begineers Guide 2
khasunuma
0
79
JLS myths ~ if-then-else statement ~
khasunuma
0
44
Other Decks in Programming
See All in Programming
encoding/json/v2のUnmarshalはこう変わった:内部実装で見る設計改善
kurakura0916
0
410
nilとは何か 〜interfaceの構造とnil!=nilから理解する〜
kuro_kurorrr
3
1.9k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
550
Cyrius ーLinux非依存にコンテナをネイティブ実行する専用OSー
n4mlz
0
150
Go 1.26でのsliceのメモリアロケーション最適化 / Go 1.26 リリースパーティ #go126party
mazrean
1
400
AI 開発合宿を通して得た学び
niftycorp
PRO
0
120
How to stabilize UI tests using XCTest
akkeylab
0
130
AI Assistants for Your Angular Solutions
manfredsteyer
PRO
0
140
Everything Claude Code OSS詳細 — 5層構造の中身と導入方法
targe
0
110
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
510
AIとペアプロして処理時間を97%削減した話 #pyconshizu
kashewnuts
1
240
エラーログのマスキングの仕組みづくりに役立ったASTの話
kumoichi
0
220
Featured
See All Featured
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.2k
Practical Orchestrator
shlominoach
191
11k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
14k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.4k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
480
Facilitating Awesome Meetings
lara
57
6.8k
Docker and Python
trallard
47
3.8k
We Are The Robots
honzajavorek
0
200
Navigating Weather and Climate Data
rabernat
0
140
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
970
Designing for humans not robots
tammielis
254
26k
Transcript
Virtualization Fundamental HASUNUMA Kenji
[email protected]
@khasunuma
ԾԽͱ What’s virtualization?
ຊԿ
ຊԿ
ԾԽͷຊ࣭ ݟ͍͑ͯΔͷ㱠ཧతͳͷ w ཧઃܭʹറΒΕͳ͍ཧઃܭ w ཧઃܭͷมߋʹڧ͍ཧઃܭ
ओͳԾԽςΫϊϩδʔ w ϋʔυΣΞԾԽ w σεΫτοϓԾԽ w ΞϓϦέʔγϣϯԾԽ w ετϨʔδԾԽ w
ωοτϫʔΫԾԽ
ϋʔυΣΞԾԽ w ͷཧϚγϯʹෳͷԾϚγϯ Λߏங͢Δ w ར༻ऀʹɺෳͷϚγϯ͕ಈ࡞ͯ͠ ͍Δ͔ͷΑ͏ʹݟ͔͚ͤΔ w ͬͱྺ࢙͕ݹ͘ɺීٴ͍ͯ͠Δ
σεΫτοϓԾԽ w ϦϞʔτɾσεΫτοϓͷൃలܗ ӳޠུশVDIΑ͘༻͍ΒΕΔ w ଟͷϢʔβʔʹରͯ͠ҟͳΔσεΫ τοϓΛఏڙ͢Δ w γϯɾΫϥΠΞϯτͷج൫ٕज़
ΞϓϦέʔγϣϯԾԽ w දྫJavaԾϚγϯ(Java VM) w OS͝ͱͷAPIࠩҟΛٵऩ͢Δ w OS͔ΒݟΕ୯ͳΔϓϩηε w ίϯςφԾԽ(Docker,
Solaris Zone, FreeBSD Jail)ൃల
ԾԽͷྺ࢙ History of virtualization
ूதॲཧ `ʙ ݶΒΕͨϦιʔε ʮόονॲཧʯͰޮԽ
ԾԽͷొ bʙ *#.$1$.4ͷొ ෳͷ04Λಉ࣮࣌ߦԾԽͷݩ
͜΅Ε w CP/CMS࣌ͷOS୯ҰϢʔβʔ༻ w Multics = ϚϧνϢʔβʔOS (TSS) ˠݟࣄʹίέΔ w
ݩMultics։ൃऀ͕झຯͰUnixΛ։ൃ ˠେϒϨΠΫ͠ɺޙൃͷOSʹӨڹ
μϯαΠδϯά `ʙ ϗετʹΑΔूதॲཧ͔Βɺ খܕίϯϐϡʔλʹΑΔࢄॲཧ
࠶ͼूதॲཧ `ʙ αʔόʔʹॲཧ͕ूத ʮαʔόʔͷϝΠϯϑϨʔϜԽʯ
ϋʔυΣΞԾԽ Hardware virtualization
ϋʔυΣΞԾԽख๏ w ϗετ04ܕ˞؆қͳݕূڥ͖ w VMware (w/o vSphere), VirtualBox w ϋΠύʔόΠβʔܕ˞࣮ӡ༻Ͱͷओྲྀ
w Xenܕ : Citrix Xen, Microsoft Hyper-V w ESXiܕ : VMware ESXi (vSphere) • KVMܕ : Linux KVM
ϗετOSܕ
ϗετ04ܕͷಛ w طଘͷ04্ʹ7..ΛߏஙͰ͖Δ w ྺ࢙͕ݹ͘ɺଟ͘ͷήετ04ʹରԠ w ϋΠύʔόΠβʔܕʹൺֱͯ͠ޮ͕ ѱ͘ɺ࣮ӡ༻ʹ͔ͳ͍
Xenܕ Dom0VMM Λ੍ޚ͢Δ
9FOܕͷಛ w ϋΠύʔόΠβʔܕͱ࣮ͯ͠๛ɺ Hyper-VجຊઃܭXenϕʔε w ४ԾԽ͕جຊ͕ͩɺશԾԽར༻ Մೳ w ࣮ӡ༻Ͱɺ͍͔ʹDom0ͷফඅϦιʔ εΛখ͘͢͞Δ͔͕伴
શԾԽͱ४ԾԽ ४ԾԽ શԾԽ
શԾԽ w Guest OS͕ఏڙ͢ΔυϥΠόʔΛར༻ w VMMଆϋʔυΣΞͷΤϛϡϨʔ γϣϯʹప͢Δ w ෦ͰখࡉύϑΥʔϚϯεԼ ˠԾԽࢧԉػೳ
Intel VT/AMD-V
४ԾԽ w VMM͕ఏڙ͢ΔυϥΠόʔΛར༻ w VMMଆ࠷খݶͷΤϛϡϨʔγϣϯ ˠߴ͍ύϑΥʔϚϯε w XenHyper-VͰՄೳͳݶΓ४Ծ ԽΛݕ౼͢Δ͜ͱ
ESXiܕ ཧઐ༻04 ඞਢͰͳ͍
&49Jܕͷಛ w VMMຊମΛۃখԽɺήετOSׂ ՄೳͳϦιʔε࠷େ w Intel VT/AMD-VͷԾԽࢧԉػೳ͕ ඞਢ w ϋʔυΣΞͱͷ૬ੑ͕γϏΞ
KVMܕ LinuxΧʔωϧ ࣗମΛVMMʹ͠ ͯ͠·͍ͬͯΔ
,7.ܕͷಛ w LinuxʹࡌʢΧʔωϧʙʣ w LinuxΧʔωϧͦͷͷΛVMMԽ w ݪଇͱͯ͠શԾԽͷΈαϙʔτ વIntel VT/AMD-Vඞਢ
ԾԽʹؔ͢Δߟ Virtualization
ԾԽͷϝϦοτ w Ϧιʔεͷ༗ޮ׆༻ جຊɺίϯϐϡʔλʔՋ͍ͯ͠Δ w ཧతͳαʔόʔͷݮ چ04ͷूɺ։ൃڥͷαʔό౷߹ w
ϋʔυΣΞ04ͷࠩҟΛٵऩ
ԾԽͷσϝϦοτ w ԾԽٕज़ͦͷͷʹཱͬͨσϝ Ϧοτͳ͍ w ʮͦͷҊ݅ɺຊʹʰԾԽʱ ͕ඞཁͰ͔͢ʁʯ w ԾԽܾͯ͠ʮۜͷؙʯͰͳ͍
ԾԽͰҙ͍ͨ͜͠ͱ Ϧιʔεʹཁҙ ʮཧϚγϯͷϦιʔεʯ ɹʼʮىಈதͷԾϚγϯͷϦιʔεʯ ԾԽڥ্Ͱ͞ΒʹԾԽ͠ͳ͍ ɹˠ௨ৗɺԿ͕͓͜Δ͔Θ͔Βͳ͍
ԾԽͷ͜͏ଆ Beyond virtualization
ΫϥυڀۃͷԾԽ w Ϋϥυ㲈σʔληϯλʔͷԾԽ w ΫϥυͰ͕ͯ͢ԾԽ w ඞཁͳͱ͖ɺඞཁͳϦιʔεΛௐୡ w ॴɾ࣌ؒΛΘͣΞΫηεՄೳ
Ϋϥυͷ෭࣍తޮೳ େنΫϥυੈքల։ w ෛՙฏ४Խ ౦ژ͕தൟظͰ/:ؒؓࢄظ ˠ/:ͷ༨ϦιʔεΛ౦ژʹճͤΔ w ࡂରࡦ ͋ΔҬ͕ඃࡂͯ͠ɺଞҬͷσʔλη ϯλʔ͕όοΫΞοϓ
Ϋϥυར༻࣌ͷҙ w ࣄۀऀͱར༻ऀͷ৴པ͕ؔୈҰ w ΫϥυͷαʔϏεଟछଟ༷ IaaS, PaaS, SaaS, etc. w
ʮΫϥυ͋Γ͖ʯͰͳ͘ɺγεςϜ ΛޮΑ࣮͘ݱ͢Δखஈ
Virtualization Fundamental HASUNUMA Kenji
[email protected]
@khasunuma