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
ペパボの考えるコンテナ仮想化の未来 /yatteiku-hakoniwa
Search
KONDO Uchio
July 13, 2017
Technology
8
3.1k
ペパボの考えるコンテナ仮想化の未来 /yatteiku-hakoniwa
2017/07/13 ペパボナイト@HGN
KONDO Uchio
July 13, 2017
Tweet
Share
More Decks by KONDO Uchio
See All by KONDO Uchio
大規模レガシーテストを 倒すための CI基盤の作り方 / #CICD2023
udzura
5
2.3k
Ruby x BPF in Action / RubyKaigi 2022
udzura
0
190
Narrative of Ruby & Rust
udzura
0
170
開発者生産性指標の可視化 / pepabo-four-keys
udzura
3
1.6k
Talk of RBS
udzura
0
390
Re: みなさん最近どうですか? / FGN tech meetup in 2021
udzura
0
710
Dockerとやわらかい仮想化 - ProSec-IT/SECKUN 2021 edition -
udzura
2
670
Device access filtering in cgroup v2
udzura
1
770
"Story of Rucy" on RubyKaigi takeout 2021
udzura
0
720
Other Decks in Technology
See All in Technology
CysharpのOSS群から見るModern C#の現在地
neuecc
2
3.2k
New Relicを活用したSREの最初のステップ / NRUG OKINAWA VOL.3
isaoshimizu
2
590
ExaDB-D dbaascli で出来ること
oracle4engineer
PRO
0
3.8k
オープンソースAIとは何か? --「オープンソースAIの定義 v1.0」詳細解説
shujisado
7
810
Evangelismo técnico: ¿qué, cómo y por qué?
trishagee
0
360
Terraform Stacks入門 #HashiTalks
msato
0
350
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
150
【Pycon mini 東海 2024】Google Colaboratoryで試すVLM
kazuhitotakahashi
2
500
信頼性に挑む中で拡張できる・得られる1人のスキルセットとは?
ken5scal
2
530
テストコード品質を高めるためにMutation Testingライブラリ・Strykerを実戦導入してみた話
ysknsid25
7
2.6k
いざ、BSC討伐の旅
nikinusu
2
780
Lexical Analysis
shigashiyama
1
150
Featured
See All Featured
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.8k
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.3k
Mobile First: as difficult as doing things right
swwweet
222
8.9k
For a Future-Friendly Web
brad_frost
175
9.4k
[RailsConf 2023] Rails as a piece of cake
palkan
52
4.9k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
840
YesSQL, Process and Tooling at Scale
rocio
169
14k
Keith and Marios Guide to Fast Websites
keithpitt
409
22k
Adopting Sorbet at Scale
ufuk
73
9.1k
Gamification - CAS2011
davidbonilla
80
5k
Optimizing for Happiness
mojombo
376
70k
Typedesign – Prime Four
hannesfritz
40
2.4k
Transcript
ϥϯλΠϜɺΦʔέετϨʔγϣϯɺશମ૾ ۙ౻͏͓ͪ(.01FQBCP *OD ϖύϘφΠτˏ'(/ ϖύϘͷߟ͑Δ ίϯςφԾԽͷະདྷ
ϥϯλΠϜɺΦʔέετϨʔγϣϯɺશମ૾ ۙ౻͏͓ͪ(.01FQBCP *OD ϖύϘφΠτˏ'(/ ϖύϘͷߟ͑Δ ਓؒͱίϯςφͷະདྷ
ΤϯδχΞ ۙ౻͏͓ͪ!VE[VSB ٕज़෦ٕज़ج൫νʔϜϓϦϯγύϧ )BDPOJXBͱ͍͏ίϯςφϥϯλΠϜͷ࡞ऀ IUUQIBDPOJXBNSVCZPSH
)BDPOJXB
࠷ۙͷίϯςφਓؒ׆ಈ w3VCZ,BJHJʮ8FMDPNFUP)BDPOJXBʯ w wʮΦϧλφςΟϒɾίϯςφ)BDPOJXBʯ!ίϯςφษڧձେࡕ wʮ$SFBUJOH$POUBJOFSTXJUI(PMBOHʯ!(FFLT8IP%SJOL wʮίϯςφΛʰकΔʱΈ͔ΒதΛཧղ͠Α͏ʯ!:"1$'VLVPLB 7JTJUIUUQTTQFBLFSEFDLDPNVE[VSBɹ
ࠓͷ͓
ࠓͷΞδΣϯμ wίϯςφۀք࠷ۙͷಈ͖ͷ͓͞Β͍ wίϯςφϥϯλΠϜͱΧʔωϧͷ wίϯςφΦʔέετϨʔγϣϯͱશମײͷ wͰɺϖύϘʁɹͱ͍͏͔ɺ)BDPOJXBʁ
ίϯςφϥϯλΠϜͱ Χʔωϧͷ
ίϯςφϥϯλΠϜͷ࠷ۙͷಈ͖ wϥϯλΠϜ࣮ʹෆՄܽͷΧʔωϧͷؚΊ͓ͯΓ·͢ w%PDLFSࣾʹΑΔ.PCZ1SPKFDUͷొ w-JOVY,JUͷొ w-JOVY,FSOFM w0SBDMF͕3BJMDBSΛൃද</&8>
%PDLFSࣾʹΑΔ.PCZ1SPKFDUͷొ w%PDLFS$POͰʮ.PCZ1SPKFDUʯͷൃද wಉ࣌ʹɺίϯςφͷίϯϙʔωϯτԽΛେʑతʹఏҊ͢Δ w-JOVY,JUɺDPOUBJOFSEɺ*OGSB,JUɺ%PDLFS$&SLU w.PCZɺ୯ʹ%PDLFS$&ͷԆઢ্ʹ͋Δɺͱ͍͏ΑΓɺ:".-ͳ Ͳͷهड़ΛϕʔεʹγεςϜΛΈཱͯΔखஈͱͯ͠ίϯςφΛબΜ Ͱ͍Δͷ IUUQXXXQVCMJDLFZKQCMPHEPDLFSNPCZ@QSPKFDUEPDLFSDPO@IUNM
-JOVY,JUͷొ wಉ͘͡%PDLFS$POͰൃද͞ΕΔ wʢओʹ.PCZΛλʔήοτͱͯ͠ʣۃͳ΄ͲʹܰྔͰɺίϯςφʹ ඞཁͳػೳΛߜͬͯ༗ޮԽͨ͠-JOVY wʢ-JOVY͕ίϯςφͷͨΊͷϋΠύʔόΠβʹ͍ۙͮͨҹʣ wҙ֎ͳ͜ͱʹ4&-JOVYͳͲ༗ޮͰͳ͘ɺQSPKFDUTͱ͍͏ܗͰਵ࣌ ରԠ͍ͯ͠ΔΑ͏ͩɻͦͷதʹɺTIJGUGTɺNFNMPHEͳͲڵຯਂ͍ ϓϩδΣΫτ͋Δ IUUQRJJUBDPNTBUPSV@UBLFVDIJJUFNTCFCBC
-JOVY,FSOFM w·ͩ·ͩίϯςφؔ࿈ͷػೳՃ͕͋Δ wSENBDHSPVQDPOUSPMMFSͷొ w 3%."*OpOJ#BOEʹؔ͢ΔϦιʔεͷ౷ܭΛऔಘͨ͠Γ੍ݶΛ͢Δͦ͏ͳ wࣗͷ1*%/4͚ͩͰͳ͘ɺࢠϓϩηε༻ͷ1*%/4FYQPTF͢ΔΑ ͏ʹͳͬͨ
w'64&͕1*%OBNFTQBDFʹରԠͨ͠Β͍͠ w ͳͲ
0SBDMF͕3BJMDBSΛൃද w3VTUͰ࣮͞ΕͨίϯςφϥϯλΠϜ w0$*ͷSVOUJNFTQFDΛݩʹ࣮ͨ͠ͷ w0QFO$POUBJOFS*OJUJBUJWFͱݴ͏ஂମ͕ɺϥϯλΠϜʹඞཁͳཁ݅ Ͱ͋ͬͨΓɺΠϝʔδͷϑΥʔϚοτΛఆ͍ٛͯ͠Δ ڈܰ͘ಡΜͩͱ͖ͷϝϞ IUUQVE[VSBIBUFOBCMPHKQFOUSZ IUUQTHJUIVCDPNPQFODPOUBJOFSTSVOUJNFTQFD IUUQTHJUIVCDPNPQFODPOUBJOFSTJNBHFTQFD
ͳͥɺࠓ3BJMDBSʁ w%PDLFSͷز͔ͭͷ՝Λղܾ͢ΔʢϒϩάΑΓʣ wϚϧνεϨουલఏͷݴޠͰ࣮͞Ε͍ͯΔ͜ͱͰɺOBNFTQBDFͷ ѻ͍͕తͰͳ͍ʢ3VTU࠷ߴͩͶʂʣ wίϯςφʹ౸ୡ͢ΔͨΊͷ͕ଟ͗͢Δʢϓϩηε5$1*1ʣ w.JDSPDPOUBJOFSͷఏҊͱPSBDMFTNJUIͷ࣮ ʢϨΠϠʔԽ0WFSMBZGTɺϏϧυɺϨδετϦͷ൱ఆʣ IUUQTCMPHTPSBDMFDPNEFWFMPQFSTCVJMEJOHBDPOUBJOFSSVOUJNFJOSVTU IUUQTCMPHTPSBDMFDPNEFWFMPQFSTUIFNJDSPDPOUBJOFSNBOJGFTUP
ݱ࣌ͰίϯςφϥϯλΠϜͱͯ͠ɺ࠷৽ όʔδϣϯͷ%PDLFSͰDPOUBJOFSE͕༻͍ ΒΕ͍ͯ·͕͢ɺࠓޙίϯςφϥϯλΠϜ ͷඪ४Ͱ͋Δ0$*ʹ४ڌͨ͠͞·͟·ͳίϯ ςφϥϯλΠϜͷ࣮͕ొ͖͓͔ͯͯ͠ ͋͘͠Γ·ͤΜ IUUQXXXQVCMJDLFZKQCMPH SVTUEPDLFSSBJMDBSSVTUIUNM
Θ͔Δ
Ͱ )BDPOJXBͲ͏͢Δʁ
ίϯςφΦʔέετϨʔγϣϯ ͱશମײͷ
࣌ɺ*OGSBTUSVDUVSFBT$PEF
ίϯςφΦʔέετϨʔγϣϯͷίʔυԽ w4XBSNEPDLFSDPNQPTFɺ.FTPT.BSBUIPOɺ/PNBE wݱঢ়ɺ,VCFSOFUFTʹ͕͋ΔΑ͏ʹࢥΘΕΔ wຊޠͰ͔ͳΓܾఆతͳυΩϡϝϯτ͕ग़ͨʢ͞ΜҒେʣ w(,&ͱݴ͏ఆ൪ڥ͋Δ͠ɻ
,VCFSOFUFTͱ$3* w$3*UIF$POUBJOFS3VOUJNF*OUFSGBDF wίϯςφϥϯλΠϜΛ,VCFSOFUFT্Ͱಈ͔ͨ͢Ίɺຬ͖ͨ͢εϖο ΫΛ໌ࣔͯ͋͠ΔɻQSPUPCVGͳͲΛར༻ w࣮ࡍʹ,VCFSOFUFTͷؔ࿈ϓϩδΣΫτͱͯ͠DSJPͰ͋ͬͨΓSLUMFU ͕։ൃ͞Ε͍ͯΔ IUUQTHJUIVCDPNLVCFSOFUFTDPNNVOJUZCMPCNBTUFSDPOUSJCVUPSTEFWFMDPOUBJOFSSVOUJNFJOUFSGBDFNE
࠶ͼ.PCZ1SPKFDUͷίϯηϓτ wl"OPQFOGSBNFXPSLUPBTTFNCMFTQFDJBMJ[FEDPOUBJOFS TZTUFNTXJUIPVUSFJOWFOUJOHUIFXIFFMz QJDUVSFGSPNIUUQTCMPHEPDLFSDPNJOUSPEVDJOHUIFNPCZQSPKFDU
(BSUOFSͷͷϨϙʔτ wʢ˞ͦͷͷͣΓͷιʔε͕ݟ͔ͭΒͣʣ IUUQBTDJJKQFMFN
ϖύݚ'BTU$POUBJOFSͷઌʹ wʮ'BTU$POUBJOFS8FCΞϓϦέʔγϣϯίϯςφͷঢ়ଶΛϦΞΫςΟ ϒʹܾఆ͢ΔίϯςφཧΞʔΩςΫνϟʯͷൃද wͦͷใࠂهࣄͰɺίϯςφίϛϡχςΟͷঢ়گ౿·͑ͭͭ 'BTU$POUBJOFSͷҐஔ͚Λߟɺൃදͨ͠ IUUQSBOEQFQBCPDPNBSUJDMFJPUNBUTVNPUPSZ
ίϯςφ࣌ͷ8FCαʔϏεج൫Ϟσϧ
ίϯςφ࣌ͷ8FCαʔϏεج൫Ϟσϧ ετϥςδΛ ಋೖ͠ɺ ίϯςφΛ͍͔ʹ εέʔϧͤ͞Δ͔ ॊೈɺՄʹ͢Δ
ετϥςδʔ 8FCαʔϏεͷಛੑʹ߹Θͤͯίϯςφج ൫ΛΑΓಛతʹ੍ޚ͢Δ 'BTU$POUBJOFS ͜͜ʹଐ͢Δ IUUQSBOEQFQBCPDPNBSUJDMFJPUNBUTVNPUPSZɹ
͜͜·Ͱͷ·ͱΊ wίϯςφϥϯλΠϜ·ͩ·ͩ܈༤ׂڌͰɺΧʔωϧػೳ͕૿͑ଓ ͚͍ͯΔ wͦͷதͰɺ0$*ͷΑ͏ͳஂମʹΑΔίϯςφϑΥʔϚοτɺεϖοΫ ͷఆٛɺར༻ऀͷศརͷͨΊʹॏཁͩΖ͏ wҰํɺࢹΛ͋͛Δͱɺίϯςφͷӡ༻ΛίʔυԽ͢Δʹ͋ͨͬͯɺ ༷ʑͳϨΠϠʔͰྨ͢Δͱ༗ӹͱࢥΘΕΔ w্खͳϨΠϠʔΛߟ͑ͯɺͦΕͧΕͷͰࣗ༝ʹબΔͱྑͦ͞͏
Հཟ͔Β όβʔϧ
Ͱ )BDPOJXBͲ͏͢Δʁ
"/48&3
ͦͷલʹݪʹཱͪฦΖ͏ wͲ͏ͯ͠ɺίϯςφͷӡ༻ΛࣗಈԽ͍ͨ͠ͷ͔ʁ wͲ͏ͯ͠ɺͳ͓͔ͭอकՄೳͳӡ༻Λࢦ͢ͷ͔ʁ wͲ͏ͯ͠ɺܰྔͰॊೈͳίϯςφϥϯλΠϜ͕ඞཁͳͷ͔ʁ
շదͳ 8FCαʔόج൫Λ࡞ͬͯ ϢʔβΛշదʹ͍ͨ͠
ΠϯλʔωοτΛ ΑΓྑ͘͢Δ
͜ͷҰͰ ϖύϘͱɺ)BDPOJXBҰக
ͱ͍͏͜ͱͰ ϖύϘͷ)BDPOJXBͷ ͜Ε͔ΒΛ
None
ࣗͨͪͷٻΊΔੈքΛٻ͢Δ
ϖύϘ͕ٻΊΔੈք wʮΠϯλʔωοτͰԿ͔Λ࢝Ί͍ͨͱ͍͏ਓͨͪͱϖύϘͷαʔϏε ͕ग़ձ͏͜ͱͰɺ৽ͨͳՄೳੑΛੜΈग़͖͔͚ͬ͢Λఏڙ͍ͨ͠ʯͱ ͍͏େ͖ͳ͕࣠͋Δ wϗεςΟϯάͰ͋ΕɺՄೳੑͷΛେ͖͛͘ΒΕΔΑ͏ͳɺ؆୯ Ͱɺͳ͓͔ͭεέʔϧ͢Δج൫Λ࡞Γ͍ͨ
)BDPOJXBY'BTU$POUBJOFS wϖύϘͰɺϩϦϙοϓϔςϜϧɺͦͯ͠4RBMFͱ͍͏ೋͭͷੑ࣭ͷ ҧͬͨϗεςΟϯά͔Βಘ͖ͯͨܦݧΛੜ͔͠ɺ wͳ͓͔ͭ)BDPOJXBɺ'BTU$POUBJOFSͱ͍͏৽͍ٕ͠ज़Ͱɺࠓ·Ͱ࣮ ݱͰ͖ͳ͔ͬͨλΠϓͷϗεςΟϯάΛͭ͘Γ͍ͨɻ wୈҰ߸ͱͯ͠ɺɹɹɹɹɹɹɹɹɹɹɹɹɹɹΛࠂͰ͖ͨ ʢϓϩδΣΫτ໊⒚IPSJʣ
4RBMFͷํʹະདྷ͕͋Δͷ͔֬ͳͷͰɺ զʑ·͕ͨͪ͏ҧ͏ܗͰ4RBMFʹग़ձ͏ͩ Ζ͏ ͋ΜͪΆ͘Μ
)BDPOJXB'BTU$POUBJOFSΛબͿҙٛ w)BDPOJXBʮΘΒ͔͍ʯίϯςφΛࢦ͢ wίϯςφʹؔ͢Δ͋ΒΏΔઃఆɾϑΣʔζΛɺNSVCZʹΑΔ؆ܿͳ %4-Ͱهड़ՄೳͰ͋Δͱ͍͏ಛɺշదͳαʔόΛ؆୯ʹ͑ΔΑ ͏ʹ͢ΔͨΊͷଟ͘ͷӡ༻ΛࣗಈԽɺίʔυԽͰ͖Δ͜ͱʹͭͳ͕Δ wˠ$POUBJOFSBT$PEF wϥϯλΠϜͷϨΠϠͰղܾͰ͖ͳ͍Α͏ͳ՝ඞͣग़ͯ͘Δɻ͕ͩɺ ϥϯλΠϜʹίʔυ͕ೖΔ͜ͱͰɺ্Լͱͷ࿈ܞ͕ॊೈʹ
/)).ελοΫ Ծশ ͷ֦ॆ wϖύϘͰࣾ։ൃ͍ͯ͠Δɺ)BDPOJXBY'BTU$POUBJOFSϗεςΟϯ άͷΦʔέετϨʔγϣϯ w /JXBTIJʢඇಉظͷίϯςφ࡞δϣϒεέδϡʔϥʣɺ)BOBNPSJʢ$.%#ͱͦΕΛૢ ࡞͢Δ"1*܈ʣɺ)BDPOJXBɺ.JDIJZVLJʢΣϒΞΫηεͷϧʔςΟϯάͱ 'BTU$POUBJOFSͷىಈʣ w
ΛΈ߹ΘͤΔͱۮવ ʹ౦ژͰ׆ಈ͍ͯͨ͠ΦϧλφςΟϒϩοΫόϯυͷ໊ લʹͳͬͨ w044ͷϦϑΝϨϯε࣮Λެ։Ͱ͖Δఔʹ࡞Γ͜Έ͍ͨ IUUQTTQFBLFSEFDLDPNVE[VSBUIFBMUFSOBUJWFDPOUBJOFS
ίϛϡχςΟʹ։͍ͨ ίϯςφʹͳΔ
)BDPOJXBͱ͍͏ίϯςφϥϯλΠϜ wಛΛ͓͞Β͍͢Δ w ࣮࣭తʹϓϩάϥϛϯάݴޠج൫Ͱ͋ΔʢNSVCZʣ͜ͱʹΑΔɺ ඇৗʹߴ͍ॊೈੑͱϓϩάϥϚϏϦςΟ w NSVCZͷ͓͔͛Ͱൺֱత༰қʹΧʔωϧͷ৽͍͠ػೳʹΞΫηε Ͱ͖Δ֦ுੑͷߴ͞ w͋Δҙຯ֎ͷʮʯͰ͋ΔɺίϯςφͷҰ࿈ͷن֨ʹରԠ͍͢͠
)BDPOJXBΛʮ։͍ͨίϯςφʯ w0$*ͷରԠ w0$*ίϯςφΠϝʔδΛల։ͨ͠Γɺޓੑͷ͋Δ+40/Λड͚ೖΕ ͨΓʮʯՄೳʹͳΔͱྑͦ͞͏ wҰ෦ະରԠͷεϖοΫ͋ΔʢBNCJFOUDBQBCJMJUZͱ͔ʣͷͰಓʹ w$3*ͷରԠ w/)).ϕʔεͰ,VCFSOFUFTϕʔεͰΦʔέετϨʔγϣϯʂ
':*IBDPOJXBNSVCZPSHΛ͍ͨ݅ w5IBOLT .BU[ w͔͠͠ɺίϯςϯπɺυΩϡϝϯτͱʹ΄΅θϩʹ͍ۙͷͰɺຊ ޠӳޠΘ֦ͣେ͍͖͍ͯͨ͠ wͬͺΓӳޠͷυΩϡϝϯτΛॆ࣮͍ͤͨ͞ wυϝΠϯ·Ͱ͍͍ͨͩͯ͠·ͬͨͷͰؤுΔ΄͔ͳ͍
·ͱΊ
ϖύϘ)BDPOJXB ίϯςφͷະདྷΛ࡞Γ͍ͨʂ
ʹڵຯͷ͋Δํ
܅ϖύϘͰಇ͔ͳ͍͔ʁ ࠷৽ͷ࠾༻ใΛνΣοΫˠ !QC@SFDSVJU
ʹڵຯͷ͋Δํ υΩϡϝϯτɺαϯϓϧͳͲ ͍Ζ͍ΖͳίϯτϦϏϡʔτΛ ͓͍ͪͯ͠·͢ʂ
ίϯςφͷະདྷ IUUQTNDMPMJQPQKQ