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
Miehistö: A "recommended" stack to integrate CR...
Search
KONDO Uchio
November 13, 2020
Technology
0
1.1k
Miehistö: A "recommended" stack to integrate CRIU into existing systems
邦題 - Miehistö: CRIUによるチェックポイント・リストアの 導入と運用支援ツール
@WSA研究会 #7
https://wsa.connpass.com/event/187128/
KONDO Uchio
November 13, 2020
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
200
Narrative of Ruby & Rust
udzura
0
180
開発者生産性指標の可視化 / pepabo-four-keys
udzura
3
1.6k
Talk of RBS
udzura
0
400
Re: みなさん最近どうですか? / FGN tech meetup in 2021
udzura
0
710
Dockerとやわらかい仮想化 - ProSec-IT/SECKUN 2021 edition -
udzura
2
680
Device access filtering in cgroup v2
udzura
1
780
"Story of Rucy" on RubyKaigi takeout 2021
udzura
0
730
Other Decks in Technology
See All in Technology
継続的にアウトカムを生み出し ビジネスにつなげる、 戦略と運営に対するタイミーのQUEST(探求)
zigorou
0
560
OpenAIの蒸留機能(Model Distillation)を使用して運用中のLLMのコストを削減する取り組み
pharma_x_tech
4
560
PHP ユーザのための OpenTelemetry 入門 / phpcon2024-opentelemetry
shin1x1
1
230
Opcodeを読んでいたら何故かphp-srcを読んでいた話
murashotaro
0
250
Amazon Kendra GenAI Index 登場でどう変わる? 評価から学ぶ最適なRAG構成
naoki_0531
0
110
フロントエンド設計にモブ設計を導入してみた / 20241212_cloudsign_TechFrontMeetup
bengo4com
0
1.9k
ゼロから創る横断SREチーム 挑戦と進化の軌跡
rvirus0817
2
270
Snowflake女子会#3 Snowpipeの良さを5分で語るよ
lana2548
0
230
NilAway による静的解析で「10 億ドル」を節約する #kyotogo / Kyoto Go 56th
ytaka23
3
380
DUSt3R, MASt3R, MASt3R-SfM にみる3D基盤モデル
spatial_ai_network
2
140
[Ruby] Develop a Morse Code Learning Gem & Beep from Strings
oguressive
1
170
Storage Browser for Amazon S3
miu_crescent
1
180
Featured
See All Featured
Building an army of robots
kneath
302
44k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
5
450
What's in a price? How to price your products and services
michaelherold
243
12k
Docker and Python
trallard
42
3.1k
Gamification - CAS2011
davidbonilla
80
5.1k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Adopting Sorbet at Scale
ufuk
73
9.1k
Scaling GitHub
holman
458
140k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
95
17k
Side Projects
sachag
452
42k
Designing for Performance
lara
604
68k
Transcript
ۙ౻Ӊஐ࿕(.01FQBCP *OD ୈճ84"ݚ .JFIJTUÖ $3*6ʹΑΔνΣοΫϙΠϯτɾϦετΞͷ ಋೖͱӡ༻ࢧԉπʔϧ
ۙ౻Ӊஐ࿕6DIJP,POEP w(.0ϖύϘٕज़ج൫νʔϜ wؔ৺ൣғ3VCZݴޠɺ-JOVYɺ $POUBJOFSTɺγεςϜϓϩάϥϛϯά w84"ݚҎདྷͷൃදͰ͢
5P$ w͡ΊʹʢϦιʔεར༻ͷޮԽͱ$3*6ʣ w$3*6ͷར༻ʹ͋ͨͬͯͷͷཧ wࠓճͷఏҊ wʹର͢ΔΞϓϩʔν wఏҊʹؔ͢Δݱࡏͷ՝ɾ wؔ࿈ٕज़ɺઌߦݚڀɺ·ͱΊ
Ϧιʔεͷޮతͳ׆༻ wΦʔτεέʔϧʢ"84"VUP4DBMJOHɺ,VCFSOFUFTͷ"VUPTDBMFSʣ w'BB4ʢ"84-BNCEB $MPVE3VOʣ wϚΠάϨʔγϣϯʹΑΔஔϊʔυͷมߋ wىಈ͕࣌ؒϘτϧωοΫʹͳΔ w -BNCEBͱίʔϧυελʔτ w )FSPLVɺ$MPVE3VOͷॳճىಈ࣌ͷΦʔόϔου
w 'BTU$POUBJOFSʢদຊɺۙ౻ʣ
ΫϥυΠϯελϯεͱىಈ࣌ؒ w"84-BNCEB w ࣮ߦίϯςΩετͷઃఆʹ͕͔͔࣌ؒΓ·͢ɻ·ͨɺʮϒʔτετϥοϓʯ͕ඞཁͳͨ Ίɺ-BNCEBؔΛݺͼग़ͨ͢ͼʹएׯͷϨΠςϯγʔ͕ൃੜ͠·͢ɻ w)FSPLV%ZOPTMFFQJOH w *GBTMFFQJOHXFCEZOPSFDFJWFTXFCUSB⒏D JUXJMMCFDPNFBDUJWFBHBJOBGUFSB TIPSUEFMBZ
IUUQTEPDTBXTBNB[PODPNKB@KQMBNCEBMBUFTUEHSVOUJNFTDPOUFYUIUNMɹ IUUQTEFWDFOUFSIFSPLVDPNBSUJDMFTGSFFEZOPIPVSTEZOPTMFFQJOH
DG'BTU$POUBJOFS wদຊɾۙ౻ΒͷϦΫΤετʹԠ͡ίϯςφΛஔɾϦιʔε੍ޚ͢Δ ΞʔΩςΫνϟʔͰɺίϯςφͷىಈ࣌ؒʹݴٴ w ࣍ʹɼίϯςφ͕ऩ༰͞Ε͍ͯΔ)PTU04͕ಥൃతͳোͰఀࢭͨ͠߹ͷϑϩʔʹ͍ͭͯड़Δ ͜ͷ߹ɼऩ༰αʔόʹίϯςφ͕ىಈ͍ͯ͠ͳ͍ͨΊɼ$POUBJOFS%JTQBUDIFSʹΑͬͯ֘ίϯς φΛىಈ͠ɼ)551ϦΫΤετΛసૹ͢Δɽ w$3*6ʹΑΔରԠྫʢদຊΒɺʣ
DGϥΠϒϚΠάϨʔγϣϯ IUUQTMJCWJSUPSHNJHSBUJPOIUNM w৽͍͠ϗετͰ৽͘͠ىಈ͢ΔͷͰɺμϯλΠϜ͕͋Δ wطଘͷ7.ϕʔεͷͷͰແࢹͰ͖ͳ͍ wίϯςφɾϓϩηε૬ରతʹىಈ͕ૣ͍ͱ͍͑ɺͦΕͰʹ ͳΖ͏ͱࢥΘΕΔ
ىಈ࣌ؒͷݮख๏ w$3*6ʢ$IFDLQPJOUBOE3FTUPSF*O6TFSTQBDFʣ w1*%ɺϨδελͷঢ়ଶɺϓϩηεଐੑʢVJE΄͔ʣΛอଘɺ࠶ੜ͢Δ wىಈ࣌ؒॖͷԠ༻ʢদຊΒʣ
$3*6ͷͳͲ w ӡ༻ʹؔ͢ΔϊϋɺنͳͲͷੵ͕গͳ͍ w Πϝʔδ୯Ұͷϗετʹੜ͞ΕΔେྔͷϑΝΠϧ܈Ͱ͋ΓɺϚ ΠάϨʔγϣϯɾҠಈ͕͍͠ w αʔόΠϯελϯεͷੜϥϯλΠϜ͝ͱʹ$3*6ͷར༻ํ๏͕· ͪ·ͪͰɺֶशίετҠߦίετ͕͋Δ
ӡ༻ͷࠔ͞ w$3*6ͷྺ࢙ʹ1P$ɺʹ w҆ఆੑࣗମ্ͨ͠ wҰํͰɺΧʔωϧͷ৽ػೳʢFH5JNF/BNFTQBDFʣʹԠͯ͡։ൃ ͕Ճ͞ΕΔͳͲɺࠓΞΫςΟϒʹมߋ͞Ε͍ͯΔ wݱ࣮ͷϓϩδΣΫτʹͲ͏ಋೖ͢Δ͔ɺఆ൪ͷߏ͕ͳ͍ wݹ͍ใଟ͍
ϚΠάϨʔγϣϯͷোน wΠϝʔδϑΝΠϧ͕ଟ͘ɺαΠζ͕େ͖͍͜ͱ͋Δɻ wϊʔυίϐʔͷίετແࢹͰ͖ͳ͍Ͱ͋Ζ͏ wܝࣔͨ͠ਤ୯७ͳ SVCZϓϩάϥϜͷ Πϝʔδྫ
ڥʹΑΔ$3*6ӡ༻ͷҧ͍ w֓೦ͷҰ෦ڞ௨͢Δ͕ɺίϚϯυମܥ͕ҧ͏ w%PDLFSdocker checkpoint create / docker start --checkpoint
w-9$lxc-checkpoint / lxc-checkpoint -r wH7JTPSrunsc checkpoint / runsc create && runsc restore
ڥʹΑΔ$3*6ӡ༻ͷҧ͍ wඇίϯςφ7.ͷνΣοΫϙΠϯτϦετΞͷӡ༻ʹ੍ݶ͕ଟ͍ w ϗετͷ1*%OBNFTQBDFʹ͋ΔΑ͏ͳϓϩηεΛ$3͢Δʹ͋ͨͬͯɺ1*%ͷใؚΊ ͯͷϦετΞΛߦ͏ͨΊɺ͠νΣοΫϙΠϯτ࡞͔ΒϦετΞͷؒʹͦͷ1*%͕ར༻͞Ε ͯ͠·͏ͱϦετΞʹࣦഊͯ͠͠·͏ɻ w΄͔ඪ४ೖग़ྗͷ55:ͷѻ͍ɺCJOENPVOU࣌ͷύεࢦఆ໌ࣔͳͲ
.JFIJTUÖͷ։ൃ •miehistod w αʔϏεͱΠϝʔδΛ࡞ɺཧ •runmh w ϗετͱಉͷڥΛ࡞͢Δ࠷ খͷίϯςφ •mhctl wଞcriuͳͲ
.JFIJTUÖͷجຊػೳ wᶃαʔϏε࡞ wᶄαʔϏεͷΠϝʔ δ࡞ wᶅΠϝʔδ͔ΒͷϦ ετΞ wʢΠϝʔδͷϊʔυ ؒಉظʣ ᶃ ᶄ
ᶅ
ऄ(SFOBEJOFˠ.JFIJTUÖ w3VCZ,BJHJͰൃදͨ͠(SFOBEJOFΛվ໊ɺվम͍ͯ͠Δɻ IUUQTTQFBLFSEFDLDPNVE[VSBUIFGBTUFTUXBZUPCPPUTUSBQSVCZPOSBJMT
ऄ(SFOBEJOFˠ.JFIJTUÖ w(SFOBEJOF୯ҰόΠφϦͰ͋Γɺ·ͨɺෳͷαʔϏεΛཧͰ ͖ͳ͍ͳͲ͍ͮΒ͍͕ଟ͔ͬͨɻ·ͨɺඇίϯςφ7.ͷରԠ Λओ࣠ʹஔ͍͍ͯͨɻ w.JFIJTUÖͱͯ͠αʔϏεͱΫϥΠΞϯτɺΠϯελϯεϥϯλΠϜΛ ͠ɺӡ༻ͷརศੑʢΫϥΠΞϯτ͕ผͷϊʔυʹ͍ͯྑ͍ͳ ͲʣෳͷαʔϏεىಈʹରԠ͢ΔͳͲվળ͍ͯ͠Δ
ऄ`)PXUPQSPOPVODF.JFIJTUÖ wl.JFIJTUÖzJTB'JOOJTIXPSENFBOJOHl$3&8z w㷦NJF 㷺IJTUSFGIUUQTFOXJLUJPOBSZPSHXJLJNJFIJTU$# w Ö PͷޱΛͯ͠FΛൃԻ͍ͯͩ͘͠͞
ͷΞϓϩʔν 8*1 w ʹ͍ͭͯޙड़͢Δଞख๏ͱൺͯίϯϙωϯτ͕গͳ͘ɺڥ ͷ࡞ӡ༻͕༰қͰ͋Δͱߟ͑ΒΕΔɻ ·ͨɺίϯςφԽ͍ͯ͠ͳ͍Πϯελϯε্ͷαʔϏεʹରԠ͢Δ w ʹ͍ͭͯϊʔυؒͷΠϝʔδΛόοΫάϥϯυಉظ͢Δɻ ಉظͷઓུબՄೳʹͳΔʢSTZODɺΦϒδΣΫτετϨʔδଞʣ w
ʹ͍ͭͯNJFIJTUPEͱͦͷԼͷΠϯελϯεΛ͠ɺϓϥΨϒ ϧʹϥϯλΠϜؒͷҧ͍ΛٵऩՄೳʹ͍ͯ͠Δɻ DG0$*3VOUJNFTQFDεϖοΫΛຬͨͨ͠ϥϯλΠϜՄ
՝ʹ͍ͭͯ w ݱ࣮తͳߏͱຊʹ౷߹Ͱ͖Δ͔ʁ w ಉظઓུʹ͍ͭͯɺΑΓߴͳख๏͕ͳ͍͔ʁ
Ҋ,VCFSOFUFTͳͲͱ࿈ܞͰ͖ͳ͍͔ w.JFIJTUÖͷελοΫશମΛɺ7JSUVBM,VCFMFUͳͲͷٕज़Λհͯ͠ ཧͰ͖ͳ͍͔ʁ wͦ͏͢Δͱɺϊʔυͷཧɺ ΠϯελϯεͷཧΛ,VCFSOFUFTͷ ӡ༻ʹࡌͤΔ͜ͱ͕Ͱ͖ΔͷͰɺ ӡ༻ͷ༰қੑ͕֨ஈʹ্͕Δͱ ࢥΘΕΔɻ
Πϝʔδͷಉظॲཧ wಉظΛόοΫΤϯυͰߦ͏༧ఆ͕ͩɺଈ࣌ʹΠϝʔδΛ࡞ͬͯϚΠά Ϩʔγϣϯ͢Δ߹͍ͱߟ͑ΒΕΔɻ w*ODSFNFOUBMEVNQTͳͲΛར༻Ͱ͖ͳ͍͔ʁ w9VΒͷݚڀʢ4MFEHFʣʹΑΔͱɺ ਵ࣌ϝϞϦμϯϓΛଞϊʔυʹసૹ ͢Δ͜ͱͰϚΠάϨʔγϣϯͷ ߴԽ͕Ͱ͖Δͱ͍ͯ͠Δɻ 9VΒͷจΑΓ *&&&$-06%
IUUQTDSJVPSH*ODSFNFOUBM@EVNQT
ؔ࿈ٕज़ɺઌߦݚڀ w1)BVMʢ3#PVDIFS dʣ w7PZBHFSʢ4/BEHPXEB ʣ w.BΒͷ࣮ʢ-.B ʣ w4MFEHFʢ#9V ʣ wʮίϯϙωϯτͷ౷߹ӡ༻ੑɺεέʔϥϏϦςΟɺແࢹͰ͖Δఔͷ
μϯλΠϜΛߟྀͨ͠ʯͷ4MFEHFͷΈ
·ͱΊ wαʔόϦιʔεͷ༗ޮ׆༻ͷधཁͱɺͦΕʹ͏Πϯελϯεͷىಈ ͷߴԽϚΠάϨʔγϣϯͷधཁ͕͋ΔɻͦͷͨΊͷπʔϧͱͯ͠ ͷ$3*6͕༗ྗͰ͋ΔɻҰํͰɺ$3*6ͷಋೖʹະͩӡ༻্ͷোน͕ ଟ͘ɺͦͷোนΛݮ͘͢.JFIJTUÖͱ͍͏໊ͷϛυϧΣΞ܈Λ ։ൃ͍ͯ͠Δɻ w.JFIJTUÖઌߦ͢Δ4MFEHFͳͲͱൺΕૈΓͱ͍͏ଞͳ͍͕ɺ %PDLFSҎ֎ͷίϯςφ7.ߏͳͲͷରԠɺ,VCFSOFUFTͱͷ ౷߹Λݟਾ͑ͯ։ൃΛਐΊ͍ͯΔɻ