Slide 1

Slide 1 text

坪内 佑樹 (@yuuk1t)   さくらインターネット研究所 SREはサイバネティクスの夢を みるか? ークラウドにおけるテレメトリー技術の 博 士 論 文 とその後 情報処理学会 第18回 インターネットと運 用 技術シンポジウム 招待講演 

Slide 2

Slide 2 text

2013 2019 2020 2025 ݱࡏ Monitoring SaaS SRE さくら インターネット 研究所 はてな 京都 大 学 大 学院 情報学研究科 博 士 後期課程 博 士 (情報学) 取得 AIOps AI Supercomputer eBPF 坪内 佑樹 大 阪 大 学 大 学院 情報科学 研究科 (中途退学) 2

Slide 3

Slide 3 text

IOT研究会との関わり ʔ೥ ӡӦҕһ ೥ *054ট଴ߨԋ ೥ ೥ *14+0/&*05ݚڀձਪન *054࿦จൃද ೥ *054༏ल࿦จ৆ɺ༏लϓϨθϯςʔγϣϯ৆ɺاۀף৆ ೥ *054༏ल࿦จ৆ ಉ೥ ࢁԼه೦ݚڀ৆ ೥ͿΓͷট଴ߨԋ ೥ *054࿦จൃද 3

Slide 4

Slide 4 text

ソフトウェアエンジニアコミュニティでの活動 2020 基調講演 2022 2023 AIOps 研究録 SRE論 文 への招待 2024 工 学として のSRE再訪 Best Speaker SREの技術 トレンド 2025 とあるSRE の博 士 「過 程」 4 IUUQTTSFOFYUPSH

Slide 5

Slide 5 text

 5 アジェンダ    はじめに 工 学 としての SRE 博 士 論 文  まとめ  SREのため のBlack box as a Black box 2" 2" 2"

Slide 6

Slide 6 text

 43&ʢ4JUF3FMJBCJMJUZ&OHJOFFSJOHʣ l43&ʢ4JUF3FMJBCJMJUZ&OHJOFFSJOHɿαΠτ৴པੑΤϯδχΞϦ ϯάʣͱ͸ɺ(PPHMF͕ఏএͨ͠ɺγεςϜͷ৴པੑʢՄ༻ੑɺύ ϑΥʔϚϯεͳͲʣΛ޲্ͤ͞ΔͨΊͷʮӡ༻ʯʹର͢ΔΞϓϩʔ νʢํ๏࿦ɾจԽʣͰɺ։ൃͱӡ༻ͷϕετϓϥΫςΟεΛιϑτ ΢ΣΞΤϯδχΞϦϯάͷ஌ࣝͱεΩϧΛ࢖࣮ͬͯݱ͠·͢ɻz (FNJOJʹΑΔΑ͋͘Δઆ໌ Λ͝ଘ஌ͷํʁ 🙋

Slide 7

Slide 7 text

 7    はじめに 工 学 としての SRE 博 士 論 文  まとめ  1. はじめに  SREのため のBlack box as a Black box

Slide 8

Slide 8 text

ത࢜࿦จͷ͓࿩ʹڵຯ͕͋ΔͷͰ͕͢ɺͦΕʹཹ ·Βͣ޿͘ݱࡏͷ௶಺͘Μͷڵຯ෼໺ʹ͍࣭ͭͯ ٙԠ౴ࠐΈ࣌ؒ΄ͲͰޠ͍͚ͬͯͨͩͳ͍͔ͱࢥ ͍·͢ɻಛʹɺ͔ͭͯ*054ͰϓϨθϯ৆΍࿦จ৆ Λड৆͞Εͨํ͕֌ટߨԋ͍͚ͯͨͩ͠Δͷ͸ૉ ఢɺͱࢥ͍ͬͯΔͱ͜ΖͰ͍͟͝·͢ɻ 

Slide 9

Slide 9 text

ػցͷ͓͔͛Ͱෆշͳ൰͍͠࢓ࣄΛ΍Δඞཁ͕ͳ͘ͳΔͷ͸ɺ ਓؒʹͱͬͯͻ͡ΐ͏ͳ෱ࢱ͔΋͠Εͳ͍͕ɺ͋Δ͍͸ͦ͏Ͱ ͳ͍͔΋͠Εͳ͍ɻ ദ࡚ྱੜɼୈճΠϯλʔωοτͱӡ༻ٕज़γϯϙδ΢Ϝ *054 ։࠵Ҋ಺  IUUQTXXXJPUJQTKPSKQTZNQPTJVNJPUTBOOPVODFΑΓҾ༻ ϊʔόʔτɾ΢ΟʔφʔஶʮαΠόωςΟοΫεʯͷҰઅ ̕೥લʹ͸͡ΊͯαΠόωςΟΫεΛ஌Δ͜ͱʹͳΔ IOTS2016 開催案内 

Slide 10

Slide 10 text

サイバネティクスの 目 的 ΘΕΘΕͷঢ়گʹؔ͢Δೋͭͷมྔ͕͋Δ΋ͷͱ͠ ͯɺͦͷҰํ͸ΘΕΘΕʹ͸੍ޚͰ͖ͳ͍΋ͷɺଞ ͷҰํ͸ΘΕΘΕʹௐઅͰ͖Δ΋ͷͰ͋Δͱ͠· ͠ΐ͏ɻͦͷͱ੍͖ޚͰ͖ͳ͍มྔͷաڈ͔Βݱࡏ ʹ͍ͨΔ·Ͱͷ஋ʹ΋ͱ͍ͮͯɺௐઅͰ͖Δมྔͷ ஋Λద౰ʹఆΊɺΘΕΘΕʹ࠷΋ͭ͝͏ͷΑ͍ঢ় گΛ΋ͨΒ͍ͤͨͱ͍͏๬Έ͕΋ͨΕ·͢ɻͦΕΛ ୡ੒͢Δํ๏͕$ZCFSOFUJDTʹ΄͔ͳΒͳ͍ͷͰ͢ɻ ϊʔόʔτɾ΢Οʔφʔஶɼ”αΠόωςΟοΫε ――ಈ෺ͱػցʹ͓͚Δ੍ޚͱ௨৴”ɼୈ̎൛ ؠ೾จݿ 2011೥ ೔ຊޠ൛ લॻ͖ΑΓҾ༻ 10

Slide 11

Slide 11 text

サイバネティクスの 目 的 ΘΕΘΕͷঢ়گʹؔ͢Δೋͭͷมྔ͕͋Δ΋ͷͱ͠ ͯɺͦͷҰํ͸ΘΕΘΕʹ͸੍ޚͰ͖ͳ͍΋ͷɺଞ ͷҰํ͸ΘΕΘΕʹௐઅͰ͖Δ΋ͷͰ͋Δͱ͠· ͠ΐ͏ɻͦͷͱ੍͖ޚͰ͖ͳ͍มྔͷաڈ͔Βݱࡏ ʹ͍ͨΔ·Ͱͷ஋ʹ΋ͱ͍ͮͯɺௐઅͰ͖Δมྔͷ ஋Λద౰ʹఆΊɺΘΕΘΕʹ࠷΋ͭ͝͏ͷΑ͍ঢ় گΛ΋ͨΒ͍ͤͨͱ͍͏๬Έ͕΋ͨΕ·͢ɻͦΕΛ ୡ੒͢Δํ๏͕$ZCFSOFUJDTʹ΄͔ͳΒͳ͍ͷͰ͢ɻ ϊʔόʔτɾ΢Οʔφʔஶɼ”αΠόωςΟοΫε ――ಈ෺ͱػցʹ͓͚Δ੍ޚͱ௨৴”ɼୈ̎൛ ؠ೾จݿ 2011೥ ೔ຊޠ൛ લॻ͖ΑΓҾ༻ ͜ͷߟ͑ํ͕ඇৗʹ໘നͯ͘ɺ࣮͸͜Ε͸ΤϯδχΞϦϯάͷ໨తɺ͋Δ ͍͸ςΫϊϩδʔͷ໨తΛޠ͍ͬͯΔͱ΋ݴ͑Δ͔΋͠Ε·ͤΜɻ ※ ౻Ҫ ௚ܟɼ”ݱ࣮ͱ͸ʁɹ೴ͱҙࣝͱςΫϊϩδʔͷະདྷ”, ϋϠΧϫ৽ॻ, 2023೥ 11

Slide 12

Slide 12 text

サイバネティクスのフィードバックループ ੍ޚର৅ ૢ࡞ྔ  ʢௐઅͰ͖Δ มྔʣ u(t) ʢ࠷΋ͭ͝͏ ͷΑ͍ঢ়گʣ ໨ඪ஋r(t) P(s) − ʢγεςϜʣ ग़ྗy(t) ηϯαܭଌ H(s) ʢݱࡏͷঢ়گʣ ੍ޚث C(s) ؀ڥɾ֎ཚω(t) ภࠩ e(t) ʢ੍ޚͰ͖ͳ͍ มྔʣ ைͷྲྀΕ ଩ͷ֯౓ ߤ࿏ʹԊ͏ ધ௕  $ZCFSOFUJDTͷޠݯͰ͋Δ଩औΓͷྫ ଩ 

Slide 13

Slide 13 text

サイバネティクスのフィードバックループ ੍ޚର৅ ૢ࡞ྔ  ʢௐઅͰ͖Δ มྔʣ u(t) ʢ࠷΋ͭ͝͏ ͷΑ͍ঢ়گʣ ໨ඪ஋r(t) P(s) − ʢγεςϜʣ ग़ྗy(t) ηϯαܭଌ H(s) ʢݱࡏͷঢ়گʣ ੍ޚث C(s) ؀ڥɾ֎ཚd(t) ภࠩ e(t) ʢ੍ޚͰ͖ͳ͍ มྔʣ ைͷྲྀΕ ଩ͷ֯౓ ߤ࿏ʹԊ͏ ધ௕ ௨৴ͱ੍ޚͷཧ࿦Λੜ෺΍ࣾձγεςϜʹ·Ͱ ֦ு͢ΔࢼΈ͕αΠόωςΟΫεͷߩݙʢͱཧղ͍ͯ͠Δʣ 

Slide 14

Slide 14 text

サイバネティクスの魅 力 ۙ୅Պֶɾ޻ֶ #MBDLCPY 8IJUFCPY ղੳ [1] ౻Ҫ ௚ܟɼ”ݱ࣮ͱ͸ʁɹ೴ͱҙࣝͱςΫϊϩδʔͷະདྷ”, ϋϠΧϫ৽ॻ, 2023೥ ΢Οʔφʔ͸ɺ੍ޚͰ͖Δੈքͱ੍ޚͰ͖ͳ͍ੈքʹ෼͚ ΒΕΔͱߟ͍͑ͯͨ͜ͱ͕࢕͑Δ ʢͦͷڥքΛ΢Οʔφʔք໘ͱҴݟઌੜ͸໊෇͚ΒΕͨʣ αΠόωςΟΫε #MBDLCPY #MBDLCPY [1] #MBDLCPYBT B#MBDLCPY 14

Slide 15

Slide 15 text

サイバネティクスの魅 力 ΢Οʔφʔ͸ɺ੍ޚͰ͖Δੈքͱ੍ޚͰ͖ͳ͍ੈքʹ෼͚ ΒΕΔͱߟ͍͑ͯͨ͜ͱ͕࢕͑Δ ʢͦͷڥքΛ΢Οʔφʔք໘ͱҴݟઌੜ͸໊෇͚ΒΕͨʣ ۙ୅Պֶɾ޻ֶ #MBDLCPY 8IJUFCPY ղੳ αΠόωςΟΫε #MBDLCPY #MBDLCPY [1] ౻Ҫ ௚ܟɼ”ݱ࣮ͱ͸ʁɹ೴ͱҙࣝͱςΫϊϩδʔͷະདྷ”, ϋϠΧϫ৽ॻ, 2023೥ [1] #MBDLCPYBT B#MBDLCPY ݱ୅ͷෳࡶੑ΁ཱͪ޲͔͏ͨΊͷώϯτʹͳΔͷͰ͸ͳ͍͔ʁ 15

Slide 16

Slide 16 text

本講演のテーマ:Black box as a Black box 43&͸αΠόωςΟΫεͷ ເΛΈΔ͔ʁ ͱ͍͏Α͏ͳɺത࢜࿦จʹॻ͚ͳ͍಺༰Λओʹ͓࿩͠·͢ɻ 43&͸ະ஌Λະ஌ͷ··ѻ͑Δ͔ʁ ᶃ 43&Λٞ࿦ͷ౔୆ʹ ͋͛Δ ӡ༻ٕज़Λ ٕ͔ܳΒ޻ֶ΁ #MBDLCPYBTB#MBDL CPYͷ୳ڀ ಓ۩ཱͯͱͯ͠ͷ αΠόωςΟΫε ᶄ ത࢜࿦จ ͱͷ઀ଓ ࣗ਎ͰखΛಈ͔ͨ͠ ͜ͱͱͷؔ܎ੑ ᶅ 16

Slide 17

Slide 17 text

 17    はじめに 工 学 としての SRE 博 士 論 文  まとめ  2. 工 学としてのSRE  SREのため のBlack box as a Black box

Slide 18

Slide 18 text

ϦΞΫςΟϒͳ՝୊ղܾʹ໌͚฻Ε͍ͯͨ ࠓͷঢ়ଶ ґཔϕʔεͷγεςϜߏங յΕͨΒ௚͢ Ξϥʔτ͕ͰͨΒରԠ ख࡞ۀ͕ൃੜͨ͠ΒࣗಈԽ ݹ͘ͳͬͨϋʔυ΍ιϑτΛ ৽͍͠΋ͷ΁Ҡߦ 新卒のエンジニアだった10年前 

Slide 19

Slide 19 text

l΢Σ ブ Φ ペ Ϩʔγϣϯ͸ٕܳ で ͋ΓɺՊֶ で ͸ͳ͍z [1] John AllspawɺJesse Robbinsฤɺ֯ ੐య༁,΢ΣϒΦϖϨʔγϣϯʔʔαΠτӡ༻؅ཧͷ࣮ફς ΫχοΫ,ΦϥΠϦʔδϟύϯ [1]ΑΓҾ༻ 

Slide 20

Slide 20 text

SREBook (原著 2016年発刊) l<#VS>ͷಋೖ෦ で ɺγεςϜ؅ཧ͸ώϡʔϚϯίϯ ピ ϡʔλΤϯ ジ χΞϦϯ グ ͷܗͷҰͭ だ ͱࢲ͸ओு͠· ͨ͠ɻϨ ビ ϡʔΞͷதʹ͸ʮ· だ ͦΕ͸Τϯ ジ χΞϦϯ グ ͱݺ べ Δ΄ ど ͷஈ֊ʹ͸དྷ͍ͯͳ͍ʯͱڧ͘൱ఆ͢Δ ਓ΋͍·ͨ͠ɻ͜ͷ࣌఺ で ͸ɺࢲ͸͜ͷ෼໺͸ݟࣦΘΕ ͯɺಠࣗͷຐज़ࢣతͳจԽʹͱΒΘΕɺਐΉ べ ͖ํ޲ が ݟ͑ͳ͘ͳ͍ͬͯΔͱײ じ ͍ͯ·ͨ͠ɻl Mark Burgess ཧ࿦෺ཧֶͷPh.D.ɺChef/PuppetͳͲͷલ਎ ͷCFEngine࡞ऀɻ ίϯϐϡʔλ໔Ӹֶ΍ϓϩϛεཧ࿦ͷఏএऀɻ Network and system administration is a branch of *engineering* that concerns the operational management of human–computer systems. [Bur99]: “Principles of Network and System Administration”, 1999 ΑΓҾ༻ ※1 Betsy Beyer [΄͔] ฤ ; ۄ઒ཽ࢘༁, "SREαΠτϦϥΠΞϏϦςΟΤϯδχΞϦϯά : Googleͷ৴པੑΛࢧ͑ΔΤϯδχΞϦϯάνʔϜ”, ΦϥΠϦʔɾδϟύϯ, 2016೥. ※1 

Slide 21

Slide 21 text

ɾ1987೥͔Β͸͡·ͬͨγεςϜ؅ཧʹؔ͢Δࠃࡍձٞ ɾ2022೥ʹUSENIX SREcon΁౷߹͞ΕΔ USENIX LISA “γεςϜ؅ཧ͸ίϯϐϡʔςΟϯάͷଞͷଟ͘ͷ෼໺ͱॏෳ͍ͯ͠Δ ͨΊɺֶज़քͰ͸Ұൠతʹ࿬໾ͱͯ͠๨ΕΒΕ͍ͯΔɻ”ʢ༁ʣ ※2 Mark Burgess, Computer Immunology, USENIX LISA 1998. USENIX board: “͍΍ɺզʑ͸ֶऀͩ͠ɺγεςϜ؅ཧʹ͸Պֶతͳ͜ͱ ΋ݚڀతͳ͜ͱ΋໘ന͍͜ͱ΋Կ΋ͳ͍ɻ”ʢ༁ʣ ※1 Thomas Limoncelli, “LISA made LISA obsolete (That's a compliment!)”, 2022. https://www.usenix.org/publications/loginonline/ lisa-made-lisa-obsolete-thats-compliment 

Slide 22

Slide 22 text

43&ͷલ਎తͳ෼໺ͱͯ͠ʮιϑτ΢ΣΞ৴པੑ޻ֶʯ͕͋Δ ソフトウェア信頼性 工 学 lʮιϑτ΢ΣΞ޻ֶʯ͕ਅͷ޻ֶ෼໺ͱͯ͠׬શʹ͸ਐԽ͍ͯ͠ͳ͍͔Β Ͱ͋Δɻ෺ཧ๏ଇ΍ݫີͳखॱͰ͸ͳ͘ɺਓؒͷ൑அ΍ओ؍తͳ޷Έ͕ɺ ιϑτ΢ΣΞ޻ֶʹ͓͚Δଟ͘ͷҙࢥܾఆϓϩηεΛࢧ഑͍ͯ͠Δɻ͜ͷ ঢ়گ͸ɺιϑτ΢ΣΞͷ৴པੑ޻ֶʹ͓͍ͯಛʹਂࠁͰ͋Δɻ৴པੑ͸ɺ ඼࣭Λఆྔతʹଌఆ͠ɺͦͷྔΛద੾ʹઃܭ͢Δ͜ͱ͕Ͱ͖ΔͨΊɺ͓ͦ Β͘Ͳͷ޻ֶ෼໺ʹ͓͍ͯ΋ओு͢΂͖࠷΋ॏཁͳཁૉͰ͢ɻzʢ༁ʣ [Lyu+,FOSE2007] Michael R. Lyu, “Software Reliability Engineering: A Roadmap”, FOSE, 2007. (Software Reliability Engineering) [Lyu+,FOSE2007] ΑΓ࿨༁ͯ͠Ҿ༻ 

Slide 23

Slide 23 text

信頼性 工 学の歴史 ೥୅ʙ [Saleh+, 2006] Highlights from the early (and pre-) history of reliability engineering [ࢁຊ+ 2021] ֬཰ɾ౷ܭ͔Β࢝ΊΔ ΤϯδχΞͷͨΊͷ৴པੑ޻ֶ- ਎ۙͳނো͔ΒӉ஦։ൃ·Ͱ -,ίϩφࣾ ೥୅ʙ ϋʔυ΢ΣΞ ιϑτ΢ΣΞ ೥୅ʙ Πϯλʔωοτ ೥୅ʙ Ϋϥ΢υʹؔ࿈͢Δߏ଄෺ͷΈΛબ୒ Ϋϥ΢υ ػثΛ෺ཧతʹೲ඼ ނোͤͣ͞ʹ௕࣋ͪͤ͞Δ ιʔείʔυɾ࣮ߦϑΝΠϧɺ ·ͨ͸ɺΠϯετʔϧ͞Εͨί ϯϐϡʔλ͝ͱೲ඼ ୯ҰͷڊେωοτϫʔΫΛڞ༗ ஗Ԇɺ఻ૹޡΓɺϊʔυނো ͳͲΛલఏͱ͢Δϓϩτίϧ ࣄۀऀʹΑΓγεςϜΛूத ؅ཧɾৗ࣌Քಇɻར༻ऀ͸Π ϯλʔωοτܦ༝Ͱར༻ ৴པੑͷ௿͍ίϯϙʔωϯτ܈Λ ౔୆ʹ৴པੑͷߴ͍γεςϜઃܭ ఏڙܗଶ ৴པੑͷߟ͑ํ ίϯϙʔωϯτͱͦͷ૊Έ߹Θ ͤͷग़ྗͷͦΕͧΕΛࣄલ֬ೝ 

Slide 24

Slide 24 text

ίϯϙʔωϯτͱͦͷ૊Έ߹Θ ͤͷग़ྗͷͦΕͧΕΛࣄલ֬ೝ 信頼性 工 学の歴史 ೥୅ʙ [Saleh+, 2006] Highlights from the early (and pre-) history of reliability engineering [ࢁຊ+ 2021] ֬཰ɾ౷ܭ͔Β࢝ΊΔ ΤϯδχΞͷͨΊͷ৴པੑ޻ֶ- ਎ۙͳނো͔ΒӉ஦։ൃ·Ͱ -,ίϩφࣾ ೥୅ʙ ϋʔυ΢ΣΞ ιϑτ΢ΣΞ ೥୅ʙ Πϯλʔωοτ ೥୅ʙ Ϋϥ΢υʹؔ࿈͢Δߏ଄෺ͷΈΛબ୒ Ϋϥ΢υ ػثΛ෺ཧతʹೲ඼ ނোͤͣ͞ʹ௕࣋ͪͤ͞Δ ιʔείʔυɾ࣮ߦϑΝΠϧɺ ·ͨ͸ɺΠϯετʔϧ͞Εͨί ϯϐϡʔλ͝ͱೲ඼ ୯ҰͷڊେωοτϫʔΫΛڞ༗ ஗Ԇɺ఻ૹޡΓɺϊʔυނো ͳͲΛલఏͱ͢Δϓϩτίϧ ࣄۀऀʹΑΓγεςϜΛूத ؅ཧɾৗ࣌Քಇɻར༻ऀ͸Π ϯλʔωοτܦ༝Ͱར༻ ৴པੑͷ௿͍ίϯϙʔωϯτ܈Λ ౔୆ʹ৴པੑͷߴ͍γεςϜઃܭ ఏڙܗଶ ৴པੑͷߟ͑ํ ෳ੡඼͔Β ৗ࣌ՔಇͷҰ఺΋ͷ αʔϏεࢦ޲΁ 

Slide 25

Slide 25 text

信頼性 工 学の歴史 ೥୅ʙ [Saleh+, 2006] Highlights from the early (and pre-) history of reliability engineering [ࢁຊ+ 2021] ֬཰ɾ౷ܭ͔Β࢝ΊΔ ΤϯδχΞͷͨΊͷ৴པੑ޻ֶ- ਎ۙͳނো͔ΒӉ஦։ൃ·Ͱ -,ίϩφࣾ ೥୅ʙ ϋʔυ΢ΣΞ ιϑτ΢ΣΞ ೥୅ʙ Πϯλʔωοτ ೥୅ʙ Ϋϥ΢υʹؔ࿈͢Δߏ଄෺ͷΈΛબ୒ Ϋϥ΢υ ػثΛ෺ཧతʹೲ඼ ނোͤͣ͞ʹ௕࣋ͪͤ͞Δ ιʔείʔυɾ࣮ߦϑΝΠϧɺ ·ͨ͸ɺΠϯετʔϧ͞Εͨί ϯϐϡʔλ͝ͱೲ඼ ίϯϙʔωϯτͱͦͷ૊Έ߹Θ ͤͷग़ྗͷͦΕͧΕΛࣄલ֬ೝ ୯ҰͷڊେωοτϫʔΫΛڞ༗ ஗Ԇɺ఻ૹޡΓɺϊʔυނো ͳͲΛલఏͱ͢Δϓϩτίϧ ࣄۀऀʹΑΓγεςϜΛूத ؅ཧɾৗ࣌Քಇɻར༻ऀ͸Π ϯλʔωοτܦ༝Ͱར༻ ৴པੑͷ௿͍ίϯϙʔωϯτ܈Λ ౔୆ʹ৴པੑͷߴ͍γεςϜઃܭ ఏڙܗଶ ৴པੑͷߟ͑ํ ɾ෦඼͕ؒ૬ޓ࡞༻͢ ΔγεςϜ΁ ɾ෦඼ͷނোΛલఏͱ ͨ͠ઃܭͱอक΁ 

Slide 26

Slide 26 text

運 用 のライフサイクルの変遷 [1] 10+ Deploys Per Day: Dev and Ops Cooperation at Flickr https://www.slideshare.net/jallspaw/10-deploys- per-day-dev-and-ops-cooperation-at-flickr ։ൃ ӡ༻ɾอक ೲ඼ Dev → Ops αʔϏεࢦ޲ ΁Ҡߦ [1] ։ൃ ӡ༻ DevOps ϑΣʔζΛ෼ ཭ͤͣɺৗʹ ϦϦʔε ೲ඼લޙͰ ϑΣʔζΛ෼཭ 26

Slide 27

Slide 27 text

運 用 のライフサイクルの変遷 αʔϏεࢦ޲ ΁Ҡߦ [1] ։ൃ ӡ༻ɾอक ೲ඼ ։ൃ ӡ༻ Dev → Ops DevOps ϑΣʔζΛ෼ ཭ͤͣɺৗʹ ϦϦʔε ೲ඼લޙͰ ϑΣʔζΛ෼཭ [Beyer+, 2018] The Site Reliability Workbook: Practical Ways to Implement SRE ҰํͰɺมߋස౓͕ߴ͍͜ͱ͔Βɺมߋ͕ো֐ͷҾ͖ۚͱͳΔ (PPHMFͰ͸ো֐ͷҾ͖ۚͷ͏ͪ͸มߋʹΑΔ΋ͷ [Beyer+, 2018] 27

Slide 28

Slide 28 text

変更による障害発 生 を前提にしたい ཱ྆͢Δʹ͸ ߴස౓ͷมߋ ߴ৴པੑ [Beyer+, 2016] Site Reliability Engineering: How Google Runs Production Systems ɾ׬શͳ৴པੑ͸໨ࢦ͞ͳ͍ ɾ৴པੑͷࢦඪͱͦͷ໨ඪ஋Λઃఆ ɾ໨ඪ஋ΛԼݶͱͯ͠ɺ։ൃऀ͸ੵۃతʹมߋՄೳͱ͢Δ ɾʮ৴པੑʯΛ੍ޚ͠ɺมߋ଎౓Λ࠷େԽ͢Δ Site Reliability Engineering (SRE) [Beyer+, 2016] 28

Slide 29

Slide 29 text

SREにおける信頼性の定義 γεςϜ͕ٻΊΒΕΔػೳΛɼఆΊΒΕͨ৚݅ͷԼͰఆΊΒΕͨظؒ ʹΘͨΓো֐Λى͜͢͜ͱͳ࣮͘ߦ͢Δ֬཰ <>10`$POOPS ",MFZOFS l1SBDUJDBM3FMJBCJMJUZ&OHJOFFSJOHz 8JMFZ1VCMJTIJOH  <> ৴པੑ޻ֶʹ͓͚Δఆٛͱಉ͡ 4-*ʢ4FSWJDF-FWFM*OEJDBUPSʣ 4-0ʢ4FSWJDF-FWFM0CKFDUJWFʣ αʔϏεͷৼΔ෣͍ͷ͋Δଆ໘ʢՄ༻ੑɺϨΠ ςϯγɺεϧʔϓοτͳͲʣΛఆྔԽͨ͠ई౓ "HH t∈W (SLI(t)) ≥ Target SLI = |Egood | |Eall | × 100[ % ] 4-*ʹର͢Δᮢ஋ͱɺͦΕΛܭଌ͢Δ࣌ؒ΢Ο ϯυ΢ͷ૊Έ߹Θͤ 29

Slide 30

Slide 30 text

SLI/SLOの具体例 4-* ϨΠςϯγNTͰฦ٫͞Εͨ)551ϦΫΤετ਺   શ༗ޮ)551ϦΫΤετ਺ 4-0 աڈ೔ؒʹ͓͍ͯɺ্ه4-*͕Ҏ্Ͱ͋Δ͜ͱɻ ݁Ռ ΋࣮͠੷஋͕Ͱ͋Ε͹ɺ4-0ҧ൓ͱͳΓɺ৴པੑ޲্ͷ ͨΊͷΞΫγϣϯΛ࣮ߦ͢ΔҙࢥܾఆΛߦ͏ɻ 30

Slide 31

Slide 31 text

SREの定義(坪内版) SREͱ͸ɺߴස౓ͷมߋΛલఏͱ͢ΔγεςϜΛର৅ʹɺ ɹ1) ར༻ऀࢹ఺Ͱͷ৴པੑΛܭଌՄೳͳมྔʹؼணͤ͞ɺ ɹ2) ৴པੑΛద੾ͳ஋ʹ੍ޚՄೳͱ͢Δ͜ͱʹΑΓɺ ɹ3) ଞͷมྔʢมߋ଎౓ɺඅ༻ͳͲʣΛ๬·͍͠஋ʹಋ͘ɺ ͜ͱΛ໨తͱ͢Διϑτ΢ΣΞ޻ֶͷҰ෼໺Ͱ͋Δ 31

Slide 32

Slide 32 text

SREの定義(坪内版) SREͱ͸ɺߴස౓ͷมߋΛલఏͱ͢ΔγεςϜΛର৅ʹɺ ɹ1) ར༻ऀࢹ఺Ͱͷ৴པੑΛܭଌՄೳͳมྔʹؼணͤ͞ɺ ɹ2) ৴པੑΛద੾ͳ஋ʹ੍ޚՄೳͱ͢Δ͜ͱʹΑΓɺ ɹ3) ଞͷมྔʢมߋ଎౓ɺඅ༻ͳͲʣΛ๬·͍͠஋ʹಋ͘ɺ ͜ͱΛ໨తͱ͢Διϑτ΢ΣΞ޻ֶͷҰ෼໺Ͱ͋Δ ৴པੑ͸௨ྫͰ͸໨తม਺͕ͩɺ੍ޚม਺ͱͯ͠ѻ͑ΔΑ͏ʹ ͢Δ͜ͱΛڧௐͨ͠ఆٛɻ 32

Slide 33

Slide 33 text

ΘΕΘΕͷঢ়گʹؔ͢Δೋͭͷมྔ͕͋Δ΋ͷͱ͠ ͯɺͦͷҰํ͸ΘΕΘΕʹ͸੍ޚͰ͖ͳ͍΋ͷɺଞ ͷҰํ͸ΘΕΘΕʹௐઅͰ͖Δ΋ͷͰ͋Δͱ͠· ͠ΐ͏ɻͦͷͱ੍͖ޚͰ͖ͳ͍มྔͷաڈ͔Βݱࡏ ʹ͍ͨΔ·Ͱͷ஋ʹ΋ͱ͍ͮͯɺௐઅͰ͖Δมྔͷ ஋Λద౰ʹఆΊɺΘΕΘΕʹ࠷΋ͭ͝͏ͷΑ͍ঢ় گΛ΋ͨΒ͍ͤͨͱ͍͏๬Έ͕΋ͨΕ·͢ɻͦΕΛ ୡ੒͢Δํ๏͕$ZCFSOFUJDTʹ΄͔ͳΒͳ͍ͷͰ͢ɻ ϊʔόʔτɾ΢Οʔφʔஶɼ”αΠόωςΟοΫε ――ಈ෺ͱػցʹ͓͚Δ੍ޚͱ௨৴”ɼୈ̎൛ ؠ೾จݿ 2011೥ ೔ຊޠ൛ લॻ͖ΑΓҾ༻ ࠶ܝ ʮαΠόωςΟοΫεʯͷ·͕͖͑ʹ৮ൃ͞Εͯఆٛͨ͠ 33

Slide 34

Slide 34 text

1)利 用 者視点での信頼性を計測可能な変量へ ਅͷར༻ऀମݧ ͸௚઀؍ଌͰ͖ͳ͍ͨΊɺ͜ΕΛࣸ૾ ʹΑͬͯ ܭଌՄೳͳ਺஋ ʹม׵͢Δɻ Quser f R(t) R(t) = f(Quser (t)) + ϵ(t) ܭଌޡࠩ 34

Slide 35

Slide 35 text

2,3)信頼性制御 4ZTUFN %ZOBNJDT · R(t) = −k ⋅ ω(t) ֎ཚʹΑΔྼԽ + g(u(t)) ΦϖϨʔγϣϯհೖ ঢ়ଶํఔࣜ ֎ཚ ૢ࡞ 4VCKFDU UP ∫ R(t)dt ≥ Rtarget (4-0੍໿) 0CKFDUJWF .BYJNJ[Fu(t) ∫ X(t)dt ग़ྗ ํఔࣜ 4-0ᮢ஋ ։ൃ଎౓΍ίετ 4-* 35

Slide 36

Slide 36 text

状態 方 程式の動作を観測する 方 法 ,BMNBO͸೥ͷ࿦จͰɺ͋Δಛ௃ΛΦϒβʔόϏϦςΟͱ໊ ෇͚ɺ਺ֶత੍ޚγεςϜΛઆ໌͠·ͨ͠ɻ z੍ޚཧ࿦Ͱ͸ɺΦϒβʔόϏϦςΟͱ͸ɺγεςϜͷ֎෦ग़ྗͷ ஌͔ࣝΒɺγεςϜͷ಺෦ঢ়ଶΛͲΕ͚ͩ͏·͘ਪଌͰ͖Δ͔Λ ࣔ͢ई౓ͱఆٛ͞Ε͍ͯ·͢ɻz <>ΑΓҾ༻ɻ੺৭ڧௐ෦͸ߨԋऀʹΑΔ΋ͷɻ <>$.BKPSTɺ-'POH+POFTɺ(.JSBOEBʮΦϒβʔόϏϦςΟɾΤϯδχΞϦϯάʯ0`3FJMMZ +BQBO ΦϒβʔόϏϦςΟʢՄ؍ଌੑʣ 36

Slide 37

Slide 37 text

オブザーバビリティ(可観測性) <>ߴҪਅਓ ΦϒβʔόϏϦςΟͱҭͯͨ*%؅ཧɾೝূೝՄج൫ͷาΈ0CTFSWBCJMJUZ$POGFSFODF 5PLZPIUUQTTQFBLFSEFDLDPNLBNJOBTIJUIFKPVSOFZPGBOJENBOBHFNFOUBVUIFOUJDBUJPO ϝτϦΫεɺϩάɺτϨʔεͳͲͷςϨϝτϦʔσʔλΛ༻͍ͯɺ։ൃӡ༻ऀ ͕಺෦ঢ়ଶΛਪఆ͢Δɻʢ੍ޚ޻ֶͱ͸ҟͳΓɺ͋͘·Ͱਓ͕ؒਪఆʣ ೖྗ ਅͷγεςϜঢ়ଶ <>ͷQʹܝࡌ͞ΕͨਤΛվมͯ͠࡞੒ ਪఆͨ͠γεςϜঢ়ଶ ਅͷग़ྗ ਪఆͨ͠ग़ྗ Ͱ͖Δ͚ͩҰக͍ͤͨ͞ ਪఆޡࠩ ޡ͕ࠩখ͘͞ͳΔΑ͏ʹϑΟʔυόοΫ 37

Slide 38

Slide 38 text

38 ϞχλϦϯάͱ͸ରরతʹɺΦϒβʔό ϏϦςΟʹ͸ҟͳΔߟ͑ํͱϢʔεέʔ ε͕͋Γ·͢ɻষͰݟ͖ͯͨ௨ΓɺΦ ϒβʔόϏϦςΟ͸ΑΓϓϩΞΫςΟϒ Ͱ͢ɻ ΤϯδχΞ͸σϓϩΠ͢ΔίʔυΛৗʹ ݟுͬͯɺຖ೔࣌ؒΛ͔͚࣮ͯՔಇதͷ ίʔυΛ୳ࡧ͠ɺϢʔβʔ͕ίʔυΛ࢖ ༻͢Δ༷ࢠΛ஫ࢹ͠ɺͦͯ͠ɺҟৗ஋΍ ޷ح৺ΛͦͦΔΑ͏ͳي੻Λ୳͠ճΔɻ <>$.BKPSTɺ-'POH+POFTɺ(.JSBOEBʮΦϒβʔόϏϦςΟɾΤϯδχΞϦϯάʯ0`3FJMMZ +BQBO <>ΑΓҾ༻

Slide 39

Slide 39 text

39 現代のSREは庭師のような存在ではないか <>%JPHP4PV[B l4PXJOH4VDDFTTXJUI43&5IF6OFYQFDUFE1BSBMMFMCFUXFFO(BSEFOJOHBOE5FDIOPMPHz IUUQT NFEJVNDPN!EJPHPTPV[BTSFTPXJOHTVDDFTTXJUITSFUIFVOFYQFDUFEQBSBMMFMCFUXFFOHBSEFOJOHBOE UFDIOPMPHZBE

Slide 40

Slide 40 text

なにが変わったのか? ͋Δ΂͖ঢ়ଶ ࠓͷঢ়ଶ ࠩ෼ ԿΛ͢΂͖͔ ɾaction 1 ɾaction 2 ɾ… ࠓͷঢ়ଶ खஈࢦ޲ ໨తࢦ޲ ओ؍త શମ၆ᛌ ٬؍త ہॴࢹ఺ ٕܳత ޻ֶత [1] ”։ൃऀͷͨΊͷγεςϜζΤϯδχΞϦϯάಋೖͷનΊ”, ୈ1.1൛, IPA, 2017೥. [1] [1] 40

Slide 41

Slide 41 text

技術と 工 学 [1] ଜ্ ཅҰ࿠, ”޻ֶͷྺ࢙ͱٕज़ͷྙཧ”, ؠ೾ॻళ, 2006೥. lٕज़ͱ͸ɼਓ͕ؒͦͷੜΛશ͏͢ΔͨΊʹɼࣗΒͷ໨తҙࣝʹج ͍ͮͯɼ໨ඪͷୡ੒Λ໨ࢦͯ͠Ҋग़͠ɼ·ͨ࢖༻͢ΔʮΘ͟ʯͷ૯ ମͱͰ΋ఆٛ͢Ε͹Α͍ͩΖ͏z l޻ֶͱ͍͏ݴ༿͸ɼͦ͏ٕͨ͠ज़Λֶ໰Խͨ͠΋ͷͱఆٛͰ͖Δz  ݴޠͳͲʹΑΓ޿͘఻ୡՄೳͳܗʹ੔උ͞Ε͍ͯΔ  ઐ໳ྖҬʹΑͬͯମܥԽ͞Εͨʮ஌ࣝʯͱ͍͏ܗଶΛͱΔ [1] ΑΓҾ༻ 41

Slide 42

Slide 42 text

第 二 章:まとめ w ӡ༻ٕज़͸޻ֶ΍ݚڀͱͯ͠ݟͳ͞Εͳ͔ͬͨྺ࢙͕͋Δ w 43&͸ɺ৴པੑͱ͍͏໨తม਺Λ੍ޚม਺Խ͢ΔΞϓϩʔνͰ͋Δ w 43&ʹΑΓɺιϑτ΢ΣΞγεςϜͷӡ༻ٕज़͸޻ֶతͳ໨తࢤ޲ͱͳΓɺ ϞσϧԽ͞Εͨ ͔͠͠ɺ43&Ϟσϧ͸ϒϥοΫϘοΫεͩΒ͚Ͱ͸ͳ͍͔ʁ ˠୈࡾষʹଓ͘ 42

Slide 43

Slide 43 text

 43 3. SREのためのBlack box as a Black box    はじめに 工 学 としての SRE 博 士 論 文  まとめ  SREのため のBlack box as a Black box 

Slide 44

Slide 44 text

ここからの話は、 極めて抽象的で 今後も多くの議論を要します。 

Slide 45

Slide 45 text

サイバネティクス的アプローチ ۙ୅Պֶɾ޻ֶ #MBDLCPY 8IJUFCPY ղੳ αΠόωςΟΫε #MBDLCPY #MBDLCPY #MBDLCPY BTB #MBDLCPY ࠶ ܝ 45

Slide 46

Slide 46 text

サイバネティクス的アプローチ ۙ୅Պֶɾ޻ֶ #MBDLCPY 8IJUFCPY ղੳ αΠόωςΟΫε #MBDLCPY #MBDLCPY #MBDLCPY BTB #MBDLCPY 43&Ϟσϧ͸ܾͯ͠ϗϫΠτϘοΫεͰ͸ͳ͍ 46

Slide 47

Slide 47 text

SREモデルの3つのブラックボックス ਅͷར༻ऀମݧ ୅ཧࢦඪ4-*ɹ ࣸ૾ؔ਺f γεςϜ  ͷෳࡶܥ S u(t) 𝒮 ,ω R(t + 1) ೚ҙͷʮมߋʯΛՃ͑ͨ࣌ʹɺγες Ϝͷ৴པੑ͕௿Լ͢Δ͔Ͳ͏͔ɻ f ֎ཚ  ͷ෼෍ ω(t) ͍ͭɺͲͷΑ͏ͳछྨͷো֐΍ෛՙมಈ ͕ൃੜ͢Δ͔ͱ͍͏֬཰෼෍ɻ ᶃ ᶄ ᶅ Quser (t) R(t) 47

Slide 48

Slide 48 text

ブラックボックス (1/3)   写像関数 f ৘ใγεςϜ ։ൃӡ༻ऀ ར༻ऀମݧ Quser (t) ͸ར༻ऀͷߦಈ૝ఆ΍ɺϏδωε্ͷଛࣦɺ աڈͷΠϯγσϯτͳͲΛ౿·͑ͯ ։ൃӡ༻ऀͷ௚؍Ͱௐઅ͞Εଓ͚Δ f ࣸ૾ؔ਺f ར༻ऀ 4-*R(t) S 48

Slide 49

Slide 49 text

ブラックボックス (2/3)   の複雑系 S ৘ใγεςϜ ։ൃӡ༻ऀ S ೚ҙͷʮมߋʯΛՃ͑ͨ࣌ʹɺγεςϜͷ৴ པੑ͕௿Լ͢Δ͔Ͳ͏͔ɻ ར༻ऀ มߋu(t) 4-*R(t + 1) ։ൃӡ༻ऀͷϝϯλϧϞσϧͱͯ͠ଘࡏ͢Δ 49

Slide 50

Slide 50 text

ブラックボックス (3/3)   外乱 の分布 w(t) ৘ใγεςϜ ֎ཚw(t) S ։ൃӡ༻ऀ ར༻ऀ ͍ͭɺͲͷΑ͏ͳछྨͷো֐΍ෛՙมಈ ͕ൃੜ͢Δ͔͸ະ஌ɻ 50

Slide 51

Slide 51 text

さらにブラックボックス間で相互作 用 がある ৘ใγεςϜ ֎ཚw(t) S ։ൃӡ༻ऀ ར༻ऀ ར༻ऀମݧ Quser (t) 4-*R(t) มߋu(t) ࣸ૾ؔ਺f 51

Slide 52

Slide 52 text

写像 の掘り下げ: 利 用 者の主観性 f ݱঢ়ͷ43&͸ར༻ऀͷίϯςΩετΛѻ͍͑ͯͳ͍ ۈଵγεςϜͷྫ ࢝ۀͰɺʹग़ۈϘλϯΛԡͦ͏ͱͨ͠ΒγεςϜ͕μ΢ϯ͍ͯͨ͠ ˞࣮຿త޻෉ͱͯ͠ɺ$VTUPNFS6TFS+PVSOFZʢ$6+ʣͳͲ͸͋Δ ͦͷϢʔβʔʹͱͬͯ͸ɺαʔϏε΁ͷओ؍త৴པ͕େ͖͘௿Լ͢Δ ʹ΋͔͔ΘΒͣݱঢ়ͷ4-0ͷ࿮૊ΈͰ͸ɺԿ࣌ͷΞΫηεͰ͋ͬͯ΋౳Ձʹ ѻ͏܏޲͕͋Δɻ ˞(PPHMFͷݚڀʹɺϔϏʔϢʔβʔʹΑΔόΠΞεΛߟྀͨ͠.FBOJOHGVM"WBJMBCJMJUZ ͳͲ͸͋Δ ˞ ˞ 52

Slide 53

Slide 53 text

ブラックボックス性ゆえに事後的になる ࣄલత ʢྫʣιϑτ΢ΣΞ৴པੑ޻ֶ ଟ͘ͷ޻ֶ෼໺͸ࣄલʹཁ݅Λચ͍ग़͠ߏ଄෺Λઃܭ͢Δ <>*BO4PNNFSWJMMF 3FEVDUJPOJTNBOE$PNQMFY4ZTUFNT&OHJOFFSJOH IUUQTJBOTPNNFSWJMMFDPNUFDIOPMPHZ DPNQMFYTZTSFEVDUJPOJTN <>'SFE#SPPLT l/P4JMWFS#VMMFU&TTFODFBOE"DDJEFOUTPG4PGUXBSF&OHJOFFSJOHz *&&&DPNQVUFS  ࣄޙత ιϑτ΢ΣΞ։ൃͰ͸ɺࣄલʹཁ݅ΛఆΊΔ͜ͱ͕೉͘͠ɺؔ ܎ऀͱͷؔΘΓ͔Βൃݟ͞ΕΔ΋ͷͰ͋Δɻ <> ʢྫʣ43&ͷ4-*4-0ͳͲ <> 53

Slide 54

Slide 54 text

利 用 者は利 用 にとどまらなくなる ར༻ऀ ։ൃӡ༻ऀ ৘ใγεςϜ ੡࡞ऀ ར༻ऀ͸ࣗ෼͕ٻΊΔ΋ͷΛ"*ΤʔδΣϯτΛհͯ͠ର࿩ తɾମݧతʹࣗΒ੡࡞͢Δɻʢ఻౷తͳຽ͔ܳΒ৮ൃʣ %*$0.0*05ηογϣϯͷߨԋͰʮηϧϑΫϥϑτʯͱ͍͏ੈք؍Λఏࣔ <>௶಺༎थ ௽ాതจ l"*࣌୅ʹ޲͚ͨΫϥ΢υʹ͓͚Δ৴པੑΤϯδχΞϦϯάͷະདྷߏ૝z %*$0.0 <> <>܀ྛ݈ଠ࿠ ࡾ୐༔հ দຊ྄հ ͳΊΒ͔ͳγεςϜΛ໨ࢦͯ͠ %*$0.0 <>ͷਤΛ վมͯ͠࡞੒ 54

Slide 55

Slide 55 text

現在のアプリケーション開発 Ϋϥ΢υ Πϯλʔωοτ ඪ४Խ͞Εͨ ػೳͱ ΠϯλʔϑΣΠε ඪ४Խࢦ޲ͷੈք ඪ४Խ͞Εͨ ௨৴ϓϩτίϧͱAPI ։ൃӡ༻ऀ ཁૉٕज़ ΞϓϦέʔγϣϯ։ൃऀ͸Ϋϥ΢υ্ͷσʔλߏ଄΍ ܭࢉϢχοτ΋ඪ४Խ͞Εͨ΋ͷΛར༻ ΞϓϦέʔγϣϯ ͷܧଓߋ৽ αʔϏε ଟ਺ͷར༻ऀʹڞ௨ʹΈΒΕΔજࡏతͳχʔζΛൃݟ ͠ɺඪ४Խ͞ΕͨػೳͱΠϯλʔϑΣΠεΛఏڙ ඪ४Խ͞Εͨ σʔλߏ଄ ඪ४Խ͞Εͨ ܭࢉϢχοτ 55

Slide 56

Slide 56 text

20XX年代のソフトウェア開発クラフト ݸผԽࢦ޲ͷੈք ۭؒͱͷΠϯλϥΫγϣϯ ʢXRʣ Πϯλʔωοτ Ϋϥ΢υ ֶशܕ௨৴ ϓϩτίϧ [Kraska+, SIGMOD2018] The Case for Learned Index Structures ֶशܕ σʔλߏ଄ AI AI AI ηϧϑ Ϋϥϑτ αʔϏε ར༻ऀͷજࡏతͳχʔζʹࢸΔ· ͰɺAIͱར༻ऀ͕ػೳͱΠϯλʔ ϑΣΠεΛର࿩తɾମݧతʹ࣮૷ ཁૉٕज़ ΞϓϦέʔγϣϯͷཁٻ ʹ͋Θֶͤͨशܕͷݸผ ࠷దԽ ૬ޓ࡞༻ʹ ΑΔਐԽ [Ma+, EuroSys2022] Multi-Objective Congestion Control [Kraska+, SIGMOD2018] [Ma+, EuroSys2022] e2eͰར༻ऀͷཁٻʹԠͯ͡ ࠷దͳϓϩάϥϜͱϓϩτί ϧ͕ಈత͔ͭదԠతʹมԽ 56

Slide 57

Slide 57 text

主観性や事後性をもつ ブラックボックスをどう扱えばいいか? ݱࡏ͸։ൃӡ༻ऀͷ஌ࣝͱܦݧ͔Β͘Δ௚ײʹґڌ͍ͯ͠Δ 

Slide 58

Slide 58 text

サイバネティクスのアプローチ ػց࿦͔ΒγεςϜ࿦΁ ϑΟʔυόοΫ ϧʔϓ Ұํతʹૢ࡞͢ΔͷͰ͸ͳ͘ɺग़ྗ ͕ೖྗʹ໭ͬͯ͘Δ॥؀ߏ଄ɻ ηΧϯυ Φʔμʔ ؍ଌऀʢΤϯδχΞʣ΋γεςϜ ͷҰ෦Ͱ͋Δɻ੍ޚ͢Δଆͱ͞Ε ΔଆΛ෼཭͠ͳ͍ɻ ૑ൃ ෦඼͝ͱͷػೳͷ૯࿨Ҏ্ͷԿ͔ ͕γεςϜશମ͔Βੜ·ΕΔɻ 58

Slide 59

Slide 59 text

世界の再魔術化 ຐज़తੈքʢલۙ୅ʣ ࣗ෼ʢ؍ଌऀʣͱࣗવʢ؍ଌର৅ʣ͕ҰମԽͨ͠ঢ়ଶ ࠶ຐज़Խ ݱ୅ͷߴ౓Խٕͨ͠ज़΍ࣾձߏ଄͸ɺਓʑͷཧղΛલۙ୅తͳஈ֊΁ ͱҾ͖໭͍ͯ͠Δɻ ୤ຐज़Խʢۙ୅Պֶʣ ࣗ෼ʢ؍ଌऀʣͱࣗવʢ؍ଌର৅ʣΛ੾Γ཭͢ओ٬ೋݩ࿦ ཁૉؐݩओٛ <>ϞϦεɾόʔϚϯɼσΧϧτ͔ΒϕΠτιϯ΁ʕʕੈքͷ࠶ຐज़Խɼจ᥁य़ळɼ೥ <> 59

Slide 60

Slide 60 text

再魔術化の世界からの 工 学への要求 ୤ຐज़Խʢۙ୅Պֶʣ ຐज़తੈքʢલۙ୅ʣ ࠶ຐज़Խ ࣄલੑ ݸผԽࢤ޲ ඪ४Խࢤ޲ ࣄޙੑ ओ؍ੑ ٬؍ੑ ૑ൃੑ ཁૉؐݩ #MBDLCPY BTB#MBDLCPY ੈք͸όϥόϥͷ෦඼Ͱ͸ͳ͘ɺ ޓ͍ʹ৘ใʢϑΟʔυόοΫʣΛ ΍ΓऔΓ͢Δ૬ޓґଘͷωοτ ϫʔΫͰ͋ΔͱΈͳ͢ &OE UP &OE 60

Slide 61

Slide 61 text

Ironies of Automation [Bainbridge, Pergamon1983] Ironies of Automation. Analysis, Design and Evaluation of Man–machine Systems [Bainbridge, Pergamon1983] ੍ޚγεςϜ͕ߴ౓ʹͳΕ͹ͳ Δ΄ͲɺਓؒͷΦϖϨʔλʔͷ ߩݙ͕ΑΓॏཁʹͳΔɻ ͔͠͠ਓ͕ؒͦͷ໾ׂΛՌͨ ͢ೳྗ͸௿Լ͍ͯ͘͠ɻ δϨϯϚ ௒஌ೳ͕શͯͷӡ༻ΛࣗಈԽ͢Δ͜ͱΛ҆௚ʹ͸ظ଴͕ͪ͠ Ͱ͋Δɻ͔͠͠ɺݱߦͷAIͷԆ௕ઢ্ͷൣғͰ͸ͱɺʮࣗಈ Խͷൽ೑ʯ͔Β͸ಀΕΒΕͳ͍Մೳੑ͕͋Δɻ 61

Slide 62

Slide 62 text

<>5IPNBT,XB FUBM l.FBTVSJOH"*"CJMJUZUP$PNQMFUF-POH5BTLz IUUQTNFUSPSH CMPHNFBTVSJOHBJBCJMJUZUPDPNQMFUFMPOHUBTLT AIの性能予測 ݱঢ়͸ਓ͕ؒ෼ཁ͢ΔλεΫΛͷਫ਼౓Ͱ࣮ߦՄ <>ΑΓҾ༻ 62

Slide 63

Slide 63 text

<>5IPNBT,XB FUBM l.FBTVSJOH"*"CJMJUZUP$PNQMFUF-POH5BTLz IUUQTNFUSPSH CMPHNFBTVSJOHBJBCJMJUZUPDPNQMFUFMPOHUBTLT AIの性能予測 <>ΑΓҾ༻ ӡ༻͸ɺ਺೥୯ҐͷҰ؏ͨ͠ίϯςΩετͷҡ࣋Λඞཁͱ͢Δෳ ࡶͳλεΫू߹ͳͷͰɺ"*ʹؙ౤͛͸·ͩ·ͩݱ࣮తͰ͸ͳ͍ ݱঢ়͸ਓ͕ؒ෼ཁ͢ΔλεΫΛͷਫ਼౓Ͱ࣮ߦՄ 63

Slide 64

Slide 64 text

なめらかなシステム 64  ར༻ऀͱ৘ใγεςϜɺ։ൃӡ༻ऀ͔ΒͳΔ૯ମͱͯ͠ͷγεςϜͰ͋Δ  ར༻ऀ͸ɺ৘ใγεςϜͱͷܧଓతͳίϛϡχέʔγϣϯΛ௨ͯ͡ɺίϯςΩετ ʢબ޷΍໨తʣ͕ࣄޙతʹܗ੒͞ΕΔ͜ͱ ଟ༷ੑͱ ओ؍ੑΛ ߟྀ ӡ༻ۀ຿ͷ ଟ༷ੑ Ϣʔβʔ ։ൃӡ༻ऀ ৘ใγεςϜ <>܀ྛ݈ଠ࿠ ࡾ୐༔հ দຊ྄հ ͳΊΒ͔ͳγεςϜΛ໨ࢦͯ͠ %*$0.0 <>ͷਤΛվมͯ͠࡞੒

Slide 65

Slide 65 text

AIエージェントネットワーク <>ࡾ୐༔հ zͳΊΒ͔ͳγεςϜͱӡ༻ҡ࣋ͷऴΘΒ͵ະདྷz %*$0.0IUUQT TQFBLFSEFDLDPNNPOPDISPNFHBOFEJDPNPDPIFSFOUMZ fi UUBCMFTZTUFN TMJEF User Community Information System Developer User Community Information System Developer <> ଟ਺ͷΤʔδΣϯτΛഔհͱͯ͠ɺωοτϫʔΫΛுΓ८ΒͤΔ ӡ༻ऀͷܦݧʹ༝ དྷ͢Δ௚؍Λྲྀ௨ ར༻ऀͷະදݱͷ ओ؍΍ײ৘Λྲྀ௨ ςϨϝτϦʔ৴߸ͷม ԽͳͲͷҙຯ͕ྲྀ௨ ΤʔδΣϯτͱͷίϛϡχέʔγϣϯʹΑͬͯੜ͡ΔίϯςΩετΛྲྀ௨ͤ͞Δ ৘ใγεςϜ ར༻ऀɾ ੡࡞ऀ ։ൃӡ༻ऀ 65

Slide 66

Slide 66 text

フィードバックの相互流通 User Community Information System Developer User Community Developer ৘ใγεςϜ ར༻ऀɾ ੡࡞ऀ ։ൃӡ༻ऀ ӈํ޲ͷϑΟʔυόοΫ ࠨํ޲ͷϑΟʔυόοΫ ݱࡏ͸ɺར༻ऀͱ։ൃӡ༻ऀؒʹ͸ɺΧελϚʔαϙʔτରԠఔ౓ͷ كͳݴޠతίϛϡχέʔγϣϯ͔͠ͳ͍ɻ ͦΕʹରͯ͠ɺར༻ऀͱ։ൃӡ༻ऀؒͷඍࡉͳओ؍৘ใΛϑΟʔυ όοΫͱͯ͠૬ޓྲྀ௨Ͱ͖Δͷ͕ྑ͞Ͱ͋Δɻ 66

Slide 67

Slide 67 text

End to Endによるパラメータ最適化 ΤʔδΣϯτωοτϫʔΫ಺Ͱɺ·ΔͰਂ૚ֶशͷࣗಈඍ෼ͷΑ͏ʹɺΤʔδΣ ϯτ΍৘ใγεςϜ͕΋ͭύϥϝʔλ͕࠷దԽ͞Ε͍ͯ͘ɻ γεςϜ಺ͷϒϥοΫϘοΫεؔ਺͸ɺਓ͕ؒཧղͰ͖ͳ͍ܗͰࣄޙత ʹ࠷దԽ͞Ε͍ͯ͘ɻ ʢࣸ૾ؔ਺ ɺγεςϜ ͷෳࡶܥɺ֎ཚ ͳͲʣ f S w(t) 67

Slide 68

Slide 68 text

SRE視点でなにがうれしいか? User Community Developer User Community Developer ৘ใγεςϜ ར༻ऀɾ ੡࡞ऀ ։ൃӡ༻ऀ 4-*4-0͸୭͔͕໌ܾࣔͯ͠ΊΔΘ͚Ͱ͸ͳ͘ɺϑΟʔυόοΫͷ॥؀͔Β ࣗಈతʹௐ੔͞Εଓ͚Δ ᶃมߋ ᶄ֎ཚ ᶅ୭͔͕ෆຬʹײ͡Δ ᶃʙᶅͷ৘ใΛҼՌؔ܎ͷ͋ΔίϯςΩετͱͯ͠ѻ͑Δɻ 68

Slide 69

Slide 69 text

再魔術化の世界における開発運 用 者 ቭঁͷΑ͏ͳଘࡏͰ͸ͳ͍͔ʁ ݹདྷɺቭঁ͸ਆΛͦͷ਎ʹ߱Ζ͠ɺ ਆʢࣗવʣͱͷΠϯλʔϑΣΠεͱ ͳͬͨɻ  ·ΔͰࣗવͷΑ͏ʹෳࡶԽͨ͠ܭࢉ ػγεςϜʹ͸ቭঁͱ૬ࣅܗͷଘࡏ ͕ඞཁͰ͸ͳ͍͔ɻ 69

Slide 70

Slide 70 text

巫 女 的運 用 者がやること ؍ଌʢ0CTFSWBCJMJUZʣ ຖ೔࣌ؒΛ͔͚࣮ͯՔಇதͷίʔυΛ୳ࡧ͠ɺϢʔβʔ͕ίʔυΛ࢖༻͢Δ ༷ࢠΛ஫ࢹ͠ɺͦͯ͠ɺҟৗ஋΍޷ح৺ΛͦͦΔΑ͏ͳي੻Λ୳͠ճΔɻ ࣮ݧʢ$IBPT&OHJOFFSJOHʣ <>$BTFZ3PTFOUIBMBOE/PSB+POFT $IBPT&OHJOFFSJOH4ZTUFN3FTJMJFODZJO1SBDUJDF 0SFJMMZ  <>$.BKPSTɺ-'POH+POFTɺ(.JSBOEBʮΦϒβʔόϏϦςΟɾΤϯδχΞϦϯάʯ0`3FJMMZ +BQBO <>ΑΓҾ༻ zγεςϜͷऑ఺Λ໌Β͔ʹ͢ΔͨΊͷ࣮ݧͷଅਐ ૝ఆ֎ͷ֎ཚʹΑΔෆՄࢥٞͳ૬ޓ࡞༻ʹରॲ͢Δɻ <>ΑΓҾ༻ ΤʔδΣϯτΛഔհͱͯ͠ɺ޷ح৺͕ܹࢗ͞ΕɺΤϥʔόδΣοτͷൣ ғͰɺ؍ଌͱ࣮ݧΛ܁Γฦͯ͠ɺϝϯλϧϞσϧΛߋ৽͍ͯ͘͠ɻ 70

Slide 71

Slide 71 text

࣮ݧͷࣗಈԽ --.ʹΑΔ$IBPT&OHJOFFSJOHͷ࣮ݧϫʔΫϑϩʔࣗಈԽ ར༻ऀߦಈ ϕʔε4-0 ར༻ऀ୯ҐͷΞΫηεස౓Λجʹͨ͠ܭଌ <,JLVUB BS9JW>l$IBPT&BUFS'VMMZ"VUPNBUJOH$IBPT&OHJOFFSJOHXJUI-BSHF-BOHVBHF.PEFMTz <)BVFS /4%*>.FBOJOHGVMBWBJMBCJMJUZ <)BVFS /4%*> <,JLVUB BS9JW> ఉࢣɾቭঁͷϝϯλϧϞσϧߋ৽ͷࢧԉ ߴ࣍ͷՄ؍ଌੑ どのように研究につなげていくか? ͜ͷߏ૝͕ະདྷ༧ଌͱͯ͠౰ͨΔ͔౰ͨΒͳ͍͸Ͳ͏Ͱ΋Α͘ɺݚڀ ͷண૝ʹͭͳ͕Ε͹Α͍ɻ ݶఆతʹߏ૝Λ࣮ݱͯ͠ੵΈ্͍͛ͯ͘ 71

Slide 72

Slide 72 text

第三章:まとめ w 43&Ϟσϧʹ͸ɺͭͷ૬ޓ࡞༻͢ΔϒϥοΫϘοΫε͕͋Δɻ w αΠόωςΟΫεɾੈքͷ࠶ຐज़ԽΛ౿·͑Δͱɺ͜Ε͔Βͷ43&ʹ͸ɺ૑ൃੑɾ ओ؍ੑɾݸผԽࢤ޲ɾࣄޙੑͷ֤ੑ࣭Λߟ্ྀͨ͠Ͱͷ޻ֶతண૝͕ٻΊΒΕΔɻ w ͳΊΒ͔ͳγεςϜΛجʹɺӡ༻ͷ࠶ຐज़ԽϞσϧΛߏ૝ͨ͠ɻར༻ऀ͔Β৘ใγ εςϜɺӡ༻ऀʹࢸΔ·Ͱ&OEUP&OEͷ"*ΤʔδΣϯτωοτϫʔΫ͕ுΓ८Β ͞Εɺྲྀ௨͞ΕΔίϯςΩετΛجʹ֤ύϥϝʔλ͕ࣄޙతʹ࠷దԽ͞Ε͍ͯ͘ɻ w ࠶ຐज़Խ͞ΕͨγεςϜΛௐ࿨తʹӡ༻͢Δͷ͸ɺΤʔδΣϯτΛഔհͱͯ͠؍ଌ ͱ࣮ݧΛ܁Γฦ͢ʮቭঁʯͷΑ͏ͳӡ༻ऀͱͳΔͩΖ͏ɻ 72

Slide 73

Slide 73 text

 73    はじめに 工 学 としての SRE 博 士 論 文  まとめ  SREのため のBlack box as a Black box 4. 博 士 論 文 

Slide 74

Slide 74 text

SREの再魔術化モデルにおける博論の位置づけ ৘ใ γεςϜ ར༻ऀɾ ੡࡞ऀ ։ൃ ӡ༻ऀ User Community Information System Developer c System) Prepation (t3) User Community Information System Developer ؍ଌ ৘ใγεςϜ͕ు͖ग़͢๲ େͳੜσʔλͷ؍ଌෛՙΛ ͍͔ʹ௿ݮͤ͞Δ͔ʁ ςϨϝτϦʔ γεςϜ 74

Slide 75

Slide 75 text

唐突に博論のストーリーへ 

Slide 76

Slide 76 text

クラウドコンピューティングの普及 Cloud ΦϯϥΠϯαʔϏεࣄۀऀ͸ Ϋϥ΢υ؀ڥʹΞϓϦέʔγϣϯΛ ߏங͠ɺΠϯλʔωοτΛհͯ͠ɺ ར༻ऀʹαʔϏεΛఏڙɻ ɾιʔγϟϧωοτϫʔΩϯά ɾEίϚʔε ɾΦϯϥΠϯήʔϜ ɾϝσΟΞ഑৴ ɾϖΠϝϯτ ɾIoT ɾ… Applications Datacenters (ར༻ऀ) എܠ 76

Slide 77

Slide 77 text

クラウドアプリケーションの基本アーキテクチャ Fig. 2.1 όοΫΤϯυ૚ ϏδωεϩδοΫॲཧ ϑϩϯτΤϯυ૚ σʔλϕʔεʢDBʣ ΫϥελʹΑΔϏδ ωεσʔλͷ؅ཧɻ 77

Slide 78

Slide 78 text

クラウドアプリケーションの基本アーキテクチャ Fig. 2.1 ෛՙ෼ࢄͱ৑௕Խ ඇಉظॲཧ ༻్͝ͱͷ ҟछDBγεςϜ Մ༻ੑͱن໛֦ுͷͨΊͷෳ਺ͷٕ ज़͕ંΓॏͳΓෳࡶԽ͍ͯ͠Δɻ 78

Slide 79

Slide 79 text

クラウドアプリケーションの基本アーキテクチャ ᶃ ᶄ ᶅ ᶆ ϦΫΤετॲཧͷܦ࿏ͷҰྫ Fig. 2.1 ϦΫΤετɾϨεϙϯεܕͷܗଶɻ τϥϯεϙʔτ઀ଓΛऴ୺͠தܧ͢Δɻ 79

Slide 80

Slide 80 text

ςϨϝτϦʔγεςϜ σʔλ఻ૹ テレメトリーによる監視と分析 ؂ࢹͱ෼ੳͷͨΊʹɺγεςϜɺΞϓϦέʔγϣϯɺαʔϏε͔Βԕִ஍΁ɺ ੑೳ΍ར༻ʹؔ͢ΔσʔλΛࣗಈͰऩू͠ɺૹ৴͢Δɻ ܭثͷಡΈऔΓ஋Λه࿥͠ɺૹ৴͢Δϓϩηεɻ ࣙॻͷఆٛ ຊݚڀʹ͓͚Δఆٛ ԕִ஍ ܭث ૹ৴ ෼ੳ ςϨϝτϦʔ [63] <>'SBOL$BSEFO 3VTTFMM1+FEMJDLB BOE3PCFSU)FOSZ5FMFNFUSZ4ZTUFNT&OHJOFFSJOH 80 ར༻ऀ Πϯλʔωοτ ։ൃӡ༻ऀ ৘ใ γεςϜ

Slide 81

Slide 81 text

ςϨϝτϦʔγεςϜ σʔλ఻ૹ テレメトリーシステムの典型構成 ࡾ૚ߏ଄ʹ෼ׂ ܭଌ อଘ ෼ੳ 81 ར༻ऀ Πϯλʔωοτ ։ൃӡ༻ऀ ৘ใ γεςϜ

Slide 82

Slide 82 text

ར༻ऀ Πϯλʔωοτ ςϨϝτϦʔγεςϜ σʔλ఻ૹ テレメトリーワークロードの増 大 ܭࢉࢿݯ ফඅ૿େ σʔλॲཧྔ૿େ •ΞϓϦͷCPU/ϝϞ Ϧফඅྔ૿ •ΞϓϦͷॲཧ஗Ԇ૿ •DBͷऔΓࠐΈॲཧෛՙ૿ •DBͷอଘσʔλྔ૿ • ػցֶशͷॲཧ஗Ԇ૿ Ճɾਫ਼౓௿Լ ܭଌ อଘ ෼ੳ 82 ։ൃӡ༻ऀ ৘ใ γεςϜ

Slide 83

Slide 83 text

ςϨϝτϦʔγεςϜ 目 的:Scaling Telemetry Workloads ܭଌ อଘ ෼ੳ ϫʔΫϩʔυ Φ ʛ ό ʛ ϔ ο υ ςϨϝτϦʔϫʔΫϩʔυͷ૿େʹରͯ͠ɺ ޮ཰తʹεέʔϦϯάͤ͞Δ 83 ར༻ऀ Πϯλʔωοτ ։ൃӡ༻ऀ ৘ใ γεςϜ

Slide 84

Slide 84 text

ܭଌ อଘ ෼ੳ ςϨϝτϦʔγεςϜ σʔλ఻ૹ 貢献:各層ごとの課題を技術的に解決 ܭࢉࢿݯ ফඅ૿େ σʔλॲཧ ྔ૿େ ߩݙᶃ ߩݙᶅ ߩݙᶄ 84 ωοτϫʔΫ τϨʔε ϝτϦΫε ར༻ऀ Πϯλʔωοτ ։ൃӡ༻ऀ ৘ใ γεςϜ

Slide 85

Slide 85 text

ܭଌ อଘ ෼ੳ ςϨϝτϦʔγεςϜ 貢献①:計測 ܭࢉࢿݯ ফඅ૿େ ߩݙᶅ ߩݙᶄ Y. Tsubouchi, M. Furukawa, R. Matsumoto, Low Overhead TCP/UDP Socket- based Tracing for Discovering Network Services Dependencies, JIP, 2022. ωοτϫʔΫίʔ ϧάϥϑΛಘΔͨ ΊʹɺeBPFʹΑΔ ௿Φʔόʔϔου ͳܭ૷๏ʹண໨ɻ 85 ར༻ऀ Πϯλʔωοτ ։ൃӡ༻ऀ ৘ใ γεςϜ ߩݙᶃ

Slide 86

Slide 86 text

ネットワークコールグラフ Ͳ͏΍ͬͯܭଌ͢Δʁ Cloud Load Balancers Database Clusters Web app servers Message queues ֤ίϯϙʔωϯτͷݺͼग़ؔ͠܎ Λ஌Γ͍ͨɻ - มߋͷӨڹൣғΛ஌Γ͍ͨɻ - ϦϯΫ୯ҐͷϝτϦΫεΛ஌Γ͍ͨɻ ߩݙᶃ 86

Slide 87

Slide 87 text

計装アプローチ Cloud Load Balancers Database Clusters Web app servers Message queues Kernel User Proxy Network Stack App NIC Switch ωοτϫʔΫ௨৴ܦ࿏্ͷ͍ͣΕ ͔ʹܭଌ఺Λઃஔ͢Δɻ ߩݙᶃ Χʔωϧͷ্Ґ૚ʢιέοτʣͰͷܭ૷ʹண໨ɻ ରApp: ΞϓϦͷमਖ਼͕ඞཁͳ͍ɻ ରProxy: தܧΦʔόʔϔου͕ͳ͍ɻ ରSwitch: ܭଌෛՙΛΤϯυϗετʹ෼ࢄͰ͖Δɻ 87

Slide 88

Slide 88 text

ソケット層における計装 手 法 Kernel User Service Agent ετϦʔϛϯά๏ ϑϩʔू໿๏ ϑϩʔूଋ๏ʢఏҊʣ ✗ ϝοηʔδ਺૿ՃʹԠ͡ ͯɺϢʔβۭؒ΁ͷܭଌ஋ͷ సૹ਺͕૿Ճɻ ✗ ୹໋ͳϑϩʔ͕૿Ճ͢Δͱɺసૹ σʔλ਺΋૿Ճɻ Ѽઌ͕ಉҰͷϑϩʔΛଋ ͶΔɻ ※ ϑϩʔ = ྆୺ͷΞυϨεͱϙʔτͷ૊͕ಉҰͷ௨৴୯Ґ Queue ܭଌ఺ Kernel User Service Agent ܭଌ఺ ※ ໼ҹ͸σʔλͷྲྀΕΛද͢ ✔ ϑϩʔ͝ͱʹू໿͞Εͨܭଌ஋ ͷΈอଘɻసૹσʔλ਺Λ௿ݮɻ Flow1 Flow2 Flow3 Flow4 Kernel User Service Agent ܭଌ఺ ✔ ୹໋ͳϑϩʔ਺͕ଟ͘ͱ ΋సૹσʔλ਺Λ௿ݮ Bundle 1 Bundle 2 ✔ ܭଌΦʔόʔϔου͕ খ͍͞ ([96,97]) ([27,98]) ߩݙᶃ 88 <>+JO+JO-JO FUBM l.JDSPTDPQF1JOQPJOU1FSGPSNBODF*TTVFTXJUI$BVTBM(SBQITJO.JDSP4FSWJDF&OWJSPONFOUTz*$40$  <>8FBWF4DPQFIUUQTHJUIVCDPNXFBWFXPSLTTDPQF

Slide 89

Slide 89 text

ソケット層における計装 手 法 Kernel User Service Agent ετϦʔϛϯά๏ ϑϩʔू໿๏ ϑϩʔूଋ๏ʢఏҊʣ ✗ ϝοηʔδ਺૿ՃʹԠ͡ ͯɺϢʔβۭؒ΁ͷܭଌ஋ͷ సૹ਺͕૿Ճɻ ✗ ୹໋ͳϑϩʔ͕૿Ճ͢Δͱɺసૹ σʔλ਺΋૿Ճɻ Ѽઌ͕ಉҰͷϑϩʔΛଋ ͶΔɻ ※ ϑϩʔ = ྆୺ͷΞυϨεͱϙʔτͷ૊͕ಉҰͷ௨৴୯Ґ Queue ܭଌ఺ Kernel User Service Agent ܭଌ఺ ※ ໼ҹ͸σʔλͷྲྀΕΛද͢ ✔ ϑϩʔ͝ͱʹू໿͞Εͨܭଌ஋ ͷΈอଘɻసૹσʔλ਺Λ௿ݮɻ Flow1 Flow2 Flow3 Flow4 Kernel User Service Agent ܭଌ఺ ✔ ୹໋ͳϑϩʔ਺͕ଟ͘ͱ ΋సૹσʔλ਺Λ௿ݮ Bundle 1 Bundle 2 ✔ ܭଌΦʔόʔϔου͕ খ͍͞ ([96,97]) ([27,98]) ߩݙᶃ 89 <>'SBODJTDP/FWFT FUBM l#MBDLCPY*OUFSBQQMJDBUJPO5SB ff i D.POJUPSJOHGPS"EBQUJWF$POUBJOFS1MBDFNFOUz4"$ <>%BUBEPH/FUXPSL1FSGPSNBODF.POJUPSJOHIUUQTEPDTEBUBEPHIRDPNOFUXPSL@NPOJUPSJOHQFSGPSNBODF

Slide 90

Slide 90 text

ソケット層における計装 手 法 Kernel User Service Agent ετϦʔϛϯά๏ ϑϩʔू໿๏ ϑϩʔूଋ๏ʢఏҊʣ ✗ ϝοηʔδ਺૿ՃʹԠ͡ ͯɺϢʔβۭؒ΁ͷܭଌ஋ͷ సૹ਺͕૿Ճɻ ✗ ୹໋ͳϑϩʔ͕૿Ճ͢Δͱɺసૹ σʔλ਺΋૿Ճɻ Ѽઌ͕ಉҰͷϑϩʔΛଋ ͶΔɻ ※ ϑϩʔ = ྆୺ͷΞυϨεͱϙʔτͷ૊͕ಉҰͷ௨৴୯Ґ Queue ܭଌ఺ Kernel User Service Agent ܭଌ఺ ※ ໼ҹ͸σʔλͷྲྀΕΛද͢ ✔ ϑϩʔ͝ͱʹू໿͞Εͨܭଌ஋ ͷΈอଘɻసૹσʔλ਺Λ௿ݮɻ Flow1 Flow2 Flow3 Flow4 Kernel User Service Agent ܭଌ఺ ✔ ୹໋ͳϑϩʔ਺͕ଟ͘ͱ ΋సૹσʔλ਺Λ௿ݮ Bundle 1 Bundle 2 ✔ ܭଌΦʔόʔϔου͕ খ͍͞ ([96,97]) ([27,98]) ߩݙᶃ 90

Slide 91

Slide 91 text

実験:短命なTCPフロー数の増 大 に対するCPU負荷の 比 較 ఏҊख๏ ɾ2.2%ҎԼͷCPUར༻཰Λҡ࣋ɻ ετϦʔϛϯά๏ ࠷େ21.3%·ͰCPUར༻཰͕૿Ճɻ Χʔωϧ಺ू໿๏ ࠷େ11.5%·ͰCPUར༻཰͕૿Ճɻ ߩݙᶃ 91

Slide 92

Slide 92 text

ܭଌ อଘ ෼ੳ ৘ใ γεςϜ ։ൃӡ༻ऀ ར༻ऀ Πϯλʔωοτ ςϨϝτϦʔγεςϜ 貢献②:保存 ܭࢉࢿݯ ফඅ૿େ ߩݙᶃ ߩݙᶅ ߩݙᶄ ࣌ܥྻσʔλʢϝ τϦΫεʣͷ औΓࠐΈॲཧޮ཰ ޲্ͱ௕ظσʔλ อଘίετͷ௿ݮ Λཱ྆͢Δɻ ௶಺༎थ, ࿬ࡔேਓ, ᖛా݈, দ໦խ޾, খྛོߒ, Ѩ෦ത, দຊ྄հ, HeteroTSDB: ҟछ෼ࢄ KVSؒͷࣗಈ֊૚ԽʹΑΔߴੑೳͳ࣌ܥྻσʔλϕʔε, ৘ใॲཧֶձ࿦จࢽ, 2021೥. 92

Slide 93

Slide 93 text

ϝτϦΫεͷऔΓࠐΈϫʔΫϩʔυྔ͸ɺ̎ͭͷ࣍ݩʹൺྫ͢Δ ࣌ؒ cpu_seconds{instance=host1,…} memory_total_bytes{instance=host1,…} http_requests_count{instance=host1,…} http_requests_count{instance=host99,…} औΓࠐΈ ᶄ ϝ τ Ϧ Ϋ ε ͷ ݸ ਺ ᶃ ղ૾౓ (Ұൠʹ1 ~ 60ඵͷൣғ) ߩݙᶄ メトリクスストレージのワークロード 93

Slide 94

Slide 94 text

ϝτϦΫεͷऔΓࠐΈϫʔΫϩʔυྔ͸ɺ̎ͭͷ࣍ݩʹൺྫ͢Δ ࣌ؒ cpu_seconds{instance=host1,…} memory_total_bytes{instance=host1,…} http_requests_count{instance=host1,…} http_requests_count{instance=host99,…} ߩݙᶄ ᶄ ϝ τ Ϧ Ϋ ε ͷ ݸ ਺ ᶃ ղ૾౓ (Ұൠʹ1 ~ 60ඵͷൣғ) cpu_seconds{instance=host1,…} cpu_seconds{instance=host1,mode=user,core_no=1,…} cpu_seconds{instance=host1,mode=system,core_no=1,…} cpu_seconds{instance=host1,mode=user,core_no=2,…} ଟ࣍ݩԽʹΑΔݸ਺૿Ճ ෼ղ 94 メトリクスストレージのワークロード

Slide 95

Slide 95 text

95 メトリクスストレージのスケーラビリティ要求 औΓࠐΈॲཧεϧʔϓοτ σʔλอଘྔ ɾਫฏ෼ׂ͞Εͨෳ਺ϊʔυͰͷऔΓࠐΈ ɾϝϞϦ্ͷσʔλߏ଄΁ͷޮ཰తॻ͖ࠐΈ Ұൠతͳղܾ๏ Slack 12M datapoints / sec Meta 700M datapoints / min LYCorp 12.5M datapoints / min [19] [32] [112] Slack 12 TB / day ByteDance 10 TB/ day LYCorp 2.7 TB / day Mackerel 460 days Ұൠతͳղܾ๏ σʔλѹॖٕज़΍ ίʔϧυετϨʔδ্Ͱͷ௕ظอଘ ߩݙᶄ [19] [35] [69] [112] <>4VNBO,BSVNVSJ FUBM l5PXBSET0CTFSWBCJMJUZ%BUB.BOBHFNFOUBU4DBMFz 4*(.0%3FDPSE  <>5VPNBT1FMLPOFO FUBMl(PSJMMB"'BTU 4DBMBCMF *O.FNPSZ5JNF4FSJFT%BUBCBTFz 7-%#  <>9VBOIVB4IJ FUBMl#ZUFTFSJFT"O*O.FNPSZ5JNF4FSJFT%BUBCBTFGPS-BSHF4DBMF.POJUPSJOH4ZTUFNTz 4P$$  <>)JSPLJ4BLBNPUP4DBMJOH5JNF4FSJFT%BUBUP*O fi OJUZ",VCFSOFUFT1PXFSFE4PMVUJPOXJUI&OWPZIUUQTTQFBLFSEFDLDPNMZDPSQUFDI@KQTDBMJOH@UTEC@JOJ fi OJUFMZ@XJUI@PTT <>.BDLFSFMIUUQTNBDLFSFMJP

Slide 96

Slide 96 text

96 KVSの取り込み効率 ϝϞϦϕʔεKVS ϝϞϦ͸ϥϯμϜΞΫ ηεޮ཰ʹ༏ΕΔͨ ΊɺϋογϡදΛ࠾༻ σΟεΫϕʔεKVS ϝτϦΫε਺͕૿େ͢Δ = KVSͷΩʔ਺͕૿େ͢Δ Memory Disk ฏߧ໦ɾεΩο ϓϦετͳͲͷ ιʔτࡁΈߏ଄ ιʔτࡁΈͷͨ ΊσΟεΫΞΫ ηεޮ཰͕ߴ͍ O(logn) ॻ͖ࠐΈ Flush ॻ͖ࠐΈ Memory O(k) σΟεΫ্ʹσʔλΛอ࣋͠ͳ͍ɻ ʢίϛοτϩά΍εφοϓγϣοτΛআ͘ʣ Disk File HBase, Cassandra, … Redis, Valkey, Dragonfly, … ߩݙᶄ ↳ ಺෦ΦϒδΣΫτͷ؅ཧίετ૿େɻྫʣσʔλ௥Ճ࣌ͷΠϯσοΫεࢀরޮ཰

Slide 97

Slide 97 text

97 KVSの取り込み効率 ϝϞϦϕʔεKVS ϝϞϦ͸ϥϯμϜΞΫ ηεޮ཰ʹ༏ΕΔͨ ΊɺϋογϡදΛ࠾༻ σΟεΫϕʔεKVS ϝτϦΫε਺͕૿େ͢Δ = KVSͷΩʔ਺͕૿େ͢Δ Memory Disk ฏߧ໦ɾεΩο ϓϦετͳͲͷ ιʔτࡁΈߏ଄ ιʔτࡁΈͷͨ ΊσΟεΫΞΫ ηεޮ཰͕ߴ͍ O(logn) ॻ͖ࠐΈ Flush ॻ͖ࠐΈ Memory O(k) σΟεΫ্ʹσʔλΛอ࣋͠ͳ͍ɻ ʢίϛοτϩά΍εφοϓγϣοτΛআ͘ʣ Disk File HBase, Cassandra, … Redis, Valkey, Dragonfly, … ߩݙᶄ ✘ ϝϞϦ͸هԱྔ͋ͨΓͷඅ༻͕େ ͖͍ͨΊɺ௕ظอ࣋ʹ͸ෆ޲͖ɻ ✘ Ωʔ਺͕େ͖͍࣌ʹɺσʔλͷॻ͖ ࠐΈޮ཰͕௿Լ͢Δɻ ↳ ಺෦ΦϒδΣΫτͷ؅ཧίετ૿େɻྫʣσʔλ௥Ճ࣌ͷΠϯσοΫεࢀরޮ཰

Slide 98

Slide 98 text

98 提案 手 法 HeteroTSDB Client ϝϞϦϕʔεKVS σΟεΫϕʔεKVS App Flusher ௚ۙͷλΠϜελϯϓΛ΋ͭσʔ λ͕֨ೲ͞ΕΔϝϞϦόοϑΝ ϋογϡදʹجͮ͘ߴ଎औΓࠐΈ ݹ͍λΠϜελϯϓΛ΋ͭσʔλ͕ ֨ೲ͞ΕΔσΟεΫετϨʔδ SSD/HDDʹอଘ͢Δ͜ͱʹΑΔ ௕ظอ࣋ίετͷ௿Լ σʔλͷϚΠά Ϩʔγϣϯ ཱ྆ ߩݙᶄ (Redis) (Cassandra)

Slide 99

Slide 99 text

99 実験:取り込み処理効率の 比 較 ϗετ਺ʢ1~8ʣ औ Γ ࠐ Έ ε ϧ ʛ ϓ ο τ ఏҊख๏ʢHeteroTSDBʣ͕ ϕʔεϥΠϯͷ3.98ഒɻ 420k datapoints/s ੨ɿKairosDB ᒵɿఏҊख๏ Slackࣾͷ12 M/s ͷϫʔΫϩʔυʹஔ ͖׵͑Δͱ - ఏҊख๏͸229ݸ - KairosDB͸915ݸ ͷϗετ਺Λඞཁͱ͢ΔܭࢉʹͳΔɻ ϝτϦΫε਺Λ1Mʹݻఆ ߩݙᶄ

Slide 100

Slide 100 text

ܭଌ อଘ ෼ੳ ৘ใ γεςϜ ։ൃӡ༻ऀ ར༻ऀ Πϯλʔωοτ ςϨϝτϦʔγεςϜ 貢献③:分析 ܭࢉࢿݯ ෛՙ૿େ ߩݙᶃ ߩݙᶅ ߩݙᶄ ো֐ʹؔ࿈͠ͳ͍ϝ τϦΫεΛڭࢣͳ͠ ػցֶशͰࣗಈͰ࡟ ݮ͢Δલॲཧ๏Λఏ Ҋ͢Δɻ 100 Y. Tsubouchi and H. Tsuruta, MetricSifter: Feature Reduction of Multivariate Time Series Data for Efficient Fault Localization in Cloud Applications, IEEE Access, 2024.

Slide 101

Slide 101 text

101 ϝτϦΫε ։ൃӡ༻ऀ 機械学習による故障特定の 自 動化 ࣗಈނোಛఆ ো֐ݕ஌ ετϨʔδ 2. ೖྗ 3. ग़ྗ 1. ىಈ ݪҼΛࣔ͢ϝτϦΫε ͷϥϯΩϯά 1. memory_total_bytes{instance=host4,…} 2. disk_write_io{instance=host4,…} 3. net_transmit_bytes{instance=host1,…} 4. … [94,96,124-136] ظ଴͞ΕΔ࣮ߦ࣌ؒ͸ ਺෼εέʔϧ

Slide 102

Slide 102 text

102 ϝτϦΫε 機械学習による故障特定の 自 動化 ࣗಈނোಛఆ ো֐ݕ஌ ετϨʔδ 2. ೖྗ 3. ग़ྗ 1. ىಈ 1. … 2. … 3. … ػցֶश ɾϝτϦΫεͱࠜຊݪҼͷϖΞΛେྔʹ ؚΉσʔληοτ͕ͳ͍ɻ ɾओʹڭࢣͳֶ͠श͕࠾༻͞ΕΔɻ ɾϝτϦΫε͝ͱʹҟৗ౓Λࢉग़ɻ ɾϝτϦΫεؒͷҟৗ఻ൖΛัଊɻ [94,96,124-136] ϥϯΩϯά ։ൃӡ༻ऀ

Slide 103

Slide 103 text

103 ϝτϦΫε ਺͕૿େ ࣗಈނোಛఆ ো֐ݕ஌ ετϨʔδ 2. ೖྗ 3. ग़ྗ 1. ىಈ ϥϯΩϯά 1. … 2. … 3. … ػցֶश ϝτϦΫε਺ͷ૿େʹΑΓɺਫ਼౓ͱ ࣮ߦ͕࣌ؒ௿Լ͢Δɻ [94,96,124-136] [23,24] ։ൃӡ༻ऀ 機械学習による故障特定の 自 動化

Slide 104

Slide 104 text

104 ϝτϦΫε ਺͕૿େ 故障特定における性能低下の問題 ࣗಈނোಛఆ ো֐ݕ஌ ετϨʔδ 2. ೖྗ 3. ग़ྗ 1. ىಈ 1. … 2. … 3. … ػցֶश ಛ௃ྔ࡟ݮ ϊΠζͱͳΔϝτϦΫε ΛऔΓআ͘ ϝτϦΫε਺ͷ૿େʹΑΓɺਫ਼౓ͱ ࣮ߦ͕࣌ؒ௿Լ͢Δɻ [23,24] [23,87] [94,96,124-136] ϥϯΩϯά ։ൃӡ༻ऀ

Slide 105

Slide 105 text

105 既存の特徴削減とその課題 ҟৗੑʹجͮ͘࡟ݮ ো֐࣌ؒ֎ͷҟৗΛݕ஌͠͏Δɻ ݪҼϝτϦΫεʢ ʣؒͰ͸ྨࣅ͠΍͍ͨ͢ Ίɺޡ࡟আ͕ൃੜ͠͏Δɻ MA ҟৗ͕ແ͍࣌ܥྻΛ࡟আ ૬ؔੑ΍ܗঢ়ྨࣅੑͷߴ͍࣌ܥྻΛ࡟আ ৑௕ੑʹجͮ͘࡟ݮ ຊདྷ࡟আ͍ͨ࣌͠ܥྻ ʢِཅੑʣ ʢِӄੑʣ ো֐ظؒ [23,124,131] [87,129,133]

Slide 106

Slide 106 text

106 既存の特徴削減とその課題 ҟৗੑʹجͮ͘࡟ݮ ো֐࣌ؒ֎ͷҟৗΛݕ஌͠͏Δɻ ݪҼϝτϦΫεʢ ʣؒͰ͸ྨࣅ͠΍͍ͨ͢ Ίɺޡ࡟আ͕ൃੜ͠͏Δɻ MA ҟৗ͕ແ͍࣌ܥྻΛ࡟আ ૬ؔੑ΍ܗঢ়ྨࣅੑͷߴ͍࣌ܥྻΛ࡟আ ৑௕ੑʹجͮ͘࡟ݮ ຊདྷ࡟আ͍ͨ࣌͠ܥྻ ʢِཅੑʣ ʢِӄੑʣ ো֐ظؒ [23,124,131] [87,129,133] Ұ෦ͷϝτϦΫεʹݱΕΔҟৗੑɾ৑௕ੑͷΈΛѻ͏ɻ ہॴత େҬత γεςϜશମͷʮো֐ʯ΁ͷؔ࿈ੑΛଊ͍͑ͨɻ

Slide 107

Slide 107 text

107 観察と仮定 Fig. 5.1: Change points in root fault metric.ΑΓҰ෦ൈਮ ނোൃੜ࣌ؒ ނোىҼͷมԽ఺͸ ޓ͍ʹ͍ۙ࣌ؒʹݱΕΔ ؍࡯ ہॴతͳಛ௃͔Β େҬతͳো֐Λ ଊ͑Δ มԽ఺͕࣌ؒ࠷΋ภΔൣғ͕ɺো֐ظؒͱͳΔ Ծఆ

Slide 108

Slide 108 text

108 ɾຊݚڀͰ͸ɺେҬతͳো֐Λଊ͑Δಛ௃ྔ࡟ݮ๏ΛఏҊͨ͠ɻ ɾఏҊख๏͸࠷ྑͷਖ਼ղ཰Λୡ੒͠ɺEnd-to-endͰͷਫ਼౓ͱ࣮ߦޮ཰Λ޲্ͤͨ͞ɻ 貢献の概要 ख๏ छผ ֶशछผ େҬੑ FluxInfer-AD BIRCH K-S test NSigma PairCorr k-Shape HDBS+SBD MetricSifter ҟৗੑ ৑௕ੑ ൒ڭࢣ͋Γ ʢਖ਼ৗظؒͷࢦఆʣ ڭࢣͳ͠ ҟৗੑ ڭࢣͳ͠ ✘ ✘ ✘ ✔ ଊ͑Δಛ௃ มԽ఺ ਖ਼ৗ - ҟৗظؒͷ ϢʔΫϦουڑ཭ ܗঢ়ྨࣅੑ ෼෍ͷมԽɾ֎Ε஋ ϐΞιϯ૬ؔੑ ڭࢣͳ͠ ҟछͷಛ௃ྔ࡟ݮ๏Λఆྔൺֱͨ͠ॳͷݚڀ

Slide 109

Slide 109 text

109 提案 手 法:MetricSifter Fig. 5.5: An example of feature reduction using the MetricSifter framework. STEP 2: มԽ఺࣌ؒͷ෼෍Λجʹ ηάϝϯτΛ෼ׂ STEP 1: ࣌ܥྻ͝ͱʹɺނো༝དྷͷมԽ఺ ީิΛݕग़ STEP 3: ࠷େີ౓ͷηάϝϯτΛબ୒ IUUQTHJUIVCDPNBJTSFNFUSJDTJGUFS

Slide 110

Slide 110 text

110 実験: 実証データ詳細( 大 規模 >100 metrics) -medium SS -large SS -small TT -medium TT 184 metrics 1312 383 1349 ಛఆͷނোಛఆ๏ʢRCDʣͷΈ͕ݱ࣮తͳ࣌ؒ಺ʢ3600ඵҎ಺ʣͰॲཧΛऴ͑ͨɻ ଞ͸ɺނোಛఆΞϧΰϦζϜʹฒྻੑ͕ͳ͍ݱ࣮తͳ࣌ؒ಺ʹ׬ྃͤͣɻ ϝτϦΫε਺>1000Ͱ͸ɺ͍ͣΕͷέʔεʹ͓͍ͯ΋ ඇৗʹ௿͍ਫ਼౓ͱͳͬͨɻ

Slide 111

Slide 111 text

第四章まとめ: Scaling Telemetry Workloads ςϨϝτϦʔγεςϜ ৘ใγεςϜ ։ൃӡ༻ऀ Ϣʔβʔ Πϯλʔωοτ ܭଌ ετϨʔδ ϚΠχϯά Ϧιʔεফඅ Ϧιʔεফඅ ϫʔΫϩʔυͷ૿େ ⾭ ⾭ ߩݙ ᶃ Χʔωϧ಺ωοτϫʔΫϑ ϩʔͷूଋʹΑΔ௿Φʔόʔ ϔουͳܭ૷๏ͷఏҊɻ ߩݙ ᶄ औΓࠐΈޮ཰ͱ௕ظอ࣋Λ ཱ྆ՄೳͳҟछKVSͷ֊૚ ԽΞʔΩςΫνϟͷఏҊɻ ʢैདྷൺ࠷େ3.98ഒͷεϧʔ ϓοτ޲্ʣ ߩݙ ᶅ ো֐ʹؔ࿈͢ΔϝτϦΫε ͷมԽ఺ͷूதੑʹண໨͠ ͨಛ௃࡟ݮ๏ͷఏҊɻ ʢैདྷൺฏۉ+4.5%ͷਫ਼౓޲্ ฏۉ࣮ߦ࣌ؒ45-52%ͷ޲্ʣ ʢCPU࢖༻཰2.2%ҎԼɺRTT Φʔόʔϔου࠷େ6μsʣ 111

Slide 112

Slide 112 text

博 士 論 文 と公聴会スライド資料 IUUQTTQFBLFSEFDLDPNZVVLJUQIEEFGFODF IUUQTEPJPSHEPDUPSL 112

Slide 113

Slide 113 text

――博 士 研究振り返り―― 

Slide 114

Slide 114 text

論 文 を何度も書きなおした  ࠃ಺ࠪಡ ෇͖ݚڀձ ࠃࡍձٞ ࠃ಺ δϟʔφϧ ୈҰͷ ݚڀ ୈೋͷ ݚڀ ࠃ಺ࠪಡ ෇͖ݚڀձ ࠃࡍձٞ ୈࡾͷ ݚڀ ࠃ಺ࠪಡ ෇͖ݚڀձ ࠃࡍ δϟʔφϧ 3FKFDU ׬શ࡮৽ ׬શ࡮৽ ׬શ࡮৽ ࠃ಺ δϟʔφϧ ࠃ಺ δϟʔφϧ *&&&"DDFTT +PVSOBMPG *OGPSNBUJPO 1SPDFTTJOH ৘ใॲཧֶձ࿦จࢽ *054 *054 *054

Slide 115

Slide 115 text

115 博 士 研究の感想 ੒Ռ ͢͹Β͍͠ത࢜࿦จͰ΋ݚڀۀ੷Ͱ΋ܾͯ͠ͳ͍͕ɺ ࣗ෼Β͍͠΋ͷ͕Ͱ͖͕͋ͬͨͱࢥ͑ͨ ָ ͠ ͞ ‣࿦จΛ௨ͯ͡෼໺τοϓͷਓͷண૝ʹຖ೔৮ΕΒΕΔ ‣ೲಘ͢Δ·ͰऔΓ૊ΊΔ ‣͜Μͳੲʹ͜Μͳ͜ͱ΍͍ͬͯͨͷ͔ʂͱ͍͏஌త޷ح৺ͷຬ଍ ‣F#1'ɺ"*0QTͳͲۀ຿Ͱ͸৮Εʹ͔ٕͬͨ͘ज़Ͱ༡΂Δ ‣গͳ͘ͱ΋ࠃ಺ͳΒ୭΋΍ͬͯͳͦ͞͏ͳ͜ͱΛ΍͍ͬͯΔؾ࣋ ͪʹͳΕΔʢຊ౰͸ੈքͳΒʜ͕Α͍ʣ

Slide 116

Slide 116 text

博 士 課程を通じて得られたスキル ଟ૚తͳݴޠࢥߟೳྗ ಠࣗͷઐ໳ٕज़ମܥ ଞͷֶज़෼໺ͱͷ઀ଓೳྗ ݸੑ΍ᅂ޷ʹجͮ͘ಠ૑ੑ ࣗ਎ͷ಺ʹମܥΛ΋ͭײ֮ ۀքࣄ৘΍༻ޠʹґଘ͠ͳ͍ 自身 の来歴が反映された博論 4DBMJOH 5FMFNFUSZ 8PSLMPBET ֓೦Խ ‣Ұݟόϥόϥͳ΋ ͷΛͭͳ͙ྗ ‣๲େͳ৘ใΛ੔ཧ ͠ฤ੒͢Δྗ ‣ͳʹ͕ྑ͍͔Λධ Ձ͢Δྗ 116

Slide 117

Slide 117 text

生 成AI時代における博 士 課程の意義 ஌త࿑ಇʹ͓͚ΔΞ΢τϓο τͷੵΈॏͶ͕ͳ͍ ͜ͱʹΑΔڏແײ ʢ࣮ଘతۭڏײͷҰछ ʣ ੜ੒"*͸จॻ΍ίʔυΛ ༰қʹੜ੒Ͱ͖Δ ΁͍ͣΕͭͳ͕Δ͔΋͠Εͳ͍ ࣗ෼ͷ಺ʹମܥΛ̍ຊߏங ͢Δത࢜՝ఔͷମݧʹ͸ҙ ͕ٛ͋ΔͷͰ͸ͳ͍͔ ࣗ෼ͷதͰΞ΢τϓοτΛ ੵΈॏͶଓ͚Δ͜ͱ͕ॏཁ ͱͳΔ 117

Slide 118

Slide 118 text

 118 5. まとめ    はじめに 工 学 としての SRE 博 士 論 文  まとめ  SREのため のBlack box as a Black box 

Slide 119

Slide 119 text

総括 43&͸αΠόωςΟΫεͷ ເΛΈΔ͔ʁ 43&͸ະ஌Λະ஌ͷ··ѻ͑Δ͔ʁ ":FTͱݴ͑ΔΑ͏ʹ͍ͨ͠ɻ 43&͸ݩʑϒϥοΫϘοΫεͷଘࡏΛલఏͱ͢Δɻ ར༻ऀɾγεςϜɾӡ༻ऀɾ"*͕ͭ͘ΔϑΟʔυόοΫϧʔϓʹΑΔࣄޙత ͔ͭܧଓతͳ࠷దԽΛ௨ͯ͡ɺཧղ͖͠Εͳ͍··ͷੈքʹະ஌ͱ෇͖߹͍ ଓ͚ΔͨΊͷ޻ֶ΁ͱਐԽ͍ͤͨ͞ɻ ͦͷͨΊʹɺʮ؍ଌʯͱʮ࣮ݧʯ͕ΩʔʹͳΔ 119

Slide 120

Slide 120 text

目 下取り組んでいること IUUQTXXXJQTKDIVHPLVKQLPVFOLBJIUNM ೥݄೔ʢ݄ʣ ޿ౡ:.$"ࠃࡍจԽηϯλʔຊ͓ؗΑͼΦϯϥΠϯ "*εʔύʔίϯϐϡʔλʹ͓͚Δ --.ֶशॲཧੑೳͷܭଌͱՄ؍ଌੑ ԋ୊ ৔ॴ ೔࣌ 120 ೥౓৘ใॲཧֶձதࠃࢧ෦ओ࠵ߨԋձ

Slide 121

Slide 121 text

関連 文 献 1/3 IUUQTTQFBLFSEFDLDPNZVVLJUUFMFNFUSZGPSTSF IUUQTTQFBLFSEFDLDPNZVVLJUBDFSUBJOTSFTQIEPUEKPVSOFZ :"1$'VLVPLBήετηογϣϯ 43&/&95*/50,:0 121

Slide 122

Slide 122 text

関連 文 献 2/3 IUUQTTQFBLFSEFDLDPNZVVLJUSFWJTJUJOHTSFBTFOHJOFFSJOH IUUQTTQFBLFSEFDLDPNZVVLJUEJDPNPB 43&/&95*/50,:0 %*$0.0ট଴ߨԋ 122

Slide 123

Slide 123 text

関連 文 献 (3/3) IUUQTTQFBLFSEFDLDPNZVVLJUUFMFNFUSZTZTUFNTSFTFBSDIUSFOETJO 123

Slide 124

Slide 124 text

謝辞 • GMOペパボ株式会社 ペパボ研究所 三宅悠介さんには、本講演の内容を組み 立 て るために、多 大 なご助 言 をいただきました。 5IBOLTUP!NPOPDISPNFHBOF 124

Slide 125

Slide 125 text

締めくくりの 言 葉 [1] ࢁా ৊ਓ (ݪஶ), Ξϕ πΧα, “૴ૹͷϑϦʔϨϯʢ10ʣ”, খֶؗ, 2023೥. [1]ΑΓҾ༻ ਓྨ͸ුྗͷݪཧΛղ໌͢Δલ͔ΒધΛ࡞Γɺ෩͕ ى͜Δݪཧ΋෼͔Βͳ͍··ൕͰધΛૢΓɺ೾͕ى ͜Δݪཧ΋ཧղ͠ͳ͍··అ๷Λங্͖͛ͨɻ  ਓྨ͸ݹདྷΑΓະ஌Λະ஌ͷ··ѻ͏ೳྗΛ࣋ͬͯ ͍Δɻ  ͦͯͦ͠Ε͸ɺ࠷΋ݪ࢝తͰ࿦ཧతͳߦҝͷੵΈॏ ͶʹΑͬͯੜΈग़͞ΕΔɻ  z؍ଌzͩΑɻ [1]ͷදࢴΑΓసࡌ 125

Slide 126

Slide 126 text

Appendix 

Slide 127

Slide 127 text

研究概要: Scaling Telemetry Workloads in Cloud Applications എܠͱ໨త ՝୊ ߩݙ 1. Ϋϥ΢υΞϓϦέʔγϣϯͷςϨϝτϦʔ 2. ςϨϝτϦʔϫʔΫϩʔυͷ૿େ 3. ςϨϝτϦʔϫʔΫϩʔυεέʔϦϯά 1. ܭଌɿܭଌॲཧΦʔόʔϔουͷ૿େ 2. ετϨʔδɿऔΓࠐΈσʔλྔͷ૿େͱ௕ظอଘ 3. ϚΠχϯάɿނোಛఆͷਫ਼౓ɾ࣮ߦޮ཰ͷ௿Լ 1. ୹໋ͳωοτϫʔΫ௨৴͕૿େ͢ΔͱɺैདྷͷܭଌॲཧͰ͸ɺܭଌݩͷOS Χʔωϧ͔Βͷసૹॲཧίετ͕ߴ͍ɻ ϝτϦΫε਺ͷ૿େʹରͯ͠ɺऔΓࠐΈॲཧޮ཰ͷ޲্ͱ̍೥Ҏ্ͷ௕ ظอଘΛཱ྆͢Δ͜ͱ͕೉͍͠ɻ ϝτϦΫε਺ͷ૿େʹରͯ͠ɺطଘͷಛ௃࡟ݮΛద༻ͨ͠ͱͯ͠΋ɺγες Ϝશମͷো֐Λଊ͑ΒΕͣɺِཅੑɾِӄੑ͕૿Ճ͢Δɻ ܭଌॲཧͷޮ཰Խ [1] Y. Tsubouchi, M. Furukawa, R. Matsumoto, Low Overhead TCP/UDP Socket-based Tracing for Discovering Network Services Dependencies, Journal of Information Processing (JIP), Vol.30, pp.260-268, March 2022. [2] ௶಺༎थ, ࿬ࡔேਓ, ᖛా݈, দ໦խ޾, খྛོߒ, Ѩ෦ത, দຊ ྄հ, HeteroTSDB: ҟछ෼ࢄKVSؒͷࣗಈ֊૚ԽʹΑΔߴੑೳͳ ࣌ܥྻσʔλϕʔε, ৘ใॲཧֶձ࿦จࢽ, Vol.62, No.3, pp.818- 828, 2021೥3݄. [3] Y. Tsubouchi and H. Tsuruta, MetricSifter: Feature Reduction of Multivariate Time Series Data for Ef fi cient Fault Localization in Cloud Applications, IEEE Access, Vol. 12, pp. 37398-37417, March 2024. 2. औΓࠐΈॲཧͱ௕ظอଘͷޮ཰ͷ޲্ 3. ނোಛఆͷલॲཧͰো֐ʹؔ࿈͠ͳ͍มྔͷ࡟ݮ OSΧʔωϧ಺ͰTCP/UDP௨৴ΠϕϯτΛूଋ͢Δ͜ͱʹΑΔసૹॲཧޮ཰ͷ޲্ ҟछKVSΛ֊૚Խ͠ɺΠϯσοΫεࢀরޮ཰ͱ҆ՁͳετϨʔδ΁ͷ֨ೲΛ࣮ݱɻ ো֐ൃੜ࣌ʹ֤࣌ܥྻͷมԽ఺͕࣌ؒूத͢Δ͜ͱΛߟྀͨ͠ಛ௃࡟ݮʹΑΓɺ ނোಛఆਫ਼౓ͱ࣌ؒΛվળɻ ֤૚ͷϫʔΫϩʔυ૿େ࣌ͷ՝୊ղܾ ςϨϝτϦʔϫʔΫϩʔυ૿େͷ՝୊ ޮ཰తʹεέʔϧՄೳͳςϨϝτϦʔγ εςϜͷ࣮ݱʹ޲͚ͯ ΞϓϦέʔγϣϯ͕ෳࡶԽ͓ͯ͠ΓɺςϨϝτϦʔʹΑΔӡ༻ ؅ཧ͕ඞਢͰ͋Δɻ [1] [2] [3] ςϨϝτϦʔγεςϜͰɺܭଌɾετϨʔδɾϚΠχϯάͷ֤૚ ͰϫʔΫϩʔυ͕૿େ͍ͯ͠Δɻ ܭࢉػࢿݯͷফඅ૿େͳͲͷ໰୊ʹରͯ͠ޮ཰Α͘εέʔϧͤ͞Δ ͜ͱΛ໨తͱ͢Δɻͨͩ͠ɺӡ༻ෳࡶੑΛߟྀ͢Δ͜ͱɻ 127

Slide 128

Slide 128 text

৴པੑ޻ֶͷྺ࢙ʢ׬શ൛ʣ ೥୅ ৴པੑͷର৅ γεςϜͷఏڙܗଶ ߴ৴པԽͷߟ͑ํ ৴པੑͷఆٛ 1940~ ϋʔυ΢ΣΞ ػثΛ෺ཧతʹग़ՙ ނোͤͣʹ௕࣋ͪͤ͞ Δ ʢ଱ٱੑʣΞΠςϜ͕༩͑Β Εͨ৚݅ͷԼͰɺ༩͑ΒΕͨ ظؒɺނোͤͣʹɺཁٻͲ͓ Γʹ਱ߦͰ͖Δೳྗ 1960~ ιϑτ΢Σ Ξ ιʔείʔυɾ࣮ߦϑΝΠ ϧɺ·ͨ͸ɺΠϯετʔϧ͞ Εͨίϯϐϡʔλ͝ͱೲ඼ ίϯϙʔωϯτͱͦͷ ૊Έ߹Θͤͷग़ྗͷͦ ΕͧΕΛࣄલʹ֬ೝ ʢอશੑʣʢઃܭ৴པ ੑʣ 1980~ Πϯλʔ ωοτ ୯ҰͷڊେωοτϫʔΫΛڞ ༗ͯ͠ར༻ ߴ଎௨৴ɺ஗Ԇɾ఻ૹ ޡΓɺϊʔυނোΛલ ఏͱ͢Δ௨৴ϓϩτί ϧͷઃܭ ʢ૯߹৴པੑʣΞΠςϜ ͕ɼཁٻ͞Εͨͱ͖ʹɺͦ ͷཁٻͲ͓Γʹɺ਱ߦ͢Δ ͨΊͷೳྗ 2000 ~ Ϋϥ΢υ ࣄۀऀʹΑΓγεςϜΛूத ؅ཧɾৗ࣌Քಇɻར༻ऀ͸Π ϯλʔωοτܦ༝Ͱར༻ ৴པੑͷ௿͍ίϯϙʔ ωϯτ܈Λ౔୆ʹ৴པ ੑͷߴ͍γεςϜઃܭ ௥Ճͷݫີͳఆٛ͸֬ೝͰ ͖ͣɻΑΓར༻ऀ໨ઢͷ৴ པੑΛݸผ۩ମతʹఆٛɻ ※1 JIS Z 8115:2019 ※1 ※1 [Saleh+, 2006] Highlights from the early (and pre-) history of reliability engineering [Kleppmann,2017] Designing Data-intensive Applications: The big ideas behind reliable, scalable, and maintainable systems ※1 [ࢁຊ+ 2021] ֬཰ɾ౷ܭ͔Β࢝ΊΔ ΤϯδχΞͷͨΊͷ৴པੑ޻ֶ- ਎ۙͳނো͔ΒӉ஦։ൃ·Ͱ -,ίϩφࣾ 128

Slide 129

Slide 129 text

l΢Σ ブ Φ ペ Ϩʔγϣϯ͸ٕܳ で ͋ΓɺՊֶ で ͸ͳ͍z ΢ΣϒΦϖϨʔγϣϯ (ݪஶ 2010೥ൃץ) ఆٛɿl*5γεςϜ؅ཧͷઐ໳෼໺ で ɺ΢Σ ブ Ξ プ Ϧέʔγϣϯͷ։ ൃɾӡӦɾอकɾௐ੔ɾमཧΛؚΉz lʮਖ਼͍͠ํ๏ʯ͸ ど ͜ʹ΋ଘࡏ͠ͳ͍ɻͦ͜ʹ͋Δͷ͸ɺ ͱ Γ͋͑ ず ࠓ͸ ͏·͍͘͘ͱ͍͏ࣄ࣮ͱɺ࣍͸΋ͬͱྑ͘͢Δͱ ͍͏֮ޛ だ ͚ だ ɻz lωοτϫʔΫɾϧʔςΟϯ グ ɾεΠονϯ グ ɾϑΝΠΞ΢Υʔ ϧɾෛՙ෼ࢄɾߴՄ༻ੑɾো֐෮چɾ5$1΍6%1ͷαʔ ビ εɾ /0$ͷ؅ཧɾϋʔ ド ΢ΣΞ࢓༷ɾෳ਺ͷ6OJY؀ڥɾෳ਺ͷ΢Σ ブ αʔ バ ٕज़ɾΩϟογϡٕज़ɾ デ ʔλ ベ ʔεٕज़ɾετϨʔ ジ Πϯϑϥɾ҉߸ٕज़ɾΞϧ ゴ Ϧ ズ Ϝɾ܏޲෼ੳɾΩϟ パ γςΟ ܭըཱҊͳ ど Λਂ͘ཧղ͍ͯ͠ͳ͚Ε ば ͳΒͳ͍ɻz ※1 John AllspawɺJesse Robbinsฤɺ֯ ੐య༁,΢ΣϒΦϖϨʔγϣϯʔʔαΠτӡ༻؅ཧͷ࣮ફςΫχοΫ,ΦϥΠϦʔδϟύϯ ※1 

Slide 130

Slide 130 text

SREの定義 ࣮͸43&ͷ໌֬ͳఆٛ͸ίϛϡχςΟʹ޿͘ڞ༗͞Ε͍ͯͳ͍ɻ l43&ͱ͸ɺιϑτ΢ΣΞΤϯδχΞʹӡ༻νʔϜͷઃܭΛґཔͨ͠ͱ ͖ʹͰ͖͕͋Δ΋ͷͰ͢ɻz ڞ༗͞Ε͍ͯΔఆٛΒ͖͠΋ͷ ͔͠͠ɺ)PX͕ॻ͔Ε͓ͯΓɺ8IBUͰ͸ͳ͍ɻ z43&͸ɺ૊৫͕γεςϜɺαʔϏεɺ੡඼ʹ͓͍ͯ࣋ଓՄೳͳܗͰద ੾ͳ৴པੑϨϕϧΛୡ੒Ͱ͖ΔΑ͏ࢧԉ͢Δઐ໳޻ֶ෼໺Ͱ͋Δɻz ʢߨԋऀ༁ʣ ॻ੶z#FDPNJOH43&zͷఆٛ͸ҟ࿦͕ੜ·Εʹ͍͘ྑ͍ఆٛͰ͋Δɻ 130

Slide 131

Slide 131 text

エラーバジェット (FOFSBUFECZ/BOP#BOBOB1SP ։ൃͱ৴པੑͷۉߧΛͱΔ࢓૊Έ ۉߧΛͱΔ 131

Slide 132

Slide 132 text

132 l೥ɺओཁീେֶͷ޻ֶ෦͕૊৫ͨ͠ʮ޻ֶʹ͓͚Δڭҭϓϩ άϥϜʹؔ͢Δݕ౼ҕһձʯ͕ɺ̔̕೥ʹൃදͨ͠޻ֶͷఆٛͰ͸ ʮ਺ֶͱࣗવՊֶΛجૅͱ͠ɺ࣌ʹ͸ਓจࣾձՊֶͷ஌ݟΛ༻͍ ͯɺެڞͷ҆શɺ݈߁ɺ෱ࢱͷͨΊʹ༗༻ͳࣄ෺΍ɺշదͳ؀ڥΛ ߏங͢Δ͜ͱΛ໨తͱ͢Δֶ໰ʯͱ͞Ε͍ͯΔɻz ޻ֶͷఆٛ ※1 ଜ্ ཅҰ࿠, ”޻ֶͷྺ࢙ͱٕज़ͷྙཧ”, ؠ೾ॻళ, 2006೥. ※1

Slide 133

Slide 133 text

133 The Morning Paper on Operability l͜ͷߨԋʹ͍ͭͯߟ͑࢝Ίͨͱ ͖ɺ࿦จͷେ൒͸ʢগͳ͘ͱ΋ࢲ ͕ಡΜͩ࿦จͷେ൒͸ʣӡ༻্ͷ ໰୊ʹ͍ͭͯ͋·Γ৮Ε͍ͯͳ͍ ͱ͍͏ҹ৅Λ࣋ͪ·ͨ͠ɻ͔͠ ͠ɺࣗ෼ͷίϨΫγϣϯΛৼΓ ฦͬͯΈΔͱɺӡ༻ʹؔ࿈͢Δ໰ ୊ʹ৮Ε͍ͯΔ࿦จ͕͍͔ʹଟ͍ ͔ʹڻ͔͞Ε·ͨ͠ɻzʢ༁ʣ https://blog.acolyer.org/2016/09/21/the-morning-paper-on-operability/

Slide 134

Slide 134 text

基礎情報学 134 αΠόωςΟΫεͷ൷൑తܧঝͱͳΔɺ৘ใʹؔ͢Δ ૯߹తͳֶ໰෼໺ ʮ৘ใ͸٬؍తͳ࣮ମͱͯ͠֎ʹ͋ΔͷͰ͸ͳ͘ɺ γεςϜʢੜ໋ʣ͕ࣗΒͷߏ଄ҡ࣋ͷͨΊʹ૑ग़͢ Δ΋ͷͰ͋Δʯ ޻ֶతͳ৴߸ॲཧͱͯ͠ͷ৘ใཧ࿦ʢγϟϊϯཧ࿦ͳ Ͳʣͱ͸ҟͳΓɺʮੜ໋ʯͱʮҙຯʯΛத৺ʹਾ͑ͯ ৘ใΛ࠶ఆ͍ٛͯ͠Δɻ

Slide 135

Slide 135 text

Computing as pop culture lίϯϐϡʔςΟϯά͸ϙοϓΧϧνϟʔͩʜɻϙοϓΧϧνϟʔ͸ ྺ࢙ΛܰΜ͍ͯ͡ΔɻϙοϓΧϧνϟʔ͸ɺΞΠσϯςΟςΟͱࣗ ෼͕ࢀՃ͍ͯ͠ΔΑ͏ʹײ͡Δ͜ͱ͕͢΂ͯͩɻͦΕ͸ڠྗ΍աڈ ΍ະདྷͱ͸Կͷؔ܎΋ͳ͍ɻ͓ۚͷͨΊʹίʔυΛॻ͘ਓͷଟ͘΋ ಉͩ͡ͱࢥ͏ɻ൴Β͸ʢࣗ෼ͨͪͷจԽ͕ʣͲ͔͜Βདྷͨͷ͔ɺ ·ͬͨ͘Θ͔͍ͬͯͳ͍ͷͰ͢zʢ༁ʣ ɹ "MBO,FZɺ%S%PCCT+PVSOBMͷΠϯλϏϡʔʹͯɺ೥ 

Slide 136

Slide 136 text

基礎情報学の情報とSRE ૚ ఆٛ 43&ʹ͓͚Δ ରԠ ߟ࡯ ੜ໋৘ใ ओ؍తͰɺͦͷ౎౓ੜ੒ ͞ΕΔʮҙຯʯɻ Ϣʔβʔମݧ ʢ69ʣ Ϣʔβʔ͕஗͍ͱײ͡ΔͳͲͷෆ շײʹରͯ͠ɺओ؍తͳ৴པΛक Δɻ ࣾձ৘ใ ίϛϡχέʔγϣϯΛ௨ ͯ͡ڞ༗ɾ఻ୡ͞ΕΔ ʮҙຯͷ͋Δʯ৘ใɻ ৴པੑ໨ඪ 4-*4-0 ओ؍తͳ৴པΛɺ૊৫Ͱ߹ҙՄೳ ͳʮ໿ଋʯ΍ʮϧʔϧʯʹม׵͢ Δɻ ػց৘ใ ҙຯΛࣺ৅ͨ͠ɺ٬؍ తͳ৴߸ɾσʔλɻ ςϨϝτϦ σʔλ ؂ࢹπʔϧ͕ੜ੒͢Δ๲େͳσʔ λɻ͜Εࣗମʹʮҙຯʯ͸ͳ͍ɻ 136

Slide 137

Slide 137 text

基礎情報学が提唱するシステムの特徴 137 Authoring Process Reader Community β Outputting Cognition Authoring Process ent (Upper HACS) Target α HACS D (reader community) Communication over α β α α’ α’’ repartion (t1) Expression Distribution (t2) ent (Information System) epartion (t1) ICT Frontend (Interface) Frontend (Interface) Backend (Database, Network) Distribution (t2) Prepation (t3) Information System ICT Developers User Community Information System Developer users α β User Community User User User ICT Information System Developer )"$4ʢ֊૚తࣗ཯ίϛϡχέʔγϣϯγεςϜʣ ར༻ऀίϛϡχςΟ ։ൃऀ ੜ໋ɾਓؒɾࣾձ͕ͲͷΑ͏ʹ৘ใ ΛੜΈग़͠ɺίϛϡχέʔγϣϯ͢ Δ͔Λઆ໌͢Δ౷߹Ϟσϧ ੈք͸ɺࣗ෼ࣗ਎Λ࡞Γଓ͚Δ ʰࣗ཯తͳγεςϜʱ͕֊૚ঢ়ʹ ॏͳͬͯͰ͖͍ͯΔ /BOP#BOBOB1SPʹΑΓੜ੒