Slide 1

Slide 1 text

(C) mixi, Inc. 株式会社ミクシィ 小島 慎太郎 ⾛りながら作る ネットワークテンプレートシステム

Slide 2

Slide 2 text

ݱࡏɺωοτϫʔΫӡ༻ͷࣗಈԽʹऔΓ૊ΜͰ͓Γɺ ςϯϓϨʔτ͔Β ׬શͳωοτϫʔΫઃఆΛੜ੒͍ͯ͠·͢ɻ ○ ͳͥ ͦͷΞϓϩʔν͔ ○ ςϯϓϨʔτγεςϜͷ։ൃํ๏ ○ ޮՌɾ՝୊ͷڞ༗ ˠٞ࿦ 本⽇ 話すこと 完成してから商用投入だと めちゃくちゃ遅い ૸Γͳ͕Β ະ׬ͷঢ়ଶͰσϓϩΠɾ঎༻Ͱಈ͔͠ͳ͕Β։ൃ͢ΔελΠϧ

Slide 3

Slide 3 text

ͨͱ͑͹ɺ͜ͷهड़͸ 👉 • #(1ϐΞ • JOUFSGBDF ෺ཧɾMPPQCBDL ○ QBDLFUGJMUFS ○ TGMPX • %%P4ରࡦ༻ϧʔςΟϯά͍Ζ͍Ζ ͷઃఆΛੜ੒͢ΔɻʮύϥϝʔλʔΛೖྗ͢Ε͹ؔ࿈ͷઃఆ͕ੜ੒͞ΕΔʯ ͘͠Έ͕ϧʔλʔɾεΠονͷશػೳ෼͋ͬͯɺύϥϝʔλʔΛ૊Έ߹ΘͤΔ ͜ͱͰ׬શͳ SVOOJOHDPOGJHΛੜ੒͢Δɻ テンプレート︖ bgp: peers: - type: ddos_transit_xxx neighbor_as: xxx neighbor_address: x.x.x.x

Slide 4

Slide 4 text

খౡ ৻ଠ࿠ • codeout ( GitHub / Twitter ) • https://about.me/codeout • גࣜձࣾϛΫγΟ ։ൃຊ෦ Πϯϑϥࣨ • ΍͍ͬͯΔ͜ͱωοτϫʔΫઃܭɾӡ༻ • ۀ຿ҕୗϝϯόʔ ○ ຊ੶ גࣜձࣾίʔμϯε ⾃⼰紹介 ֤ࣾͷ঎඼·ͨ͸αʔϏεͳͲͷ໊শ͸ɺ֤ࣾͷ঎ඪ·ͨ͸ొ࿥঎ඪͰ͢ɻ

Slide 5

Slide 5 text

背景: ミクシィのネットワーク運⽤

Slide 6

Slide 6 text

DC #1 • .VMUJ5FOBOU ○ .1-4WQOJQW1& • .VMUJ$MPVE • .VMUJ7FOEPS • #(1$-04 ○ +"/0( 041'Ͱ5P3·Ͱ-ʹͯ͠Έͨ ○ +"/0( ଓ︕(PPECZF*1W0O-5P3ˠ#(1Խ 🎉 • /"5 • -# • ϕϯμʔ੡ --ػثத৺ • -ػث ○ +"/0( ϗϫΠτϘοΫε఻ૹͷಈ޲ͱ঎༻ར༻ʹ͍ͭͯ ミクシィのネットワーク DC #N Leafs Cloud #1 Cloud #2 Cloud #3 Peers Transits Spines Leafs NAT LB Spines

Slide 7

Slide 7 text

+"/0( ミクシィのネットワーク運⽤

Slide 8

Slide 8 text

+"/0( ミクシィのネットワーク運⽤ DONE !!! 🎉🎉🎉

Slide 9

Slide 9 text

+"/0( ミクシィのネットワーク運⽤ 次は自動化 !!!

Slide 10

Slide 10 text

•ϏδωεΛࢭΊͳ͍ɻਐԽΛ଎͘ ○ Ϗδωε͸ͲΜͲΜ࡞ΒΕΔɻωοτϫʔΫΛϘτϧωοΫʹ͠ͳ͍ ○ ʮγεςϜ͕ະରԠͳͷͰແཧͰ͢ʯ͸μϝ 🙅 •ωοτϫʔΫΛࢭΊͳ͍ ○ ࣗಈԽ΋҆શʹ΍Δ ○ +"/0( ಥܸʂྡͷ඼࣭ઃܭ ʙධՁɾ࠾༻ج४Ͳ͏ͯ͠Δʁʙ 私たちの思い

Slide 11

Slide 11 text

खಈΦϖϨʔγϣϯத৺ ○ (JU0QT $IBU0QT ○ πʔϧͷख͸आΓΔ͕ɺࣗಈઃఆʹ ࢸ͍ͬͯͳ͍ ミクシィのネットワーク運⽤ Network Bots Tools Ops team GitHub PR Operation 1VMM3FRVFTU࡞੒ɾϨϏϡʔ͕ͭΒ͍ɻ ϧʔςΟϯάϙϦγʔΛཧղ͍ͯͯ͠΋ɺͦΕͧΕ ਺͔͔࣌ؒͬͨΓ͍ͯͨ͠ 課 題 ֤ࣾͷ঎඼·ͨ͸αʔϏεͳͲͷ໊শ͸ɺ֤ࣾͷ঎ඪ·ͨ͸ొ࿥঎ඪͰ͢ɻ

Slide 12

Slide 12 text

දهΏΕ ○ 'PP#BSUSBOTJUPS'#USBOTJU ○ JOPVUPSJNQPSUFYQPSU ○ EFOZQFSNJUPSSFKFDUBDDFQU ○ PS@ ○ େจࣈɾখจࣈ ○ ແݶʹ͋ͬͨ 設定が標準化されてなかった 😭 peer group 面倒くさい ϧʔςΟϯάϙϦγʔΏΕ ○ QSFGJYMJTU ○ BTQBUIMJTU ○ NBYQSFGJYMJNJU ○ ໊લ͸ಉ͕ͩ͡ɺεΠον͝ͱʹ த਎͕ҧ͏ ○ ਺ͦ͜গͳ͍͕ɺ मਖ਼ʹؾΛ࢖͏΍ͭ

Slide 13

Slide 13 text

⾃動化検討フェーズ

Slide 14

Slide 14 text

• ϏδωεΛࢭΊͳ͍ ○ ʮࣗಈԽͷલʹ ඪ४Խ͠·͠ΐ͏ʯˠਖ਼͍͠ɻͰ΋஗͍ɻඪ४Խ͠ͳ͕ΒࣗಈԽ͍ͨ͠ ○ ඪ४Խ͞Ε͍ͯͳ͍ઃఆ΋ڐ༰͍ͨ͠ ○ ࣗಈͷ࢓૊Έ͕ఆண͢Δ·ͰɺखಈΦϖϨʔγϣϯΛڐ༰͍ͨ͠ • ಛఆϋʔυ΢ΣΞɾιϑτ΢ΣΞʹϩοΫΠϯ͞Εͳ͍ ○ ઃඋ͸ϚϧνϕϯμʔɻΦʔέετϨʔλʔ΋ม͍͖͍͑ͯͨ • $MPTFEMPPQBVUPNBUJPOΛ໨ࢦ͍ͨ͠ ○ ωοτϫʔΫΠϕϯτൃੜ ˠࣗಈରॲ ˠωοτϫʔΫΠϕϯτൃੜɺͷϧʔϓ ○ ྫ௨৴඼࣭͕ᮢ஋ΛԼճͬͨ ᷖճ࿏͕͋Ε͹ɺᷖճ͢Δ 構想

Slide 15

Slide 15 text

$MPTFEMPPQBVUPNBUJPOΛ΍Ζ͏ͱͨ͠Βɺ ʮએݴతωοτϫʔΩϯάʯʹߦ͖ண͍ͨ ○ ʮωοτϫʔΫશମͷ͋Δ΂͖ܗʯΛએݴతʹهड़͠ɺ ͦ͜ʹऩଋͤ͞ΔωοτϫʔΫ੍ޚͷܗ ○ ,VCFSOFUFT͕͓खຊ ○ ͥΜͥΜಓ൒͹͕ͩɺҰา໨Λ౿Έग़ͤͨͱࢥ͏ ○ ࠓ೔͸͜͜Λ۷ΓԼ͛Δ͕࣌ؒͳ͍ͷͰɺ֓ཁ͚ͩ Closed Loop Automation?

Slide 16

Slide 16 text

宣⾔的ネットワーキングと従来⼿法の対⽐ ݱࡏͷ ωοτϫʔΫͷঢ়ଶ ͋Δ΂͖ ωοτϫʔΫͷঢ়ଶ ݱࡏͷ ωοτϫʔΫͷঢ়ଶ ͋Δ΂͖ ωοτϫʔΫͷঢ়ଶ ো֐ʹΑΔॖୀ ෮چϓϩηεͷ࣮ߦ 2. 手続き的アプローチで あるべき状態にもどす 2. 1 と比較 ো֐ʹΑΔॖୀ ෮چϓϩηεͷ࣮ߦ 3. 手続き的アプローチで あるべき状態にもどす 1. これを記述して ैདྷͷωοτϫʔΫӡ༻ એݴతωοτϫʔΩϯά 1. これを検知して

Slide 17

Slide 17 text

宣⾔的ネットワーキングと従来⼿法の対⽐ ݱࡏͷ ωοτϫʔΫͷঢ়ଶ ͋Δ΂͖ ωοτϫʔΫͷঢ়ଶ ݱࡏͷ ωοτϫʔΫͷঢ়ଶ ͋Δ΂͖ ωοτϫʔΫͷঢ়ଶ ো֐ʹΑΔॖୀ ෮چϓϩηεͷ࣮ߦ 2. 手続き的アプローチで あるべき状態にもどす 2. 1 と比較 ো֐ʹΑΔॖୀ ෮چϓϩηεͷ࣮ߦ 3. 手続き的アプローチで あるべき状態にもどす 1. これを記述して ैདྷͷωοτϫʔΫӡ༻ એݴతωοτϫʔΩϯά 1. これを検知して 私たちの場合、やりたいのは 「業務ごとの手続きや 障害ごとの手続きを 自動化する」 ではなかった。 パターンの網羅は時間が かかり、手動オペを行うので ゴミが生まれる。ゴミは掃除 するべき。

Slide 18

Slide 18 text

宣⾔的ネットワーキングと従来⼿法の対⽐ ݱࡏͷ ωοτϫʔΫͷঢ়ଶ ͋Δ΂͖ ωοτϫʔΫͷঢ়ଶ ݱࡏͷ ωοτϫʔΫͷঢ়ଶ ͋Δ΂͖ ωοτϫʔΫͷঢ়ଶ ো֐ʹΑΔॖୀ ෮چϓϩηεͷ࣮ߦ 2. 手続き的アプローチで あるべき状態にもどす 2. 1 と比較 ো֐ʹΑΔॖୀ ෮چϓϩηεͷ࣮ߦ 3. 手続き的アプローチで あるべき状態にもどす 1. これを記述して ैདྷͷωοτϫʔΫӡ༻ એݴతωοτϫʔΩϯά 1. これを検知して むしろ 「あるべき形をどう 記述するか」 「どう比較するか」 「収束させるための 手続きを どう 汎用化するか」 という問題だった

Slide 19

Slide 19 text

ʮ͏·͘એݴతʹ΍͍ͬͯΔʯͱݴΘΕΔ ,VCFSOFUFTͱൺֱͯ͠ΈΔ • ίϯςφ͸ཱࣗ෼ࢄతʹಈ͔ͳ͍ͷͰɺίϯςφ؅ཧɾௐఀ໾Ͱ͋Δ ίϯτϩʔϥʔ͕ඞཁ • ωοτϫʔΫ͕ϓϩτίϧϨϕϧͰཱࣗ෼ࢄతʹಈ͘ͷͰɺ ωοτϫʔΫ૷ஔʹʮ͋Δ΂͖ܗʯΛ఻͑Ε͹ɺͦͷޙͷ؅ཧɾௐఀ͸ ϓϩτίϧ͕୲ͬͯ͘ΕΔ • ͨͩ͠ɺϓϩτίϧ͕૝ఆ͠ͳ͍Ϩϕϧͷ੍ޚ͸ޮ͔ͳ͍ コンテナオーケストレーション と 宣⾔的ネットワーキング

Slide 20

Slide 20 text

؆୯ͳϨϕϧͰΑ͚Ε͹ɺ ͋Δ΂͖ܗͷએݴ ωοτϫʔΫ૷ஔͷઃఆ ͳͷͰ͸ʁ ○ ωοτϫʔΫ૷ஔΛઃఆ͢Δͱ ͦͷܗʹऩଋ͠Α͏ͱ͢Δɻͨͩ͠એݴͱͯ͠࢖͏ͨΊʹ ৚͕݅͋Δ ○ DBOEJEBUFDPOpHΛɺBUPNJD ʹ DPNNJUͰ͖Δ͜ͱ ○ ଘࡏ͠ͳ͍ઃఆ͸ OPEFMFUF͠ͳͯ͘΋ ফ͑Δ͜ͱ • ຊ౰ʹٻΊ͍ͯΔ΋ͷͰ͸ͳ͍ɻϓϩτίϧ͕૝ఆ͢Δʮ͋Δ΂͖ܗʯ͸ ຊདྷͷϏδωεཁ݅ʹ߹Θͳ͍ ○ ❌ ,FFQBMJWF1%6͕ /ί࿈ଓͰམͪͳ͍ ○ ⭕ 1BDLFUMPTT/ ○ ⭕ ΩϟύγςΟͷ /·ͰτϥϑΟοΫΛ৐ͤΔ 宣⾔の抽象度・粒度の問題

Slide 21

Slide 21 text

○ ؆୯ͳϨϕϧͰΑ͚Ε͹ɺ ͋Δ΂͖ܗͷએݴ ωοτϫʔΫ૷ஔͷઃఆ ͳͷͰ͸ʁ ○ ωοτϫʔΫ૷ஔΛઃఆ͢Δͱ ͦͷܗʹऩଋ͠Α͏ͱ͢Δɻͨͩ͠એݴͱͯ͠࢖͏ͨΊʹ৚ ͕݅͋Δ ○ DBOEJEBUFDPOpHΛɺBUPNJD ʹ DPNNJUͰ͖Δ͜ͱ ○ ଘࡏ͠ͳ͍ઃఆ͸ OPEFMFUF͠ͳͯ͘΋ ফ͑Δ͜ͱ • ຊ౰ʹٻΊ͍ͯΔ΋ͷͰ͸ͳ͍ɻϓϩτίϧ͕૝ఆ͢Δʮ͋Δ΂͖ܗʯ͸ ຊདྷͷϏδωεཁ݅ʹ߹Θͳ͍ ○ ❌ ,FFQBMJWF1%6͕ /ί࿈ଓͰམͪͳ͍ ○ ⭕ 1BDLFUMPTT/ ○ ⭕ ΩϟύγςΟͷ /·ͰτϥϑΟοΫΛ৐ͤΔ 宣⾔の抽象度・粒度の問題 •あるべき形をどう記述するか •どう比較するか •収束させるための手続きを どう汎用化するか という問題は、あるべき形の宣言粒度を プロトコルに合わせることで、「ネットワーク 機器の設定をどうモデル化するか」まで簡単に できる。 ( 私たちは初手として、それでOK )

Slide 22

Slide 22 text

• ۀ຿ɾো֐ύλʔϯͷ໢ཏʹ͕͔͔࣌ؒΔͱ൑அ͔ͨ͠Β ○ "OTJCMFͰ͍͏ QMBZCPPLΛ໢ཏతʹॻ͚ͳ͍ • खಈΦϖϨʔγϣϯΛڐ༰͍͔ͨ͠Β ○ खಈΦϖϨʔγϣϯ͕ϛε͍ͬͯͨΒݕ஌͍ͨ͠ • $MPTFEMPPQBVUPNBUJPOΛ໨ࢦ͍ͯ͠Δ͔Β ○ ʮ͋Δ΂͖ܗʯͷએݴ͕ඞཁʹͳΔ ここまでのまとめ: テンプレート⽅式を選択した理由

Slide 23

Slide 23 text

設計フェーズ: どういうものを作るか

Slide 24

Slide 24 text

全体像 Network Database export yaml Template Orchestrator push pull roll out モデル化された ネットワーク記述 .yaml テンプレートは、 Orchestrator から呼べるように GitHub ֤ࣾͷ঎඼·ͨ͸αʔϏεͳͲͷ໊শ͸ɺ֤ࣾͷ঎ඪ·ͨ͸ొ࿥঎ඪͰ͢ɻ

Slide 25

Slide 25 text

.yaml を DB と テンプレートの interface にする Network Database export Template Orchestrator push pull roll out GitHub yaml ࣗ෼͕ͨͪεΩʔϚΛܾΊɺఆٛͨ͠Ϟσϧɻ εΩʔϚʹ४ڌ͍ͯ͠ΔݶΓɺ %#ςϯϓϨʔτ͸޷͖ʹ։ൃͯ͠0, ֤ࣾͷ঎඼·ͨ͸αʔϏεͳͲͷ໊শ͸ɺ֤ࣾͷ঎ඪ·ͨ͸ొ࿥঎ඪͰ͢ɻ

Slide 26

Slide 26 text

マージは git にまかせる Network Database export yaml Template Orchestrator roll out push pull มߋ͍ͨ͠ͱࢥͬͯ13࡞੒ͨ͋͠ͱɺ Ϟσϧ͕มΘΔ͔΋͠Εͳ͍ɻ σϓϩΠલʹ SFCBTF͢Δɻ GitHub ֤ࣾͷ঎඼·ͨ͸αʔϏεͳͲͷ໊শ͸ɺ֤ࣾͷ঎ඪ·ͨ͸ొ࿥঎ඪͰ͢ɻ

Slide 27

Slide 27 text

現在の開発状況 Network export yaml Template push pull roll out WIP。いまは オペレーターが .yaml を編集 ワークフロー整理中。 既存の GitOps + 手動オペレーション で設定している GitHub ֤ࣾͷ঎඼·ͨ͸αʔϏεͳͲͷ໊শ͸ɺ֤ࣾͷ঎ඪ·ͨ͸ొ࿥঎ඪͰ͢ɻ

Slide 28

Slide 28 text

テンプレートが出⼒する設定

Slide 29

Slide 29 text

Ϗδωεཁ͕݅໨·͙Δ͘͠มԽ͢Δ ○ ඪ४Խͷ׬ྃΛ໨ࢦ͍ͯͨ͠ΒऴΘΒͳ͍ ○ ʮϙϦγʔͱͯ͠ඪ४Խͯ͠ɺ πʔϧԽ͠ͳ͍ͱωοτϫʔΫʹೖΕΒΕ·ͤΜʯ͸μϝ 🙅 標準化しながら⾃動化したい・標準外も許容したい

Slide 30

Slide 30 text

1BUDI • Ϟσϧʹ͸ ࣗ༝هड़ཝ ඪ४Խ͕·ͩ ͕͋ΓɺςϯϓϨʔτग़ྗ ඪ४ԽࡁΈ ͱ͚ͬͭͯ͘ग़ྗ • ঃʑʹඪ४ԽΛਐΊΒΕɺʮඪ४֎ͷઃఆʯΛ؅ཧͰ͖Δ • 1BUDIඪ४ Λ໨ࢦ͢ɻఆྔධՁͰ͖Δ 標準化しながら⾃動化したい・標準外も許容したい ඪ४ԽࡁΈ ඪ४Խ͕·ͩ ඪ४ԽࡁΈ ඪ४Խ͕·ͩ ඪ४ԽࡁΈ ポイント!

Slide 31

Slide 31 text

%JGG • ઃఆॱংɾ࡟আ ͳͲΛΑ͠ͳʹߟྀͨ͠EJGGɻ ςϯϓϨʔτग़ྗͱ SVOOJOHDPOGJHΛຖ೔ൺֱ • ߏจղੳ • ʮ͋Δ΂͖ܗʯ͕ઃఆ͞Ε͍ͯΔ͔ɺݫີʹνΣοΫ ⼿動オペレーションを許容したい set interfaces xe-0/0/0 unit 10 family inet filter input foo_filter set interfaces xe-0/0/0 unit 10 family inet address 10.0.10.1/30 set interfaces xe-0/0/0 unit 20 family inet filter input foo_filter set interfaces xe-0/0/0 unit 20 family inet address 10.0.20.1/30 delete interfaces xe-0/0/0 unit 10 set interfaces xe-0/0/0 unit 11 family inet filter input bar_filter set interfaces xe-0/0/0 unit 11 family inet address 10.0.11.1/30 set interfaces xe-0/0/0 unit 11 family inet filter input bar_filter set interfaces xe-0/0/0 unit 11 family inet address 10.0.11.1/30 set interfaces xe-0/0/0 unit 20 family inet filter input foo_filter set interfaces xe-0/0/0 unit 20 family inet address 10.0.20.1/30 ςϯϓϨʔτग़ྗ SVOOJOHDPOpH

Slide 32

Slide 32 text

Ϗδωε൑அʹΑΓɺ ωοτϫʔΫʹೖΕΔ EJGGʹΑͬͯݕ஌͞Εɺ 1BUDI ͢Δ ඪ४Խ͢Δ΂͖͔ٞ࿦͠ɺ ςϯϓϨʔτԽ͢Δ ⼿動で⼊れた設定のライフサイクル ωοτϫʔΫʹ ઃఆ͞Ε͍ͯΔ ⁞   ⁠ ඪ४Խ͞Ε͍ͯΔ ςϯϓϨʔτԽ͞Ε͍ͯΔ 1BUDI͞Ε͍ͯΔ

Slide 33

Slide 33 text

効果: 得られたもの・⽀払ったもの

Slide 34

Slide 34 text

ಥવͷίΞεΠον௥Ճʜʂʂ ઃఆ୆਺ͱͯ͠͸ ͘Β͍ まれにあるやつ

Slide 35

Slide 35 text

• ϥοΩϯάɾϞδϡʔϧ౥ࡌɾWFSTJPO VQ • ഑ઢ • ઃఆ 1⽇で完了 🎉 ωοτϫʔΫ͸ਖ਼͘͠ઃఆ͞Ε͍ͯΔɺͱ͍͏҆৺ײ

Slide 36

Slide 36 text

ޮ཰ ○ 13࡞੒ ɾϨϏϡʔ͕Ұॠ ○ ϞσϧZBNM ͚ͩͰ0, ○ ϕϯμʔͷҧ͍Λؾʹ͠ͳͯ͘ྑ͘ͳͬͨ 🎉 ϒϨͳ͍ωοτϫʔΫϙϦγʔ ○ ωοτϫʔΫ͕ਖ਼͘͠ઃఆ͞Ε͍ͯΔɺͱ͍͏҆৺ײ ○ ϛεɾΰϛ͕ࠞೖ͠ͳ͍ ○ ωοτϫʔΫશମͰ੔߹ੑ͕ͱΕΔ 得られたもの

Slide 37

Slide 37 text

·ͩ࢖͍͜ͳͤͯͳ͍͕ʜ ͋Δ΂͖ঢ়ଶͷهड़ ○ ͍ΖΜͳγεςϜ͔ΒࢀরͰ͖Δ ႈ౳ੑ ○ ςϯϓϨʔτग़ྗͨ݁͠ՌΛ DPNNJU͢Ε͹ɺඞͣʮ͋Δ΂͖ঢ়ଶʯʹͳΔ ○ ࠩ෼͕ͳ͚Ε͹ɺ෭࡞༻΋ͳ͍ ○ $MPTFEMPPQBVUPNBUJPOએݴతωοτϫʔΩϯά ΁ͷ෍ੴ 得られたもの

Slide 38

Slide 38 text

։ൃίετ • ։ൃελʔτ dӡ༻ελʔτ • ࠓ೔·Ͱ ͬ͘͟ΓI͘Β͍ • ʮ։ൃ͕஗Ε͍ͯΔͨΊ 999Ͱ͖·ͤΜʯ͸ͳ͔ͬͨ͸ͣ ⽀払ったもの

Slide 39

Slide 39 text

まとめ

Slide 40

Slide 40 text

׬શͳωοτϫʔΫઃఆΛग़ྗ͢Δɺ ςϯϓϨʔτγεςϜΛ։ൃɾӡ༻͍ͯ͠Δ • 01&9࡟ݮ • खಈΦϖϨʔγϣϯɾඪ४֎ઃఆΛڐ༰ͭͭ͠΋ɺ ωοτϫʔΫϙϦγʔڧ੍ྗΛಘΒΕͨ • ະ׬Ͱ΋ૣ͘σϓϩΠͯ͠ɺϝϯόʔʹݟ͑Δͱ͜ΖͰվળ͢Δͷ͕ޮ͍ͨ ○ ωοτϫʔΫӡ༻࣌ɺγεςϜͱͷטΈ߹Θͤʹ͍ͭͯৗʹߟ͑ͳ͕Β ΈΜͳͰվળͰ͖Δ 💪 まとめ

Slide 41

Slide 41 text

課題の共有・議論

Slide 42

Slide 42 text

課題1: ⾃動リソースアサイン p2p 10.0.0.0/30 10.0.0.4/30 10.0.0.8/30 U U /30 1コ 必要 /30 1コ 必要 13࡞੒ 13࡞੒ ༧໿ ༧໿ ར༻த 設定した /30 もう1コ 必要 ༧໿ やっぱやめるわ औফ

Slide 43

Slide 43 text

• ΞαΠϯ͢ΔλΠϛϯά͸ɺHJU DPNNJUΑΓલ ○ ͱ͍͏͔೚ҙλΠϛϯά • 13NFSHFɾ DMPTFͷλΠϛϯάͰɺΞαΠϯͨ͠΋ͷΛ֬ఆɾऔফ ○ 13ʹ *1ΞυϨε͕ฒΜͰ͍ͨͱͯ͠ɺ ͲΕ͕ݻఆͰͲΕ͕ࣗಈΞαΠϯ͔൑அͰ͖ΔͩΖ͏͔ʁ • ਓྗͰ͸Մೳͩͬͨʮ࿈൪Ͱཉ͍͠ͷͰ͜͜ৡͬͯ΋Β͑·ͤΜ͔ʯͱ͔͸ ఘΊͳ͍ͱ͍͚ͳ͍ʁ • *1".͸ 13ͱ࿈ಈͰ͖Δͷ͔ʁ 課題1: ⾃動リソースアサイン

Slide 44

Slide 44 text

• ͋Δ΂͖ܗ͸෼͔͍ͬͯΔɻࠩ෼΋औΕΔ • ഁյతͳมߋ͸खಈͰ΍Γ͍ͨɻ࣮੷͋Δมߋ͸ࣗಈ౤ೖ͍ͨ͠ • มߋΛͲ͏΍ͬͯ෼ׂ͢Δʁ ○ खಈͰ HJUDPNNJU෼͚ΔΞϓϩʔνΛߟ͑த ○ ۀ຿͝ͱͷࣗಈԽͰ͸ؾʹ͠ͳͯ͘Α͔ͬͨ఺ • ෼ׂͨͦ͠ΕͧΕ͕ഁյత͔Ͳ͏͔ɺ൑ఆՄೳ͔ʁ 課題2: 設定デプロイ ݱࡏͷ ωοτϫʔΫ ঢ়ଶ ͋Δ΂͖ ωοτϫʔΫ ঢ়ଶ DFC CF

Slide 45

Slide 45 text

• ຊདྷఆ͍ٛͨ͠ʮ͋Δ΂͖ܗʯ ○ ͨͱ͑͹2P4 👉 ○ ܭଌ͍ͨ͠ϝτϦοΫ͸ɺ ෳ਺ཁૉͷӨڹΛड͚Δ 🤔 • ݱঢ়ʮωοτϫʔΫઃఆΛϞσϧԽͨ͠ʯʹ ͗͢ͳ͍ ○ ந৅౓Λ্͛ΒΕΔͷ͔ʁ ○ *OUFOUCBTFEͰॻ͚Δʁ ○ ྫΫϥ΢υͱे෼ͳଳҬͰ઀ଓ͍ͨ͠ 課題3: モデルの抽象度 bgp: peers: - type: ddos_transit_xxx neighbor_as: xxx neighbor_address: x.x.x.x limits: packet_loss: - target: 10.0.0.1 threshold: 10**-5 latency: - target: 10.0.0.1 threshold: 10 # ms action: depref bandwidth: 10 # Gbps action: notify

Slide 46

Slide 46 text

(C) mixi, Inc.