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
33
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
40
Life of our small product
khasunuma
0
28
How to adapt MicroProfile API for generic Web applications
khasunuma
0
29
Overviewing Admin Console
khasunuma
0
28
Introduction to MicroProfile Metrics
khasunuma
0
48
Basic method for Java EE Web Profile
khasunuma
0
24
Introduction to JCA and MDB
khasunuma
0
66
Collections Framework Begineers Guide 2
khasunuma
0
63
JLS myths ~ if-then-else statement ~
khasunuma
0
27
Other Decks in Programming
See All in Programming
GraphQL×Railsアプリのデータベース負荷分散 - 月間3,000万人利用サービスを無停止で
koxya
1
1k
パフォーマンスチューニングで Web 技術を深掘り直す
progfay
18
4.8k
(Extension DC 2025) Actor境界を越える技術
teamhimeh
1
210
アメ車でサンノゼを走ってきたよ!
s_shimotori
0
130
iOSDC.pdf
chronos2500
2
650
iOSエンジニア向けの英語学習アプリを作る!
yukawashouhei
0
170
CSS Linter の現在地 2025年のベストプラクティスを探る
ryo_manba
10
3.2k
Pull-Requestの内容を1クリックで動作確認可能にするワークフロー
natmark
1
420
10年もののAPIサーバーにおけるCI/CDの改善の奮闘
mbook
0
700
高度なUI/UXこそHotwireで作ろう Kaigi on Rails 2025
naofumi
4
3.1k
CSC509 Lecture 02
javiergs
PRO
0
400
After go func(): Goroutines Through a Beginner’s Eye
97vaibhav
0
220
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
61k
Embracing the Ebb and Flow
colly
88
4.8k
4 Signs Your Business is Dying
shpigford
185
22k
Automating Front-end Workflow
addyosmani
1371
200k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Facilitating Awesome Meetings
lara
56
6.6k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
54
3k
Why Our Code Smells
bkeepers
PRO
339
57k
Fireside Chat
paigeccino
40
3.7k
Raft: Consensus for Rubyists
vanstee
139
7.1k
BBQ
matthewcrist
89
9.8k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
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