仮想化システムの軽量なソフトウェア若化のためのゼロコピー・マイグレーション
10
0
0
全文
(2) Vol.2015-OS-132 No.3 2015/2/26. ใॲཧֶձڀݚใࠂ IPSJ SIG Technical Report. ͷʹ͍ͭͯड़ɼ3 ষͰ VMBeam ΛఏҊ͢Δɽ4 ষͰ. ετͷγεςϜੑೳͷԼΛҾ͖͢͜ىɽ·ͨɼϚΠά. VMBeam ͷ࣮ʹ͍ͭͯઆ໌͠ɼ5 ষͰ VMBeam Λ༻͍. Ϩʔγϣϯઐ༻ͷωοτϫʔΫΛ༻͍͍ͯͳ͍߹ɼϝ. ͯߦ࣮͍ͬͨͯͭʹݧड़Δɽ6 ষͰؔ࿈ʹڀݚ৮Εɼ7. ϞϦΠϝʔδͷసૹ͕ωοτϫʔΫଳҬΛѹഭ͠ɼϗετ. ষͰຊߘΛ·ͱΊΔɽ. ͷωοτϫʔΫੑೳʹେ͖ͳӨڹΛ͢΅ٴɽ͜ΕΒͷෛՙ. 2. ԾԽγεςϜͷιϑτΣΞएԽ ଟͷ VM Λಈ࡞ͤ͞ΔԾԽγεςϜ࣌ؒ࿈ଓ ͯ͠ӡ༻͞ΕΔ͜ͱ͕ଟ͍ͨΊɼιϑτΣΞɾΤʔδϯ. ʹΑΓɼϗετ্Ͱಈ࡞͍ͯ͠Δ VM ͷੑೳԼͯ͠͠ ·͏ɽ࣮ࡍʹɼ11 ͷ VM ΛϚΠάϨʔγϣϯ͍ͯ͠Δ ؒɼVM ͷΣϒαʔόͷੑೳ͕ฏ Ͱۉ57%Լ͢Δ͜ ͱ͕ใࠂ͞Ε͍ͯΔ [2]ɽ. ά [1] ͕ൃੜ͍͢͠ɽιϑτΣΞɾΤʔδϯάϝϞ. ϚΠάϨʔγϣϯதͷγεςϜશମͷੑೳԼΛ͑Δ. Ϧͷղ์͠ΕɼΦʔϓϯͨ͠ϑΝΠϧͷด͡ΕͳͲ. ͨΊʹɼϚΠάϨʔγϣϯͷΛ͑Δख๏ఏҊ͞. ͷόάͷͨΊʹɼγεςϜͷੑೳ͕࣍ୈʹԼ͍ͯ͘͠ݱ. Ε͍ͯΔ [5]ɽϚΠάϨʔγϣϯͰ༻͍ΔωοτϫʔΫଳ. Ͱ͋Δɽྫ͑ɼXen ʹ͓͍ͯɼVM ͷϥΠϒϚΠά. ҬΛ੍͢ݶΔ͜ͱͰɼωοτϫʔΫͷෛՙΛܰ͠ݮɼͦ. ϨʔγϣϯΛ 100 ճ࣮ߦ͢Δͱཧ VM ͷۭ͖ϝϞϦ͕. ͷ݁ՌɼγεςϜͷෛՙܰ͢ݮΔ͜ͱ͕Ͱ͖Δɽ͔͠. 80%ݮগ͢Δόά͕͋ͬͨ͜ͱ͕ใࠂ͞Ε͍ͯΔɽ·ͨɼ. ͠ɼϥΠϒϚΠάϨʔγϣϯͰॻ͖͑ΒΕͨϝϞϦΛ. VM ͷαεϖϯυɾϨδϡʔϜΛ࣮ߦ͢Δͱۭ͖σΟεΫ. ࠶ɼసૹ͢Δඞཁ͕͋ΔͨΊɼϚΠάϨʔγϣϯ͕࣌ؒ. ༰ྔ͕ 185MB ͣͭݮগ͢Δόά͕͋ͬͨ͜ͱใࠂ͞Ε. ͘ͳΔͱτʔλϧͷෛՙ͕૿େ͢ΔՄೳੑ͕͋Δɽ࣮ࡍ. ͍ͯΔ [4]ɽ. ʹɼωοτϫʔΫଳҬΛ 500Mbps ʹ੍ͨ͠ݶ߹ɼ11 . ͜ͷΑ͏ͳιϑτΣΞɾΤʔδϯάͷʹରॲ͢Δ. ͷ VM ΛϚΠάϨʔγϣϯ͢Δͷʹ͔͔Δ͕࣌ؒ 5 ഒʹ૿. ͨΊʹɼιϑτΣΞΛਖ਼ৗͳঢ়ଶʹ͢ιϑτΣΞए. Ճͨ͜͠ͱ͕ใࠂ͞Ε͍ͯΔ [2]ɽ·ͨɼϚΠάϨʔγϣ. Խ [1] ͱݺΕΔख๏͕ఏҊ͞Ε͍ͯΔɽιϑτΣΞए. ϯʹ͕͔͔࣌ؒΔͱɼԾԽγεςϜͷιϑτΣΞएԽ. ԽΛߦ͏͜ͱͰɼԾԽγεςϜΛιϑτΣΞɾΤʔδ. ࣌ؒͷ૿େʹͭͳ͕Δɽ. ϯά͕͖ىΔલͷঢ়ଶʹ͠ɼੑೳͷԼΛ͙͜ͱ͕Ͱ ͖Δɽͦͷ࠷୯७ͳํ๏ԾԽγεςϜΛ࠶ىಈ͢Δ. 3. VMBeam. ͜ͱͰ͋ΔɽԾԽγεςϜͷ࠶ىಈ࣌ʹϋΠύʔόΠ. ຊߘͰɼԾԽγεςϜͷܰྔͳιϑτΣΞएԽΛ. βͷ࠶ىಈ͕ඞཁͱͳΔ͕ɼͦͷࡍʹϋΠύʔόΠβ্. ࣮͢ݱΔ VMBeam ΛఏҊ͢ΔɽVMBeam ͰɼԾԽγ. Ͱಈ࡞͍ͯ͠Δͯ͢ͷ VM ΛҰ୴ఀࢭ͠ɼϋΠύʔό. εςϜͷιϑτΣΞएԽΛߦ͏ࡍʹɼωετͨ͠Ծ. Πβ͕ىಈ͔ͯ͠Βͯ͢ͷ VM Λىಈ͢͠ඞཁ͕͋. ԽΛ༻͍ͯಉҰϗετ্ͰผͷԾԽγεςϜΛىಈ͢Δɽ. ΔɽͦͷͨΊɼԾԽγεςϜͷιϑτΣΞएԽͷࡍʹ. ͦͯ͠ɼθϩίϐʔɾϚΠάϨʔγϣϯΛ༻͍ͯͦͷԾ. ɼVM ্Ͱఏ͞ڙΕ͍ͯΔαʔϏεʹμϯλΠϜ͕ൃ. ԽγεςϜ্ʹͯ͢ͷ VM ΛϚΠάϨʔγϣϯ͢Δɽͦ. ੜ͢Δɽ. ͷͰޙɼݩͷԾԽγεςϜΛऴྃͤ͞Δ͜ͱͰɼԾԽ. ιϑτΣΞएԽʹ͏ VM ͷμϯλΠϜΛ͢ݮ. γεςϜΛ࠶ىಈ͢Δ͜ͱͳ͘ιϑτΣΞएԽΛྃ͢. ΔͨΊʹɼVM ͷϚΠάϨʔγϣϯ͕༻͍ΒΕ͍ͯΔɽಛ. ΔɽθϩίϐʔɾϚΠάϨʔγϣϯೋͭͷԾԽγες. ʹɼϥΠϒϚΠάϨʔγϣϯ [5] ͰɼҠૹݩͷԾԽγ. Ϝ͕ಉҰϗετ্ʹ͋Δ͜ͱΛར༻ͯ͠ɼԾԽγεςϜ. εςϜ VM Λಈ࡞ͤͨ͞··ͦͷϝϞϦΠϝʔδΛసૹ. ؒͰ VM ͷϝϞϦͷ࠶ஔΛߦ͏ɽ. ͠ɼҠૹઌͷԾԽγεςϜड͚औͬͨϝϞϦΠϝʔδ Λ ͍͠৽ʹجVM Λߏங͢ΔɽҠૹͰݩϚΠάϨʔγϣ. 3.1 ωετͨ͠ԾԽͷར༻. ϯதʹॻ͖͑ΒΕͨ VM ͷϝϞϦΛ࠶ͼసૹ͠ɼ࠷ऴత. ಉҰϗετ্ͰೋͭͷԾԽγεςϜΛಈ࡞ͤ͞ΔͨΊ. ʹ VM Λఀࢭͯ͠Γͷঢ়ଶΛసૹ͢Δɽશͯͷ VM Λ. ʹɼVMBeam ωετͨ͠ԾԽΛར༻͢Δɽωετͨ͠. ผͷϗετʹϚΠάϨʔγϣϯ͔ͯ͠ΒϋΠύʔόΠβΛ. ԾԽΛ༻͍ΔͱɼVM ͷதͰԾԽγεςϜΛಈ࡞ͤ͞. ࠶ىಈ͢Δ͜ͱͰɼVM ͷμϯλΠϜΛඇৗʹ͑͘. Δ͜ͱ͕Ͱ͖ΔɽVMBeam ʹ͓͚ΔιϑτΣΞएԽ࣌. Δ͜ͱ͕Ͱ͖Δɽ. ͷγεςϜߏΛਤ 1 ʹࣔ͢ɽຊߘͰɼ௨ৗͷԾԽγ. ͔͠͠ɼVM ϚΠάϨʔγϣϯϗετωοτϫʔΫ. εςϜʹ͓͚ΔϋΠύʔόΠβɼVM ΛͦΕͧΕϗετɾ. ʹେ͖ͳෛՙΛ͔͚ΔɽԾԽγεςϜ্ͷͯ͢ͷ VM. ϋΠύʔόΠβɼϗετ VM ͱͼݺɼϗετ VM Ͱಈ࡞. ΛϚΠάϨʔγϣϯ͢Δ߹ʹɼ߹ ͰܭGB ͔Βे. ͢ΔͷΛͦΕͧΕήετɾϋΠύʔόΠβɼήετ VM. GB ͷσʔλΛసૹ͠ͳ͚ΕͳΒͳ͍ɽͦͷࡍʹɼϝ. ͱͿݺɽVMBeam ͰɼιϑτΣΞएԽ࣌ʹϗετɾ. ϞϦΠϝʔδͷ౪ௌվ͟ΜΛ͙ʹɼϝϞϦσʔλΛ. ϋΠύʔόΠβ্Ͱೋͭͷϗετ VM Λಈ࡞ͤ͞ɼͦΕͧ. ҉߸Խͯ͠సૹ͢Δඞཁ͕͋ΔɽͦͷͨΊɼϗετͷ CPU. ΕͷதͰήετɾϋΠύʔόΠβ͓Αͼήετ VM Λಈ࡞. Λ༗ͨ͠ΓϝϞϦଳҬΛѹഭͨ͠Γ͢Δ͜ͱʹΑΓɼϗ. ͤ͞Δɽ. ⓒ 2015 Information Processing Society of Japan. 2.
(3) Vol.2015-OS-132 No.3 2015/2/26. ใॲཧֶձڀݚใࠂ IPSJ SIG Technical Report. ϗετ7.. ϗετ7.. Ҡૹݩϗετ7. ಈ࡞தͷ ήετ 7.. ήετ ŋŋŋ ήετ 7. 7. ήετɾϋΠύʔόΠβ. ⟎䟝زحطٙ٦ؙ. ιϑτΣΞएԽ࣌ͷ VMBeam ͷγεςϜߏ. ਤ2. ෳதͷ ήετ 7.. ًٌٔⰟ剣. ήετɾϋΠύʔόΠβ. ήετɾϋΠύʔόΠβ. ϗετɾϋΠύʔόΠβ ਤ 1. Ҡૹઌϗετ7.. ήετɾϋΠύʔόΠβ. ϗετɾϋΠύʔόΠβ. θϩίϐʔɾϚΠάϨʔγϣϯதͷήετ VM ؒͷϝϞϦڞ༗. ωετͨ͠ԾԽΛ༻͍Δ͜ͱʹΑΔੑೳԼখ͘͞. Δ͜ͱ͕ଟ͍ɽ͜ͷΦʔόϔουϚΠάϨʔγϣϯ࣌ؒ. ͳ͍͕ɼͦͷΦʔόϔουΛܰ͢ݮΔͨΊʹ༷ʑͳख๏͕. ͷ૿ՃΛҾ͖͢͜ىɽ͞ΒʹɼVM ϚΠάϨʔγϣϯʹ͓. ఏҊ͞Ε͍ͯΔ [6]ɽ͜ΕΒͷख๏Λ༻͍Δ͜ͱͰɼੑೳ. ͚ΔΫϥΠΞϯτͱαʔό͕Ұͭͷϗετ্Ͱಈ࡞͢Δͨ. ԼΛ 6ʙ8%ఔʹ͑Δ͜ͱ͕Ͱ͖Δɽ͞Βʹɼιϑτ. ΊɼγεςϜෛՙ 2 ഒͱͳͬͯ͠·͏ɽωετͨ͠Ծ. ΣΞएԽ࣌Ҏ֎ԾԽ [7] Λߦ͏͜ͱͰɼωετ͠. Խʹ͓͚ΔߴͳԾωοτϫʔΫ [8] ఏҊ͞Ε͍ͯΔ. ͨԾԽͷΦʔόϔουΛେ෯ʹ͖ͰݮΔՄೳੑ͕͋Δɽ. ͕ɼϝϞϦΠϝʔδͷ҉߸Խ͕ϚΠάϨʔγϣϯʹ͓͚Δ. ԾԽϋΠύʔόΠβʹΑΔԾԽΛߦΘͳ͍Α͏ʹ. ϘτϧωοΫͱͳͬͯ͠·͏ɽ. ͢Δٕज़Ͱ͋Δɽͨͩ͠ɼຊߘͰιϑτΣΞएԽ࣌ͷ. ͜ΕΒͷΦʔόϔουΛ͢ݮΔͨΊʹɼVMBeam ಉ. ΦʔόϔουʹݮযΛ͍ͯͯΔͨΊɼωετͨ͠Ծ. Ұϗετ্Ͱಈ࡞͢ΔԾԽγεςϜؒͰͷθϩίϐʔɾ. ԽͷΦʔόϔου͍ͯͭʹݮείʔϓ֎Ͱ͋Δɽ. ϚΠάϨʔγϣϯΛఏ͢ڙΔɽθϩίϐʔɾϚΠάϨʔ. VMBeam ͰɼιϑτΣΞएԽΛߦ͍ͬͯΔؒɼҠ. γϣϯɼҠૹݩͷϗετ VM ্Ͱಈ࡞͢Δήετ VM ͷ. ૹઌͷԾԽγεςϜΛಈ࡞ͤ͞ΔͨΊͷ༨ϦιʔεΛ. ϝϞϦΛɼҠૹઌͷϗετ VM ্ʹ৽ͨʹ࡞͞Εͨήε. ඞཁͱ͢Δɽ͔͠͠ɼήετ VM ͲͪΒ͔ͷϗετ VM. τ VM ʹίϐʔ͢ΔͷͰͳ͘࠶ஔ͢ΔɽϥΠϒϚΠά. ্Ͱ͔͠ಈ࡞͠ͳ͍ͨΊɼήετ VM ͷͨΊʹফඅ͞ΕΔ. ϨʔγϣϯΛՄೳͱ͢ΔͨΊʹɼθϩίϐʔɾϚΠάϨʔ. Ϧιʔε૿Ճ͠ͳ͍ɽͦͷͨΊɼVMBeam ͕ඞཁͱ͢. γϣϯೋͭͷεςοϓ͔ΒͳΔɽ࠷ॳͷεςοϓͰɼ. Δ༨ϦιʔεՃͷԾԽγεςϜͰಈ࡞͢Δήε. Ҡૹݩͷήετ VM ͕ VM ϚΠάϨʔγϣϯதಈ࡞͠. τɾϋΠύʔόΠβͷ͚ͩͰ͋Δɽ. ଓ͚ΒΕΔΑ͏ʹɼҠૹͱݩҠૹઌͷήετ VM ͷϝϞϦ. ຊߘͰɼήετɾϋΠύʔόΠβΛιϑτΣΞएԽ. Λڞ༗͢ΔɽຊߘͰɼ͜ͷػೳΛήετؒϝϞϦڞ༗ͱ. ͷܰྔԽͷରͱ͢Δɽ2 ষͰड़ͨΑ͏ʹɼVM ͷϚΠ. ͿݺɽҠૹͰݩಈ࡞தͷήετ VM ͱҠૹઌʹෳதͷή. άϨʔγϣϯαεϖϯυɾϨδϡʔϜͳͲͷॲཧΛߦ͏. ετ VM ͕ϝϞϦΛڞ༗ͨ͠ঢ়ଶΛਤ 2 ʹࣔ͢ɽ࣍ͷε. ࡍʹιϑτΣΞɾΤʔδϯά͕͜ىΓ͍͢ [4] ͨΊɼͦ. ςοϓͰɼҠૹݩͷήετ VM ͷϝϞϦΛղ์͠ɼҠૹ. ΕΒͷॲཧΛසൟʹߦ͏ήετɾϋΠύʔόΠβఆظత. ઌͷήετ VM ͷϝϞϦͷ࠶ஔΛྃ͢Δɽ. ͳιϑτΣΞएԽΛඞཁͱ͢Δͱߟ͑ΒΕΔɽҰํɼϗ. ϥΠϒϚΠάϨʔγϣϯɼॻ͖͑ΒΕͨϝϞϦΛ࠶. ετɾϋΠύʔόΠβ͜ͷΑ͏ͳॲཧΛجຊతʹඞཁͱ. ૹ͢ΔͨΊʹ͕ࠩখ͘͞ͳΔ·ͰసૹΛ܁Γฦ͢ඞཁ. ͤͣɼ௨ৗ࣌ʹԾԽΛߦ͏͜ͱ͕Ͱ͖ΔͨΊɼιϑ. ͕͋Δ͕ɼθϩίϐʔɾϚΠάϨʔγϣϯͰҰճͷॲཧ. τΣΞɾΤʔδϯά͜ىΓʹ͍͘ͱߟ͑ΒΕΔɽ͞Β. ͰసૹΛྃ͢Δ͜ͱ͕Ͱ͖ΔɽήετؒϝϞϦڞ༗ʹΑ. ʹɼϗετɾϋΠύʔόΠβʹඞཁ࠷ݶͷػೳ͚ͩΛ. ΓɼҠૹݩͷήετ VM ͷϝϞϦʹର͢Δมߋ͕ଈ࠲ʹҠ. ࣋ͨͤΔ͜ͱͰɼιϑτΣΞɾΤʔδϯάͷൃੜΛ੍. ૹઌͷήετ VM ʹө͞ΕɼϝϞϦͷ࠶ૹΛඞཁͱ͠ͳ. ͢Δ͜ͱ͕ՄೳͱͳΔɽͦͷͨΊɼήετɾϋΠύʔόΠ. ͍ͨΊͰ͋Δɽ͜ͷख๏ʹΑΓɼϚΠάϨʔγϣϯ࣌ؒΛ. βͷιϑτΣΞएԽΛܰྔԽ͢Δ͜ͱγεςϜશମʹ. େ͖͘͢ݮΔ͜ͱ͕ՄೳͱͳΓɼϝϞϦʹର͢Δෛՙ͕. ͱͬͯΑΓޮՌతͰ͋Δɽ. େ͖͍ VM ʹରͯ͠ಛʹ༗ޮͱͳΔɽ·ͨɼϚΠάϨʔ γϣϯͷ࠷ऴஈ֊Ͱൃੜ͢ΔμϯλΠϜͷݮগʹͭͳ. 3.2 ήετ VM ͷθϩίϐʔɾϚΠάϨʔγϣϯ. ͕Δɽ. VMBeam ʹ͓͍ͯैདྷͷϚΠάϨʔγϣϯΛߦ͏͚ͩ. θϩίϐʔɾϚΠάϨʔγϣϯσʔλసૹʹԾωο. ͰϚΠάϨʔγϣϯΛߴԽ͢Δͷ͍͠ɽVMBeam. τϫʔΫΛ༻͠ͳ͍ͨΊɼωοτϫʔΫෛՙΛθϩʹ͢. Ͱɼήετ VM ͷϝϞϦΠϝʔδͷసૹΛϗετͷ. Δ͜ͱ͕Ͱ͖Δɽ݁Ռͱͯ͠ɼωοτϫʔΫԾԽʹΑΔ. ԾωοτϫʔΫΛհͯ͠ߦ͏͜ͱ͕Ͱ͖Δ͕ɼωετ͠. Φʔόϔου͕ͳ͘ͳΓɼCPU ϝϞϦͷෛՙ͢ݮΔ. ͨԾԽʹ͓͚ΔԾωοτϫʔΫωοτϫʔΫԾԽ. ͜ͱ͕Ͱ͖Δɽ·ͨɼϝϞϦΛ࠶ஔ͢Δ͚ͩͰࡁΉͷͰɼ. ͷΦʔόϔουͷͨΊʹཧωοτϫʔΫΑΓͰ͋. େྔͷϝϞϦΠϝʔδΛίϐʔ͢ΔΦʔόϔουͰݮ. ⓒ 2015 Information Processing Society of Japan. 3.
(4) Vol.2015-OS-132 No.3 2015/2/26. ใॲཧֶձڀݚใࠂ IPSJ SIG Technical Report. ϗετཧ7.. ϗετ7. ήετ ཧ7.. ήετ 7.. Ҡૹݩϗετ7. ήετ ཧ7. ήετ ϚΠάϨʔγϣϯ 7. ΫϥΠΞϯτ. ήετཧϝϞϦ. 44) ΫϥΠΞϯτ. ήετɾϋΠύʔόΠβ. ήετɾϋΠύʔόΠβ. ϗετɾϋΠύʔόΠβ ϚγϯϝϞϦ Xen ͷωετͨ͠ԾԽʹ͓͚ΔϝϞϦϞσϧ. ͖ΔɽϝϞϦΛίϐʔ͢Δඞཁ͕ͳ͍ͨΊɼҠૹͱݩҠૹ. 44) αʔό ήετɾϋΠύʔόΠβ. ϗετɾϋΠύʔόΠβ. ϗετཧϝϞϦ. ਤ 3. Ҡૹઌϗετ7. ήετ ཧ7. ήετ ϚΠάϨʔγϣϯ 7. αʔό. ਤ 4. ωετͨ͠ԾԽʹ͓͚ΔैདྷͷϚΠάϨʔγϣϯ. ༻͍ͯཧΛߦ͏ɽIntel VT-x Λ༻͍Δ߹ɼP2M ςʔ ϒϧϗετɾϋΠύʔόΠβɼήετɾϋΠύʔόΠβ ͦΕͧΕʹ֦ுϖʔδςʔϒϧʢEPTʣ ɼԾ EPT ͱͯ͠ ࣮͞Ε͍ͯΔɽ. ઌͷήετ VM ͷ֎ʹσʔλ͕࿙ΕΔ͜ͱ͕ͳ͘ͳΓɼϝ ϞϦΠϝʔδͷ҉߸Խͷඞཁੑͳ͘ͳΔɽ͞ΒʹɼVM ͷϚΠάϨʔγϣϯΛߦ͍ͬͯΔؒʹήετ VM ͷϝϞϦ ͕มߋ͞Ε͔ͨͲ͏͔Λݕग़͢Δඞཁ͕ͳ͘ͳΔɽ. 4. ࣮ զʑ VMBeam Λ Xen 4.2.2 [3] ʹ࣮ͨ͠ɽϗετɾ. 4.2 θϩίϐʔɾϚΠάϨʔγϣϯ VMBeam ͰɼҠૹݩͷήετཧ VM ͕ɼҠૹઌͷή ετཧ VM ʹήετ VM ͷϝϞϦΠϝʔδΛసૹ͢Δɽ ωετͨ͠ԾԽΛ༻͍ͨγεςϜͰैདྷͷϚΠάϨʔ γϣϯΛߦ͏߹ͷྲྀΕΛਤ 4 ʹࣔ͢ɽ·ͣɼҠૹݩͷή ετཧ VM ͷϚΠάϨʔγϣϯɾΫϥΠΞϯτήε. ϋΠύʔόΠβͱͯ͠ Xen Λಈ࡞ͤ͞ɼͦͷ্Ͱϗετ. τ VM ʹׂΓͯΒΕ͍ͯΔϝϞϦϖʔδΛϚοϓ͢Δɽ. VM ΛશԾԽʢHVMʣήετͱͯ͠ಈ࡞ͤͨ͞ɽϗ. ࣍ʹɼήετ VM ͷϝϞϦͷ༰ΛಡΈࠐΈɼͦͷϝϞϦ. ετ VM ্ͰήετɾϋΠύʔόΠβͱͯ͠ Xen Λಈ࡞. ΠϝʔδΛԾωοτϫʔΫ্ʹߏங͞Εͨ SSH τϯω. ͤ͞ɼͦͷ্Ͱήετ VM Λ HVM ήετͱͯ͠ಈ࡞ͤ͞. ϧΛհͯ͠Ҡૹઌసૹ͢ΔɽҰํɼθϩίϐʔɾϚΠά. ͨɽXen Ͱ VM Λཧ͢ΔͨΊʹυϝΠϯ 0 ͱݺΕΔ. ϨʔγϣϯͰɼήετ VM ͷϝϞϦʹରԠ͢Δ GPFN. ཧ VM ͕༻͍ΒΕΔ͕ɼϗετ VM Λཧ͢Δ VM Λ. ΛήετɾϋΠύʔόΠβʹ͚ͩ͢ͰϝϞϦΠϝʔδͷ. ϗετཧ VMɼήετ VM Λཧ͢Δ VM Λήετཧ. ૹ৴ॲཧ͕ྃ͢ΔɽϝϞϦΠϝʔδͷϚοϓɼSSH ʹΑ. VM ͱͿݺɽ. Δ҉߸ԽɼωοτϫʔΫసૹߦΘΕͳ͍ɽ. 4.1 ϝϞϦϞσϧ. ό͕৽ۭ͘͠ͷήετ VM Λ࡞͢ΔɽैདྷͷϚΠάϨʔ. Ҡૹઌͷήετཧ VM ͰɼϚΠάϨʔγϣϯɾαʔ. Xen ͷωετͨ͠ԾԽʹ͓͚ΔϝϞϦϞσϧΛਤ 3 ʹ. γϣϯͰɼͦͷήετ VM ͷϝϞϦϖʔδΛϚοϓ͠ɼ. ࣔ͢ɽϗετɾϋΠύʔόΠβϚγϯϝϞϦͱݺΕΔ. SSH τϯωϧΛհͯ͠ड͚औͬͨϝϞϦͷ༰Λॻ͖ࠐ. ϚγϯશମͰཧ͞ΕΔཧϝϞϦΛѻ͍ɼͦͷҰ෦Λϗ. ΉɽҰํɼθϩίϐʔɾϚΠάϨʔγϣϯͰɼ৽͍͠ή. ετ VM ʹׂΓͯΔɽ͜ͷϝϞϦ͚͕ͩϗετ VM Ͱ. ετ VM ͷϝϞϦʹରԠ͢Δ GPFN ΛήετɾϋΠύʔ. ཧ͞ΕΔཧϝϞϦͱͳΓɼϗετཧϝϞϦͱݺΕ. όΠβʹ͚ͩ͢ͰϝϞϦΠϝʔδͷड৴ॲཧ͕ྃ͢Δɽ. ΔɽήετɾϋΠύʔόΠβ͜ͷϗετཧϝϞϦͷҰ. ࣮ࡍͷϝϞϦΠϝʔδͷసૹॲཧɼήετɾϋΠύʔό. ෦Λ͞Βʹήετ VM ʹׂΓͯΔɽ͜ͷϝϞϦ͚͕ͩ. ΠβʹΑͬͯͼݺग़͞ΕΔϗετɾϋΠύʔόΠβͰߦ. ήετ VM Ͱཧ͞ΕΔཧϝϞϦͱͳΓɼήετཧ. ΘΕΔɽϗετɾϋΠύʔόΠβήετؒϝϞϦڞ༗ʹ. ϝϞϦͱݺΕΔɽϚγϯϝϞϦʹϚγϯϑϨʔϜ൪߸. ΑΓҠૹݩͷήετ VM ͷϝϞϦϖʔδΛҠૹઌͷήετ. ʢMFNʣɼϗετཧϝϞϦʹϗετཧϑϨʔϜ൪߸. VM ͱڞ༗ͤ͞ΔɽͦΕΏ͑ɼϝϞϦϖʔδΛϚοϓ͢Δ. ʢHPFNʣɼήετཧϝϞϦʹήετཧϑϨʔϜ൪߸. ඞཁ͕ͳ͘ɼSSH ʹΑΔ෮߸ߦΘΕͳ͍ɽ. ʢGPFNʣ͕ॱ൪ʹׂΓৼΒΕɼཧ͞ΕΔɽ. θϩίϐʔɾϚΠάϨʔγϣϯɼҰճͷϝϞϦసૹͰ. MFN ͔Β HPFNɼHPFN ͔Β GPFN ͷରԠͦΕ. VM ͷશͯͷϝϞϦϖʔδͷసૹΛྃ͢ΔɽैདྷͷϚΠ. ͧΕϗετɾϋΠύʔόΠβɼήετɾϋΠύʔόΠβ. άϨʔγϣϯͰɼҠૹݩͷήετཧ VM ɼVM ʹΑ. ͕ M2P ςʔϒϧΛ༻͍ͯཧΛߦ͏ɽ·ͨɼHPFN ͔Β. ΔϝϞϦϖʔδͷॻ͖͑Λݕग़͢ΔͨΊʹɼήετ VM. MFNɼGPFN ͔Β HPFN ͷରԠͦΕͧΕϗετɾϋ. ΛϩάμʔςΟɾϞʔυͰಈ࡞ͤ͞Δඞཁ͕͋Δɽͦͯ͠ɼ. ΠύʔόΠβɼήετɾϋΠύʔόΠβ͕ P2M ςʔϒϧΛ. ϝϞϦసૹͷ֤ΠςϨʔγϣϯͷ࠷ʹޙήετɾϋΠύʔ. ⓒ 2015 Information Processing Society of Japan. 4.
(5) Vol.2015-OS-132 No.3 2015/2/26. ใॲཧֶձڀݚใࠂ IPSJ SIG Technical Report. Ҡૹݩϗετ7. ήετ ཧ7.. Ҡૹઌϗετ7.. ήετ 7.. ϋΠύʔίʔϧ. ήετ 7.. ήετ ཧ7.. ϋΠύʔίʔϧ. ήετɾϋΠύʔόΠβ ϗετཧϝϞϦ. ϗετɾϋΠύʔόΠβ. ͞Εͨ࣌ʹɼΩϡʔ͕ۭͰͳ͚Εɼ͞Εͨ HPFN ͱ Ωϡʔͷதͷ HPFN ͱʹରԠ͢ΔϝϞϦϖʔδΛڞ༗ͤ͞ ΔɽΩϡʔ͕ۭͷ߹ɼϗετɾϋΠύʔόΠβΤϥʔ. ήετཧϝϞϦ. ήετɾϋΠύʔόΠβ. ʹՃ͢ΔɽҠૹઌ͔ΒϗετɾϋΠύʔόΠβ͕ͼݺग़. Λฦ͠ɼҠૹઌʹ࠶ϋΠύʔίʔϧΛͼݺग़ͤ͞Δɽ. 4.4 ήετཧ VM ؒͷߴ௨৴ Ωϡʔ. VMBeam ͰɼήετؒϝϞϦڞ༗Λར༻͢Δ͜ͱͰɼ ήετཧ VM ؒͰͷ௨ৗͷ௨৴ʹ͓͚ΔΦʔόϔου. ϚγϯϝϞϦ ਤ 5. ԾԽγεςϜΛܦ༝ͨ͠ήετؒϝϞϦڞ༗. ͢ݮΔɽVM ϚΠάϨʔγϣϯͰɼϝϞϦ CPU ͷ ঢ়ଶͳͲͷσʔλҠૹઌͷήετཧ VM ʹసૹ͢Δඞ ཁ͕͋ΔɽͦͷͨΊʹɼ·ͣɼήετཧ VM mmap γ. όΠβ͔ΒμʔςΟɾϏοτϚοϓΛऔಘ͠ɼͦͷμʔ. εςϜίʔϧΛ༻͍ͯεϫοϓɾΞτ͞Εͳ͍ϝϞϦΛ. ςΟɾϏοτϚοϓʹ͖͑ॻ͍ͯͮجΒΕͨϝϞϦϖʔ. ֬อ͢Δɽ࣍ʹɼήετཧ VM ɼ֬อͨ͠ϝϞϦϖʔ. δͷ࠶ૹΛߦ͏ɽθϩίϐʔɾϚΠάϨʔγϣϯͰɼή. δʹରԠ͢Δ GPFN Λ OS ͷΧʔωϧ͔Βऔಘ͢Δɽ࠷. ετ VM ΛੑೳԼͷݪҼͱͳΔϩάμʔςΟɾϞʔυͰ. ʹޙɼήετཧ VM ήετɾϋΠύʔόΠβΛհͯ͠. ಈ࡞ͤ͞Δඞཁ͕ͳ͘ɼμʔςΟɾϏοτϚοϓΛνΣο. ϗετɾϋΠύʔόΠβΛͼݺग़͠ɼҠૹݩͷήετཧ. Ϋͨ͠ΓɼϝϞϦϖʔδΛ࠶ૹͨ͠Γ͢Δඞཁͳ͍ɽ࠶. VM ͷϝϞϦΛڞ༗͢Δɽͦͯ͠ɼҠૹͱݩҠૹઌͷήε. ૹΛߦΘͳͯ͘ɼϝϞϦϖʔδʹର͢ΔશͯͷมߋΛଈ. τཧ VM ͜ͷڞ༗ϝϞϦΛհͯ͠ߴͳ௨৴Λߦ͏ɽ. ࠲ʹҠૹઌͷήετ VM ʹө͢Δ͜ͱ͕Ͱ͖Δɽ. 5. ࣮ݧ. 4.3 ήετؒϝϞϦڞ༗ ήετؒϝϞϦڞ༗ɼҟͳΔϗετ VM ্Ͱಈ࡞͢Δ. զʑθϩίϐʔɾϚΠάϨʔγϣϯͷ༗ޮੑΛࣔͨ͢ Ίʹɼ͍͔ͭ͘ͷ࣮ݧΛߦͬͨɽ. ήετ VM ؒͰϝϞϦϖʔδΛڞ༗ͤ͞ΔػೳͰ͋Δɽή ετཧ VM ͕ήετɾϋΠύʔόΠβΛྲྀͿݺΕΛਤ 5 ʹࣔ͢ɽҠૹݩͷήετཧ VM ϋΠύʔίʔϧΛ༻. 5.1 ࣮ڥݧ ࣮ʹݧ Intel Xeon E5-2665ʢ8 ίΞɼ2.40GHzʣͷ CPUɼ. ͍ͯɼରͷήετ VM ͷ ID ͱɼϝϞϦϖʔδʹରԠ͢. 32GB ͷϝϞϦɼ1TB ͷ HDDɼΪΨϏοτΠʔαωοτ. Δ GPFN ͷྻΛήετɾϋΠύʔόΠβʹ͢ɽҠૹ. Λࡌͨ͠ϚγϯΛ 2 ༻͍ͨɽϋΠύʔεϨοσΟϯά. ઌͷήετཧ VM ಉ༷ͷใΛήετɾϋΠύʔόΠ. ແޮʹͨ͠ɽ͜ΕΒͷϚγϯΪΨϏοτεΠονͰ. βʹ͢ɽ͜ΕΒͷήετཧ VM ͕ಈ࡞͢Δϗετ VM. ଓͨ͠ɽ. ҟͳΔͨΊɼͼݺग़͞ΕΔήετɾϋΠύʔόΠβҟ ͳΔɽ ͦΕͧΕͷήετɾϋΠύʔόΠβ͞Εͨ GPFN ͷ. VMBeam ͱطଘγεςϜͱͷൺֱΛߦ͏ͨΊʹɼ(1) VMBeamɼ(2) ωετͨ͠ԾԽΛ༻͍ͨඪ४ͷ XenʢXenNestʣɼ(3) Xen-Blanket [8]ɼ(4) 2 ͭͷཧϚγϯΛ༻͍. ྻΛ HPFN ͷྻʹม͠ɼϗετɾϋΠύʔόΠβ. ͨैདྷͷγεςϜʢXen-Physʣʹ͍࣮ͭͯݧΛߦͬͨɽ. Λͼݺग़͢ɽήετɾϋΠύʔόΠβ͜ͷมΛɼԾ. Xen-Nest Ͱɼਤ 4 ʹࣔͨ͠Α͏ʹɼϗετ VM ؒͰͷ. EPT Λ༻͍ͯߦ͏ɽϗετɾϋΠύʔόΠβɼ͞Εͨ. ήετ VM ͷϝϞϦΠϝʔδసૹʹԾωοτϫʔΫΛར. HPFN ͷྻΛʹجҠૹݩͷϗετ VM ͷϝϞϦϖʔδ. ༻͢ΔɽXen-Blanket ɼήετཧ VM ʹ४ԾԽυϥ. ΛҠૹઌͷϗετ VM ͱڞ༗ͤ͞Δɽ·ͣҠૹݩͷ HPFN. ΠόΛಋೖͯ͠ϗετཧ VM ͷόοΫΤϯυυϥΠό. ʹରԠ͢Δ EPT ΤϯτϦΛ୳͠ɼมઌͷ MFN Λऔಘ. Λར༻͢Δ͜ͱͰɼωετͨ͠ԾԽʹ͓͚ΔԾωοτ. ͢Δɽͦͯ͠ɼҠૹઌͷ HPFN ͔Β EPT ΤϯτϦΛ୳. ϫʔΫੑೳΛ্͍ͤͯ͞Δɽ. ͠ɼͦͷΤϯτϦʹऔಘͨ͠ MFN Λઃఆ͢Δɽͦͷ݁Ռɼ. (1)ʙ(3) ͷγεςϜߏͰɼϗετɾϋΠύʔόΠβ. ҠૹͱݩҠૹઌͷϗετ VM ͷ HPFN ɼEPT ʹΑͬͯ. ͱͯ͠ Xen 4.2.2 Λ༻͍ɼͦͷ্Ͱ 1 ͭͷϗετཧ VM. ಉ͡ MFN ʹม͞ΕΔΑ͏ʹͳΔɽ. ͱ 2 ͭͷϗετ VM Λಈ࡞ͤͨ͞ɽ·ͨɼήετɾϋΠ. ೋͭͷήετɾϋΠύʔόΠβ͔Βͼݺग़͞ΕΔϋΠ. ύʔόΠβͱͯ͠ Xen 4.2.2 ·ͨ Xen-Blanket 4.1.1 Λ. ύʔίʔϧΛಉͤ·ࡁʹͣͤ͞ظΔͨΊʹɼҠૹݩͷϗε. ༻͍ɼͦͷ্Ͱ 1 ͭͷήετཧ VM Λಈ࡞ͤͨ͞ɽҰํ. τ VM ͔Β͞ΕΔ HPFN ΛҰ࣌తʹอ͓࣋ͯ͘͠Ωϡʔ. ͷϗετ VM ্Ͱ͞Βʹήετ VM Λ 1 ͭಈ࡞ͤͨ͞ɽ. ΛϗετɾϋΠύʔόΠβʹ༻ҙ͢ΔɽҠૹ͔ݩΒͼݺग़. 5.9 અͷ࣮ݧΛআ͍ͯɼήετ VM ͰΞϓϦέʔγϣ. ͞Εͨ࣌ʹɼϗετɾϋΠύʔόΠβ HPFN ΛΩϡʔ. ϯΛಈ࡞ͤ͞ͳ͔ͬͨɽϗετ VM ͓Αͼήετ VM Ͱ. ⓒ 2015 Information Processing Society of Japan. 5.
(6) Vol.2015-OS-132 No.3 2015/2/26. ใॲཧֶձڀݚใࠂ IPSJ SIG Technical Report. yĞŶͲWŚLJƐ. ϳϬ. sDĞĂŵ. ϲϬ. yĞŶͲEĞƐƚ. ϱϬ. yĞŶͲWŚLJƐ. ϳϭ͘ϭ. Ɛ. 'ďƉƐ. ϴϬ. yĞŶͲůĂŶŬĞƚ. 䝖䝑ϰϬ 䝥 䞊ϯϬ 䝹 䝇 ϮϬ ϭϭ͘ϳ Ϭ͘Ϯ. Ϭ. Ϭ. ਤ 6. yĞŶͲEĞƐƚ. yĞŶͲůĂŶŬĞƚ. 㛫 䞁䝵 䝅 䞊 䝺 䜾 䜲䝬. ϭϬ Ϭ͘ϵ. sDĞĂŵ. ϭϬϬ ϵϬ ϴϬ ϳϬ ϲϬ ϱϬ ϰϬ ϯϬ ϮϬ ϭϬ Ϭ ϭϬϮϰ. σʔλసૹੑೳ. ਤ 7. ϮϬϰϴ. 䝯䝰䝸䝃䜲䝈D. ϯϬϳϮ. ϰϬϵϲ. ϚΠάϨʔγϣϯ࣌ؒ. HVM ήετΛಈ࡞ͤͨ͞ɽϗετཧ VM Ͱ Linux ϱϬϬ. 3.2.0ɼήετཧ VM Ͱ Linux 3.5.0 Λಈ࡞ͤͨ͞ɽ 2 ͭͷϗετ VM ʹ CPU Λ 3 ͭͣݸɼϝϞϦΛ 10GB ͓Αͼ 9.1GB ͷϝϞϦΛׂΓͯͨɽήετ VM ʹɼϗ ετ VM ʹׂΓͯͨϦιʔεͷɼ1 ݸͷ CPU ͓Αͼ. 128MBʙ4GB ͷϝϞϦΛׂΓͯͨɽ5.9 અͷ࣮ݧΛআ͍ ͯɼήετཧ VM ʹ 1 ݸͷ CPU ͓ΑͼΓͷ 9.5GB. yĞŶͲůĂŶŬĞƚ ϯϮϴ. ϯϱϬ ϯϬϬ. 䝖䝑ϮϱϬ 䝥 䞊ϮϬϬ 䝹 䝇ϭϱϬ ϴϮ. ϭϬϬ. ͷϝϞϦΛׂΓͯͨɽήετཧ VM ͷ CPU ׂΓ. ϱϬ. ͯΛ 2 ݸҎ্ʹ͢Δͱ΄ͱΜͲͷ߹ͰϚΠάϨʔγϣϯ. Ϭ. ͕࣌ؒ͘ͳͬͨͨΊɼ1 ׂ͚ͩݸΓͯΔΑ͏ʹͨ͠ɽ. yĞŶͲEĞƐƚ. ϰϬϬ DďƉƐ. ׂͣͭΓͯͨɽϗετཧ VM ʹΓͷ 2 ݸͷ CPU. yĞŶͲWŚLJƐ ϰϯϯ. ϰϱϬ. ਤ 8. SSH τϯωϧΛ༻͍ͨ߹ͷσʔλసૹੑೳ. (4) ͷγεςϜߏͰɼϋΠύʔόΠβͱͯ͠ Xen 4.2.2 Λ༻͍ɼ1 ͭͷཧ VM Λಈ࡞ͤͨ͞ɽҰํͷϚγ. VMBeam ͕࠷ߴʹϚΠάϨʔγϣϯΛߦ͏͜ͱ͕Ͱ. ϯͰ͞Βʹ VM Λ 1 ͭಈ࡞ͤͨ͞ɽཧ VM ʹ 2 ݸ. ͖ɼήετ VM ͷϝϞϦαΠζ͕ 4GB ͷ߹Ͱ 16.3 ඵ. ͷ CPU ͓Αͼ 29GB ͷϝϞϦΛׂΓͯɼVM ্ͷή. ͰϚΠάϨʔγϣϯ͕ͨྃ͠ɽ. ετ VM ͱಉ͡ͷΛಈ࡞ͤͨ͞ɽҎԼɼϚΠάϨʔγϣ ϯରͷ VM ͷ͜ͱΛήετ VM ͱ૯শ͢Δɽ. Xen-Phys ͱൺֱ͢ΔͱɼVMBeam ϚΠάϨʔγϣϯ Λ 1.1ʙ5.8 ഒߴʹߦ͑ͨɽҰํɼωετͨ͠ԾԽΛ ར༻ͨ͠ଞͷγεςϜͷϚΠάϨʔγϣϯੑೳԼ͠. 5.2 σʔλసૹੑೳ. ͨɽXen-Blanket Ͱ 1.1ʙ1.3 ഒʹͳΓɼXen-Nest Ͱ. ௨৴ੑೳΛൺֱ͢ΔͨΊʹɼԾԽγεςϜؒͰͷσʔλ. 2.3ʙ3.7 ഒʹͳͬͨɽXen-Nest ʹ͓͚ΔੑೳԼͷ. సૹͷεϧʔϓοτΛܭଌͨ͠ɽXen-Nest ͱ Xen-Blanket. ݪҼɼωοτϫʔΫεϧʔϓοτ͕͍͜ͱͰ͋ΔɽҰ. Ͱήετཧ VM Ͱ iperf Λ࣮ߦ͠ɼXen-Phys Ͱ. ํɼXen-Blanket ʹ͓͚ΔੑೳԼͷݪҼਤ 8 ʹࣔ͢Α. ཧ VM Ͱ iperf Λ࣮ߦͨ͠ɽVMBeam ʹ͍ͭͯήετ. ͏ʹɼSSH ʹΑΔ҉߸ԽͷΦʔόϔουͰ͋Δɽ. VM ؒϝϞϦڞ༗Λ༻͍ͨσʔλసૹੑೳΛଌఆ͢Δϕϯ νϚʔΫΛ࡞ͯ͠ଌఆΛߦͬͨɽ͜ͷϕϯνϚʔΫή ετཧ VM Ͱಈ࡞ͤͨ͞ɽ. 4 ͭͷγεςϜʹ͓͚ΔεϧʔϓοτΛਤ 6 ʹࣔ͢ɽ. 5.4 μϯλΠϜ ήετ VM ʹׂΓͯΔϝϞϦαΠζΛ 5.3 અͷ࣮ͱݧ ಉ͡Α͏ʹม͑ͯɼϚΠάϨʔγϣϯதͷήετ VM ͷ. VMBeam ͷεϧʔϓοτଞͷͲͷγεςϜΑΓେ෯. μϯλΠϜΛܭଌͨ͠ɽμϯλΠϜͷฏۉΛਤ 9 ʹࣔ. ʹߴ͔ͬͨɽXen-Blanket ͷԾωοτϫʔΫ Xen-Phys. ͢ɽ͜ͷ݁ՌΑΓɼμϯλΠϜϝϞϦαΠζʹ΄΅ґ. ͰΘΕΔཧωοτϫʔΫͷ 12.5 ഒߴͰ͕͋ͬͨɼ. ଘ͠ͳ͍͜ͱ͕͔ΔɽVMBeam ͷμϯλΠϜ 0.6 ඵ. VMBeam ͷ 6.1 ഒͰ͋ͬͨɽXen-Nest ʹ͓͚ΔԾ. ఔͰ͋Δ͕ɼXen-Phys ΑΓ 0.2 ඵఔ͍ɽ͜Εω. ωοτϫʔΫཧωοτϫʔΫΑΓ 3.8 ഒͰ͋ͬͨɽ. ετͨ͠ԾԽͷΦʔόϔουͷͨΊͰ͋ΔɽϚΠάϨʔ. 5.3 ϚΠάϨʔγϣϯ࣌ؒ. Ίʹଟ͘ͷϋΠύʔίʔϧΛൃߦ͢Δඞཁ͕͋Γɼωετ. γϣϯͷ࠷ऴஈ֊Ͱήετ VM ͷ CPU ঢ়ଶΛऔಘ͢Δͨ ήετ VM ʹׂΓͯΔϝϞϦαΠζΛ 128MB ͔Β. 4GB ·Ͱม͑ͯɼϚΠάϨʔγϣϯʹ͔͔Δ࣌ؒΛܭଌ͠ ͨɽxl migrate ίϚϯυͷ࣮ߦ࣌ؒͷฏۉΛਤ 7 ʹࣔ͢ɽ ⓒ 2015 Information Processing Society of Japan. ͨ͠ԾԽͷӨ͕ڹେ͖͍ɽ ҰํɼXen-Nest ͷμϯλΠϜ VMBeam ΑΓ 1.3 ഒ ఔ͘ͳͬͨɽXen-Nest ͷԾωοτϫʔΫͰ. 6.
(7) Vol.2015-OS-132 No.3 2015/2/26. ใॲཧֶձڀݚใࠂ IPSJ SIG Technical Report yĞŶͲWŚLJƐ. sDĞĂŵ. yĞŶͲEĞƐƚ. yĞŶͲWŚLJƐ. yĞŶͲůĂŶŬĞƚ. ϭ͘ϰ. ϭ͘Ϭ. Ɛ. Ɛ. ϭ͘Ϯ. sDĞĂŵ. yĞŶͲEĞƐƚ. yĞŶͲůĂŶŬĞƚ. Ϯ͘Ϭ ϭ͘ϴ ϭ͘ϲ ϭ͘ϰ ϭ͘Ϯ ϭ͘Ϭ Ϭ͘ϴ Ϭ͘ϲ Ϭ͘ϰ Ϭ͘Ϯ Ϭ͘Ϭ. 䝮 䜲䝍 䞁 䜴 䝎. 䝮 䜲䝍Ϭ͘ϴ 䞁Ϭ͘ϲ 䜴 䝎Ϭ͘ϰ Ϭ͘Ϯ Ϭ͘Ϭ Ϭ. ϭϬϮϰ. ϮϬϰϴ. ϯϬϳϮ. 䝯䝰䝸䝃䜲䝈D. Ϭ. ϰϬϵϲ. ਤ 11. ਤ 9 μϯλΠϜ. yĞŶͲWŚLJƐ. sDĞĂŵ. yĞŶͲEĞƐƚ. yĞŶͲůĂŶŬĞƚ. ϳϱϬϬ. Ɛ. ϯϱϬ. ϰ͘Ϭ. ϯ͘ϵ. yĞŶͲWŚLJƐ ϯ͘ϴ. sDĞĂŵ yĞŶͲEĞƐƚ. ϯ͘ϱ '. ϭϬϬϬϬ. ϝϞϦॻ͖͑Λߦ͏ήετ VM ͷμϯλΠϜ. ϰ͘Ϭ. 㛫ϯϬϬ 䞁䝵ϮϱϬ 䝅ϮϬϬ 䞊 䝺ϭϱϬ 䜾 䜲䝬ϭϬϬ. ϱϬϬϬ. 䝎䞊䝔䜱䝺䞊䝖ƉĂŐĞƐͬƐ. ϰ͘ϱ. ϰϬϬ. yĞŶͲůĂŶŬĞƚ. ϯ͘Ϭ. 㔞Ϯ͘ϱ ㏦ ㌿ 䝍䞊Ϯ͘Ϭ 䝕ϭ͘ϱ. ϱϬ. ϭ͘Ϭ. Ϭ Ϭ. ਤ 10. ϮϱϬϬ. ϮϱϬϬ. ϱϬϬϬ. 䝎䞊䝔䜱䝺䞊䝖ƉĂŐĞƐͬƐ. ϳϱϬϬ. ϭϬϬϬϬ. ϝϞϦॻ͖͑Λߦ͏ήετ VM ͷϚΠάϨʔγϣϯ࣌ؒ. Ϭ͘ϱ Ϭ͘ϬϬϬϭ Ϭ͘Ϭ. ਤ 12. ϚΠάϨʔγϣϯதͷωοτϫʔΫసૹྔ. ͋ΔͨΊɼ࠷ऴஈ֊Ͱͷॻ͖͑ΒΕͨϝϞϦͷసૹʹ ͕͔͔࣌ؒΔͨΊͰ͋ΔɽXen-Blanket ͷμϯλΠϜ. Xen-Nest ΑΓ͞Βʹ 1.3ʙ1.7 ഒͰ͋ͬͨɽ͜ͷݪ Ҽෆ໌Ͱ͋Δɽ. 5.6 ωοτϫʔΫෛՙ 4GB ͷϝϞϦΛׂΓͯͨήετ VM ΛϚΠάϨʔγϣ ϯ͢ΔࡍʹɼωοτϫʔΫΛհͯ͠సૹ͞ΕΔσʔλྔΛ ܭଌͨ͠ɽϚΠάϨʔγϣϯதͷτʔλϧͷσʔλసૹྔ. 5.5 ήετ VM ͷϝϞϦॻ͖͑ͷӨڹ ήετ VM ͷϝϞϦॻ͖͕͑ϚΠάϨʔγϣϯੑ ೳʹ͢΅ٴӨڹΛௐΔͨΊʹɼࢦఆͨ͠ϨʔτͰϝϞϦ. Λਤ 12 ʹࣔ͢ɽVMBeam ͰଞͷγεςϜͱҧ͍ɼϝ ϞϦΠϝʔδͦͷଞͷσʔλసૹʹωοτϫʔΫΛ༻͍ ͳ͍ͨΊɼσʔλసૹྔΛ 0.003%ҎԼʹ͍͖ͯͰݮΔɽ. ϖʔδΛμʔςΟʹ͠ͳ͕ΒϚΠάϨʔγϣϯΛߦͬͨɽ. τʔλϧͷσʔλసૹྔ͕ 0 ʹͳΒͳ͍ͷɼ্࣮ͷ. μʔςΟϨʔτຖඵ 1000ʙ10000 ϖʔδ·ͰมԽͤ͞. ʹΑΓ VM ͷίϯϑΟάͳͲͷసૹʹ·ͩԾωοτ. ͨɽ͜ͷ࣮Ͱݧɼήετ VM ͷμʔςΟɾϏοτϚοϓ. ϫʔΫΛ༻͍ͯ͠ΔͨΊͰ͋Δɽ. Λॻ͖͑Δ͜ͱͰɼਖ਼֬ͳμʔςΟϨʔτΛҡ࣋͢ΔΑ ͏ʹͨ͠ɽήετ VM ͷϝϞϦαΠζ 2GB ͱ͠ɼμʔ. 5.7 CPU ෛՙ. ςΟʹ͢ΔϝϞϦྖҬ 1GB ͱͨ͠ɽͦΕͧΕͷμʔςΟ. 4GB ͷϝϞϦΛׂΓͯͨήετ VM ΛϚΠάϨʔγϣ. Ϩʔτʹ͓͚ΔϚΠάϨʔγϣϯ͓࣌ؒΑͼμϯλΠϜ. ϯ͍ͯ͠Δؒͷϗετશମͷ CPU ෛՙΛܭଌͨ͠ɽϚΠ. Λਤ 10ɼਤ 11 ʹࣔ͢ɽ. άϨʔγϣϯதͷ CPU ༻ͷมԽΛਤ 13 ʹࣔ͢ɽ·. ͜ͷ݁ՌΑΓɼVMBeam Ҏ֎ͷγεςϜͰϚΠάϨʔ. ͨɼϚΠάϨʔγϣϯதʹΘΕͨτʔλϧͷ CPU ࣌ؒ. γϣϯ࣌ؒɼμϯλΠϜͱʹେ͖͘ӨڹΛड͚Δ͜. Λਤ 14 ʹࣔ͢ɽVMBeam ͷ CPU ༻ Xen-Nest . ͱ͕͔ͬͨɽXen-Phys ͰϚΠάϨʔγϣϯ͕࣌ؒ. Xen-Blanket ΑΓগ͍͕͠ɼXen-Phys ͱൺֱ͢Δͱ 2. 2.7ʙ157 ඵ૿Ճ͠ɼμϯλΠϜ͕࠷େͰ 0.1 ඵ૿Ճ͠. ഒఔͷෛՙ͕͔͔͍ͬͯΔ͜ͱ͕͔Δɽ͜ΕҠૹ. ͨɽXen-Blanket ʹ͓͍ͯϚΠάϨʔγϣϯ͕࣌ؒ 8.1. ͱݩҠૹઌͷॲཧΛಉҰϗετͰߦ͍ͬͯΔͨΊͰ͋Δɽ. ඵʙ299 ඵ૿Ճ͠ɼμϯλΠϜ͕࠷େͰ 13.8 ඵ૿Ճ͠. ͔͠͠ɼτʔλϧ CPU ࣌ؒͰൺֱ͢ΔͱɼVMBeam ͷ. ͨɽXen-Nest ͰϚΠάϨʔγϣϯ͕࣌ؒ 95.9ʙ841 ඵ. CPU ෛՙ Xen-Phys ͷҠૹݩɼҠૹઌͱൺֱͯͦ͠Εͧ. ૿Ճ͠ɼμϯλΠϜ͕࠷େͰ 101 ඵ૿Ճͨ͠ɽ. Ε 29%ɼ31%ͷෛՙʹ͑ΒΕͨɽ. ⓒ 2015 Information Processing Society of Japan. 7.
(8) Vol.2015-OS-132 No.3 2015/2/26. ใॲཧֶձڀݚใࠂ IPSJ SIG Technical Report. 㸦⛣㏦ඖ䠅. 㸦⛣㏦ඛ䠅. yĞŶͲWŚLJƐ sDĞĂŵ yĞŶͲůĂŶŬĞƚ. ϯϬϬ. ϱϬ '. й. 㸦⛣㏦ඖ䠅 㸦⛣㏦ඛ䠅. ϱϰ͘ϲ. yĞŶͲWŚLJƐ yĞŶͲWŚLJƐ. sDĞĂŵ. ϮϱϬ. ϰϬ. 㔞 䝇 䝉ϯϬ 䜽 䜰 䝸 ϮϬ 䝰 䝯. ϮϬϬ. ⋡⏝ϭϱϬ . Wh. ϲϬ. yĞŶͲWŚLJƐ yĞŶͲEĞƐƚ. ϭϬϬ ϱϬ. ϯϴ͘ϳ. yĞŶͲEĞƐƚ yĞŶͲůĂŶŬĞƚ Ϯϳ͘ϱ Ϯϯ͘ϲ. ϭϬ. Ϭ Ϭ. ϱϬ. ϭϬϬ. ਤ 13. ϭϱϬ. ϮϬϬ. ⤒㐣㛫Ɛ. ϯϬϬ. ϯϱϬ. ϰϬϬ. yĞŶͲWŚLJƐ. Ϭ Ϭ. ϚΠάϨʔγϣϯதͷ CPU ෛՙ. 㸦⛣㏦ඖ䠅 㸦⛣㏦ඛ䠅. ϵϬϬϬϬ. ϮϱϬ. ਤ 15. ϚΠάϨʔγϣϯதͷϝϞϦΞΫηεྔͷ֓. DMA ΛΤϛϡϨʔτͯ͠Ҡૹઌͷήετཧ VM ͷ. ϴϭϲϲϬ. yĞŶͲWŚLJƐ. ϳϬϬϬϬ. sDĞĂŵ. 㛫ϲϬϬϬϬ . yĞŶͲEĞƐƚ. ཧ VM Ͱड৴ॲཧ͕ߦΘΕΔɽͦͷͨΊɼήετ VM ͷ. yĞŶͲůĂŶŬĞƚ. ϝϞϦαΠζͷ 14 ഒͷϝϞϦΞΫηε͕ߦΘΕΔͱߟ͑. Wh. Ɛ. ϴϬϬϬϬ. ϱϬϬϬϬ. ιέοτόοϑΝʹσʔλΛॻ͖ࠐΉɽͦͷޙɼήετ. ΒΕΔɽҰํɼXen-Blanket ͷ߹ʹɼҠૹݩͷήετ. 䛾ϰϬϬϬϬ 䝹 䝍ϯϬϬϬϬ 䞊 䝖. Ϯϯϵϲϱ. ཧ VM ͰιέοτόοϑΝʹॻ͖ࠐ·Εͨσʔλϗ ετཧ VM ͷΧʔωϧܦ༝ͰɼҠૹઌͷήετཧ VM. ϮϬϬϬϬ ϭϬϭϵϭ ϵϱϯϵ. ϭϬϬϬϬ. ϯϬϬϳ. ͷ SSH αʔόͷόοϑΝʹॻ͖ࠐ·ΕΔɽͦͷͨΊɼ. VM ͷϝϞϦαΠζͷ 10 ഒͷϝϞϦΞΫηεͰࡁΉͱߟ. Ϭ. ਤ 14. ϚΠάϨʔγϣϯதͷτʔλϧ CPU ࣌ؒ. 5.8 ϝϞϦෛՙ 4GB ͷϝϞϦΛׂΓͯͨήετ VM ΛϚΠάϨʔγϣ. ͑ΒΕΔɽ. 5.9 ήετ VM ͷӨڹ ϚΠάϨʔγϣϯʹΑΔγεςϜͷෛՙ͕ήετ VM. ϯ͢ΔࡍͷϝϞϦΞΫηεྔΛଌఆͨ͠ɽ࣮ࡍͷϝϞϦ. ͷੑೳʹ͢΅ٴӨڹΛௐΔͨΊʹɼ1GB ͷϝϞϦΛׂΓ. ΞΫηεྔΛଌఆ͢Δ͜ͱͰ͖ͳ͔ͬͨͨΊɼస. ͯͨήετ VM Ͱ Apache ΣϒαʔόΛಈ࡞ͤͨ͞ɽ. ૹ͞ΕͨϝϞϦϖʔδͱϝϞϦίϐʔճ͔Β֓ࢉ͠. httperf Λ༻͍ͯϚΠάϨʔγϣϯΛߦΘͳ͍௨ৗ࣌ͱϚ. ͨɽτʔλϧͷϝϞϦΞΫηεྔͷ֓Λਤ 15 ʹࣔ͢ɽ. ΠάϨʔγϣϯதʹ͓͚ΔεϧʔϓοτΛଌఆͨ͠ɽΣ. VMBeam ͰҠૹݩͷήετ VM ͷϝϞϦΛҠૹઌʹ࠶. ϒαʔόͷͨΊͷωοτϫʔΫॲཧͱϚΠάϨʔγϣϯॲ. ஔ͢Δ͚ͩͰ͋ΔͨΊɼϝϞϦΞΫηεߦΘΕͳ͍ɽ. ཧ͕ήετཧ VM Ͱ͢߹ڝΔͨΊɼ͜ͷ࣮Ͱݧήετ. Xen-Phys ʹ͍ͭͯɼҠૹݩͷཧ VM ͷΧʔωϧ͕. ཧ VM ʹ 2 ݸͷ CPU ΛׂΓͯͨɽਤ 16 ͷ݁ՌΑΓɼ. VM ͷϝϞϦΛಡΈग़͠ɼιέοτόοϑΝܦ༝Ͱ SSH Ϋ. ͲͷγεςϜʹ͓͍ͯϚΠάϨʔγϣϯதͷεϧʔϓο. ϥΠΞϯτͷόοϑΝʹॻ͖ࠐΉɽSSH ΫϥΠΞϯτͦ. τԼ͍ͯ͠Δ͜ͱ͕͔Δɽ͔͠͠ɼXen-Phys Ͱ. ͷσʔλΛ҉߸Խͯ͠ SSH αʔόʹૹ৴͢Δɽͦͷࡍʹɼ. 12%͔͠Լ͍ͯ͠ͳ͍ͷʹରͯ͠ɼVMBeam Ͱ 29%ɼ. NIC ͕ιέοτόοϑΝ্ͷૹ৴σʔλΛ DMA ͰಡΈग़. Xen-Nest Ͱ 65%Լ͍ͯ͠Δɽ͜ΕɼVMBeam ͱ. ͢ɽҰํɼҠૹઌͷཧ VM Ͱɼड৴ͨ͠σʔλΛ NIC. Xen-Nest ͰԾωοτϫʔΫ͕ϘτϧωοΫʹͳͬͨ. ͕ DMA ͰιέοτόοϑΝʹॻ͖ࠐΈɼΧʔωϧ͕ SSH. ͨΊͱߟ͑ΒΕΔɽ. αʔόͷόοϑΝʹॻ͖ࠐΉɽSSH αʔόͦͷσʔλΛ. ҰํɼXen-Blanket ͰεϧʔϓοτͷԼ͕ 14%Ͱɼ. ෮߸ͯ͠ΧʔωϧͷιέοτόοϑΝܦ༝ͰϚΠάϨʔ. Xen-Phys ͱ΄΅ಉఔͷԼʹ͑ΒΕ͍ͯΔɽ͜Εɼ. γϣϯɾαʔόʹૹ৴͢ΔɽϚΠάϨʔγϣϯɾαʔό. Xen-Blanket Ͱήετ VM ͕ߴͳԾωοτϫʔΫΛ. ड৴ͨ͠σʔλΛ VM ͷϝϞϦʹॻ͖ࠐΉɽͦͷͨΊɼҠ. ༻Ͱ͖ΔͨΊͩͱߟ͑ΒΕΔɽXen-Blanket ͱಉ͡Ծ. ૹͰݩήετ VM ͷϝϞϦαΠζͷ 6 ഒɼҠૹઌͰ 7. ωοτϫʔΫΛ༻͍Δ͜ͱͰɼVMBeam Ͱεϧʔϓοτ. ഒͷϝϞϦΞΫηε͕ߦΘΕΔͱߟ͑ΒΕΔɽ. ͷԼΛ͑Δ͜ͱ͕Ͱ͖ΔՄೳੑ͕͋Δɽ·ͨɼωετ. Xen-Nest ͷ߹ʹɼҠૹݩͷήετཧ VM Ͱͷૹ. ͨ͠ԾԽΛ༻͍ΔγεςϜͷ௨ৗ࣌ͷੑೳ Xen-Phys. ৴ॲཧͷޙɼϗετཧ VM ্ͷ QEMU ͕ DMA ΛΤ. ͷ 34ʙ40%Ͱ͕͋ͬͨɼจ[ ݙ6] Ͱใࠂ͞Ε͍ͯΔΑ͏ʹ. ϛϡϨʔτͯ͠σʔλΛಡΈࠐΈɼTAP σόΠεܦ༝ͰҠ. ࠓޙվળ͞Ε͍ͯ͘ͱߟ͑ΒΕΔɽ. ૹઌͷϗετ VM ༻ͷ QEMU ʹૹ৴͢Δɽͦͷ QEMU. ⓒ 2015 Information Processing Society of Japan. 8.
(9) Vol.2015-OS-132 No.3 2015/2/26. ใॲཧֶձڀݚใࠂ IPSJ SIG Technical Report ϭϰϬϬ. ϭϭϯϴ. ϭϮϬϬ ƌĞƋͬƐ. ㏻ᖖ 䝬䜲䜾䝺䞊䝅䝵䞁୰. ϭϯϬϬ. ϖʔδڞ༗͢Δ͜ͱ͕Ͱ͖ΔɽPotemkin [16] طଘͷ. VM ͱͦΕΛ࡞ʹجͨ͠ VM ͷؒͰϖʔδΛڞ༗Ͱ͖ Δɽ͜ΕΒͷٕज़ͯ͢ɼڞ༗͍ͯ͠Δϖʔδ͕ॻ͖. ϭϬϬϬ. ͑ΒΕΔͱڞ༗ΛΊΔɽҰํɼVMBeam ͷήετؒϝ. 䝖䝑 ϴϬϬ 䝥 ϲϬϬ 䞊 䝹 䝇 ϰϬϬ. ϞϦڞ༗Ͱɼϖʔδʹมߋ͕ͳ͞Εͯϖʔδͷڞ༗Λ ϱϮϬ ϰϰϯ. ϰϰϯ. ϰϰϲ. ϯϭϰ. ଓ͚Δɽ. VM ϚΠάϨʔγϣϯΛߦΘͣʹԾԽγεςϜΛߴ. Ϯϭϵ ϮϬϬ. ʹιϑτΣΞएԽ͢ΔڀݚߦΘΕ͖ͯͨɽWarm-VM. Ϭ. Reboot [2], [17] VM Λ࠶ىಈͤͣʹϋΠύʔόΠβͱ. yĞŶͲWŚLJƐ. ਤ 16. sDĞĂŵ. yĞŶͲEĞƐƚ. yĞŶͲůĂŶŬĞƚ. ϚΠάϨʔγϣϯʹΑΔεϧʔϓοτͷԼ. ཧ VM ͚ͩΛߴʹιϑτΣΞएԽ͢ΔɽιϑτΣ ΞएԽͷࡍʹ VM ͷϝϞϦΠϝʔδΛϝΠϯϝϞϦ্ʹ อ͓͖࣋ͯ͠ɼιϑτΣΞएԽͦʹޙͷϝϞϦΠϝʔδ. 6. ؔ࿈ڀݚ. Λ࠶ར༻ͯ͠ߴʹ VM Λ෮͢ݩΔɽ͔͠͠ɼιϑτΣ ΞएԽத VM ͕ఀࢭͯ͠͠·͍μϯλΠϜ͕ൃੜ͢. Microvisor [7] ɼγεςϜͷϝϯςφϯεΛผͷ VM. ΔɽReHype [18] ཧ VM Λ࠶ىಈͤͣʹϋΠύʔόΠ. ্Ͱߦ͍ɼϝϯςφϯε ʹޙVM ؒͰΞϓϦέʔγϣϯͷ. βͷΈΛιϑτΣΞएԽ͢Δ͜ͱ͕Ͱ͖Δɽ͔͠͠ɼϋ. ϚΠάϨʔγϣϯΛߦ͏ɽωετͨ͠ԾԽΛ༻͍ΔΛ. ΠύʔόΠβͷঢ়ଶͷଟ͘ΛҾ͖͙ͨܧΊɼιϑτΣΞ. আ͍ͯ VMBeam Microvisor ʹࣅ͍ͯΔɽ͔͠͠ɼMi-. एԽͰ͖ΔՕॴݶఆ͞ΕΔɽ. crovisor Ͱϝϯςφϯε࣌Ҏ֎ԾԽΛߦΘͳ͍Α͏. 7. ·ͱΊ. ʹ͢ΔԾԽʹযΛ͍ͯͯΔͷʹରͯ͠ɼVMBeam ͰϚΠάϨʔγϣϯͷߴԽʹযΛ͍ͯͯΔɽ. InfiniBand ͷ RDMA Λ༻͍ͨϚΠάϨʔγϣϯ [9] ɼ. ຊߘͰɼԾԽγεςϜͷܰྔͳιϑτΣΞएԽΛ ࣮͢ݱΔ VMBeam ΛఏҊͨ͠ɽVMBeam ͰɼԾԽγ. ϋʔυΣΞʹΑΔҰճͷίϐʔͷΈͰྃ͢Δ͜ͱ͕Մ. εςϜͷιϑτΣΞएԽ࣌ʹɼωετͨ͠ԾԽΛ༻. ೳͱͳ͍ͬͯΔɽVM ͷϝϞϦΠϝʔδɼҠૹઌͷϗε. ͍ͯಉҰϗετ্ͰผͷԾԽγεςϜΛىಈ͢Δɽͦͷ. τʹ৽ͨʹ࡞͞Εͨ VM ͷϝϞϦʹɼRDMA Λར༻͠. ԾԽγεςϜ্ʹθϩίϐʔɾϚΠάϨʔγϣϯΛ༻͍. ͯίϐʔ͞ΕΔɽ͔͠͠ɼϚΠάϨʔγϣϯதʹมߋ. ͯߴʹ VM ΛϚΠάϨʔγϣϯ͢ΔɽθϩίϐʔɾϚΠ. ͞ΕͨϝϞϦͷ࠶ૹඞཁͱͳΔɽ·ͨɼϝϞϦΠϝʔδ. άϨʔγϣϯҠૹݩͷ VM ͷϝϞϦΛҠૹઌʹ࠶ஔ͢. ͷ҉߸ԽΛߦ͏͜ͱ͕Ͱ͖ͣɼ҉߸ԽΛߦ͏ʹɼ3 ճͷ. Δ͜ͱ͕Ͱ͖ΔɽXen Λ༻͍ͯ VMBeam ͷ࣮Λߦ͍ɼ. ίϐʔΛඞཁͱ͢Δɽ ͜Ε·ͰʹɼVM ϚΠάϨʔγϣϯΛߴԽ͢Δ༷ʑͳ. VM ͷϚΠάϨʔγϣϯΛैདྷγεςϜΑΓߴ͔ͭ ෛՙͰߦ͑Δ͜ͱΛࣔͨ͠ɽ. ख๏͕ఏҊ͞Ε͖ͯͨɽϙετίϐʔɾϚΠάϨʔγϣ. ࠓޙͷ՝ɼιϑτΣΞएԽ࣌Ҏ֎ʹ͓͚Δωετ. ϯ [10] VM ͷ CPU ঢ়ଶ͚ͩΛҠૹઌϗετʹҠͨ͠. ͨ͠ԾԽͷΦʔόϔουݮͷͨΊɼϗετɾϋΠύʔ. ͰޙΦϯσϚϯυʹϝϞϦϖʔδͷసૹΛߦ͏ɽ͜ͷख๏. όΠβʹ͓͚ΔԾԽ [7] ΛՄೳʹ͢Δ͜ͱͰ͋Δɽ·. Ͱɼॻ͖͑ΒΕͨϝϞϦΛ࠶ૹ͢Δඞཁ͕ͳ͍ɽσϧ. ͨɼϗετɾϋΠύʔόΠβͱήετɾϋΠύʔόΠβʹ. λѹॖٕज़ϚΠάϨʔγϣϯதʹసૹ͞ΕΔϝϞϦαΠ. ͓͚ΔιϑτΣΞɾΤʔδϯάͷҧ͍Λௐࠪ͢Δ͜ͱ. ζΛݮΒ͢ͷʹ༻͍ΒΕΔ [11]ɽPMigrate [12] ϚΠά. ࠓޙͷ՝Ͱ͋Δɽ. ϨʔγϣϯΛฒྻʹߦ͏͜ͱͰϚΠάϨʔγϣϯ࣌ؒΛ ͢ݮΔɽ͔͠͠ɼଟ͘ͷٕज़͕ VM ϚΠάϨʔγϣϯʹ. ࢀߟจݙ. ΑͬͯΘΕΔ CPU ࣌ؒΛ૿Ճͤͯ͞͠·͏ɽVMBeam. [1]. Ͱτʔλϧ CPU ࣌ؒΛ͠ݮɼγεςϜͷෛՙΛܰ ͖ͰݮΔɽ. VMBeam ͰϥΠϒϚΠάϨʔγϣϯͷͨΊʹ VM ͷϝ. [2]. ϞϦڞ༗Λར༻͍ͯ͠Δ͕ɼVM ؒͰͷϝϞϦڞ༗ٕज़ओ ʹϝϞϦΛઅ͢ΔͨΊʹ։ൃ͞Ε͖ͯͨɽVMware ESX. [3]. αʔόఆظతʹ VM ͷϝϞϦΛεΩϟϯ͠ɼVM ؒͰ ڞ௨͍ͯ͠ΔϖʔδΛڞ༗͢Δ [13]ɽSatori [14] ڞ༗Λ ҙࣝͨ͠ϒϩοΫσόΠεΛ༻͍Δ͜ͱͰɼ࣌ؒͰڞ ༗Λߦ͏͜ͱ͕Ͱ͖ΔɽDifference Engine [15] ࣅ͍ͯΔ. ⓒ 2015 Information Processing Society of Japan. [4]. Huang, Y., Kintala, C., Kolettis, N. and Fulton, N. D.: Software Rejuvenation: Analysis, Module and Applications, Proc. Intl. Symp. Fault-Tolerant Computing, pp. 381–390 (1995). Kourai, K. and Chiba, S.: Fast Software Rejuvenation of Virtual Machine Monitors, IEEE Trans. Dependable and Secure Comput., pp. 839–851 (2011). Barham, P., Dragovic, B., Fraser, K., Hand, S., Harris, T., Ho, A., Neugebauer, R., Pratt, I. and Warfield, A.: Xen and the Art of Virtualization, Proc. Symp. Operating Systems Principles, pp. 164–177 (2003). Machida, F., Xiang, J., Tadano, K. and Maeno, Y.: Combined Server Rejuvenation in a Virtualized Data. 9.
(10) ใॲཧֶձڀݚใࠂ IPSJ SIG Technical Report. [5]. [6]. [7]. [8]. [9]. [10]. [11]. [12]. [13]. [14]. [15]. [16]. [17]. [18]. Vol.2015-OS-132 No.3 2015/2/26. Center, Proc. Intl. Conf. Autonomic & Trusted Computing, pp. 486–493 (2012). Clark, C., Fraser, K., Hand, S., Hansen, J. G., Jul, E., Limpach, C., Pratt, I. and Warfield, A.: Live Migration of Virtual Machines, Proc. Symp. Networked Systems Design & Implementation, pp. 273–286 (2005). Ben-Yehuda, M., Day, M. D., Dubitzky, Z., Factor, M., Har’El, N., Gordon, A., Liguori, A., Wasserman, O. and Yassour, B.-A.: The Turtles Project: Design and Implementation of Nested Virtualization., Proc. Conf. Operating Systems Disign & Implementation, Vol. 10, pp. 423–436 (2010). Lowell, D. E., Saito, Y. and Samberg, E. J.: Devirtualizable Virtual Machines Enabling General, Singlenode, Online Maintenance, Proc. Intl. Conf. Architectural Support for Programming Languages and Operating Systems, pp. 211–223 (2004). Williams, D., Jamjoom, H. and Weatherspoon, H.: The Xen-Blanket: Virtualize Once, Run Everywhere, Proc. European Conf. Computer Systems, pp. 113–126 (2012). Huang, W., Gao, Q., Liu, J. and Panda, D. K.: High Performance Virtual Machine Migration with RDMA Over Modern Interconnects, Proc. Intl. Conf. Cluster Computing, pp. 11–20 (2007). Hines, M. R. and Gopalan, K.: Post-copy Based Live Virtual Machine Migration Using Adaptive Pre-paging and Dynamic Self-ballooning, Proc. Intl. Conf. Virtual Execution Environments, pp. 51–60 (2009). Sv¨ ard, P., Hudzia, B., Tordsson, J. and Elmroth, E.: Evaluation of Delta Compression Techniques for Efficient Live Migration of Large Virtual Machines, Proc. Intl. Conf. Virtual Execution Environments, pp. 111– 120 (2011). Song, X., Shi, J., Liu, R., Yang, J. and Chen, H.: Parallelizing Live Migration of Virtual Machines, Proc. Intl. Conf. Virtual Execution Environments, pp. 85–96 (2013). Waldspurger, C. A.: Memory Resource Management in VMware ESX Server, Proc. Symp. Operating Systems Design & Implementation, pp. 181–194 (2002). Murray, D. G., Steven, H. and Fetterman, M. A.: Satori: Enlightened Page Sharing, Proc. USENIX Annual Technical Conf. (2009). Gupta, D., Lee, S., Vrable, M., Savage, S., Snoeren, A. C., Varghese, G., Voelker, G. M. and Vahdat, A.: Difference Engine: Harnessing Memory Redundancy in Virtual Machines, Proc. Symp. Operating Systems Design & Implementation, pp. 85–93 (2010). Vrable, M., Ma, J., Chen, J., Moore, D., Vandekieft, E., Snoeren, A. C., Voelker, G. M. and Savage, S.: Scalability, Fidelity, and Containment in the Potemkin Virtual Honeyfarm, Proc. Symp. Operating Systems Principles, pp. 148–162 (2005). Kourai, K. and Chiba, S.: A Fast Rejuvenation Technique for Server Consolidation with Virtual Machines, Proc. Intl. Conf. Dependable Systems and Networks, pp. 245–255 (2007). Le, M. and Tamir, Y.: ReHype: Enabling VM Survival Across Hypervisor Failures, Proc. Intl. Conf. Virtual Execution Environments, pp. 63–74 (2011).. ⓒ 2015 Information Processing Society of Japan. 10.
(11)
関連したドキュメント
What relates to Offline Turing Machines in the same way that functional programming languages relate to Turing Machines?.. Int Construction.. Understand the transition from
12月 米SolarWinds社のIT管理ソフトウェア(orion platform)の
システムの許容範囲を超えた気海象 許容範囲内外の判定システム システムの不具合による自動運航の継続不可 システムの予備の搭載 船陸間通信の信頼性低下
エッジワースの単純化は次のよう な仮定だった。すなわち「すべて の人間は快楽機械である」という
建物敷地や身近な緑化の義務化 歩きやすい歩道の確保や 整ったまちなみの形成 水辺やまとまった緑など
それは10月31日の渋谷に於けるハロウィンのことなのです。若者たちの仮装パレード
• 燃料上の⼀部に薄い塗膜⽚もしく はシート類が確認されたが、いず れも軽量なものと推定され、除去
洋上環境でのこの種の故障がより頻繁に発生するため、さらに悪化する。このため、軽いメンテ