Upgrade to Pro — share decks privately, control downloads, hide ads and more …

SORACOM リモートアクセス・アーキテクチャパターン/architecture-for-remote-access-with-soracom

SORACOM リモートアクセス・アーキテクチャパターン/architecture-for-remote-access-with-soracom

IoT プラットフォーム SORACOM が提供する3G/LTEなどのモバイル通信(セルラー通信)を利用し、「どのような時に、どのような構成で」をアーキテクチャパターンとして紹介。
2019/07/31 開催の「SORACOM Drinkup #2」でソラコムのソリューションアーキテクト 松本(ysk) 発表資料

7cd783377515bdf8207062840b7b2f4e?s=128

SORACOM
PRO

July 31, 2019
Tweet

More Decks by SORACOM

Other Decks in Technology

Transcript

  1. 403"$0.ϦϞʔτΞΫηε ΞʔΩςΫνϟύλʔϯ͝঺հ 403"$0.%SJOLVQ  גࣜձࣾιϥίϜ ιϦϡʔγϣϯΞʔΩςΫτ দຊ༔ี NBUTVNPUP!TPSBDPNKQ

  2. XIPBNJ { "name":"Yusuke Matsumoto", "role":"Solutions Architect", "tw":"@2matzzz", "github":"github.com/2matzzz", "interests":[ "IoT",

    "High Performance Web", "Site Reliability Engineering" ] }
  3. ˜403"$0. */$ ͲͷϦϞʔτΞΫηεख๏ΛબͿ΂͖͔ʁ ϦϞʔτΞΫηεͷΞʔΩςΫνϟύλʔϯΛ͝঺հ

  4. Τοδϓϩηογϯά SORACOM Mosaic 403"$0.ϓϥοτϑΥʔϜͷαʔϏεҰཡ 403"$0.(MPCBM1MBUGPSN ϥΠϒϥϦ  4%,T CLI(Go), Ruby,

    Swift 8FCΠϯλʔϑΣʔε User Console σʔλసૹࢧԉ SORACOM Beam Ϋϥ΢υΞμϓλ SORACOM Funnel σʔλऩूɾ஝ੵ SORACOM Harvest Data / Files ϓϥΠϕʔτ઀ଓ SORACOM Canal *P5޲͚σʔλ௨৴ SORACOM Air for Cellular (2G, 3G, LTE) / LPWA (LoRaWAN, Sigfox, , LTE-M) / Ξοϓϩʔυઐ༻SIM ઐ༻ઢ઀ଓ SORACOM Direct Ծ૝ઐ༻ઢ SORACOM Door "1* Web API Sandbox ίωΫςΟϏςΟ ωοτϫʔΫ ΠϯλϑΣʔε 4*.ೝূɾূ໌ SORACOM Endorse σόΠε؅ཧ SORACOM Inventory ಁաܕτϥϑΟοΫॲཧ SORACOM Junction μογϡϘʔυ࡞੒ڞ༗ SORACOM Lagoon ηΩϡΞϓϩϏδϣχϯά SORACOM Krypton ΞΫηεݖݶ؅ཧ SORACOM Access Management ΞϓϦέʔγϣϯ σόΠε-"/ SORACOM Gate ։ൃऀαϙʔτ Developer Support 64# υϯάϧ ηϧϥʔϞδϡʔϧ ϚΠίϯϞδϡʔϧ Ϙλϯ Χϝϥ σόΠε Ϋϥ΢υϑΝϯΫγϣϯ SORACOM Funk ΦϯσϚϯυϦϞʔτΞΫηε SORACOM Napter
  5. 403"$0.(BUFr σόΠε-"/઀ଓ ͓٬༷γεςϜ σόΠεͱΫϥ΢υΛ̍ͭͷେ͖ͳϓϥΠϕʔτ-"/ʹ Ϋϥ΢υ͔ΒͷϦϞʔτΞΫηεΛՄೳʹ͢ΔαʔϏε 403"$0. $BOBM 403"$0. %JSFDU 403"$0.

    %PPS 403"$0. (BUF ઀ଓ༻αʔό 403"$0. (BUF YYY YYZ
  6. ࢦఆͷ4*.΁ͷΞΫηε༻ͷ(MPCBM*1ΞυϨεϙʔτΛΞαΠϯ 44)3%1)5514 ͳͲͰ઀ଓ ઃఆʹै͍ɺࢦఆϙʔτ ʹ઀ଓ 403"$0./BQUFS r ΦϯσϚϯυϦϞʔτΞΫηε ඞཁͳ࣌ʹ୹͚࣌ؒͩσόΠε΁ϦϞʔτΞΫηε͠ ૢ࡞ɾӾཡΛՄೳʹ͢ΔαʔϏε

  7. ˜403"$0. */$ ΞʔΩςΫνϟύλʔϯ ϦϞʔτΞΫηεͷϫʔΫϩʔυʹԠͯ͡ΞʔΩςΫνϟΛύ λʔϯʹ෼ྨ • ର઀ଓ • ΞΫηεݩͱΞΫηεઌ͕ͦΕͧΕͭͣͭͷύλʔϯ •

    ΋͘͠͸σόΠε͸ͨ͘͞Μ͋Δ͚Ͳ࣌ં͔͠ΞΫηε͕ൃੜͤͣɺ ಉ࣌ʹ୆ͣͭΞΫηε͢Δύλʔϯ • ରଟ઀ଓ • ΞΫηεݩ͸͕ͭͩಉ࣌ʹෳ਺ͷσόΠεʹϦϞʔτΞΫηεͨ͠ ͍ύλʔϯ • ଟରଟ઀ଓ • ෳ਺ͷΞΫηεݩ͔Βෳ਺ͷσόΠεʹಉ࣌ʹϦϞʔτΞΫηε͢Δ ύλʔϯ
  8. ΞΫηεݩͱσόΠε͕ରʹͳΔ৔߹ɺར༻͍ͨ͠ϓϩτί ϧ΍ΞΫηεස౓ʹԠͯ͡׆༻αʔϏεΛม͑Δ͜ͱΛਪ঑ ର઀ଓ 5$1Ҏ֎ͷϓϩτίϧΛ ར༻͢Δʁ ݄ʹճҎ্ΞΫηε͢Δ ର৅σόΠε͕୆Ҏ্ʁ 403"$0.(BUF 403"$0./BQUFS /P

    /P :FT :FT
  9. ର઀ଓ ϦϞʔτΞΫηεʹ༻͍Δϓϩτίϧ͕5$1Ҏ֎ͷ৔߹΍ɺϥϯ μϜͳෳ਺ͷ5$1ϙʔτ͕ඞཁʹͳΔ৔߹͸403"$0.(BUFͷ 4*.ؒ઀ଓͷར༻Λਪ঑ 403"$0. (BUF 4*.ؒͰดҬ઀ଓ 71( 1VCMJD(BUFͷར༻΋Մೳɺͨͩ͠ηΩϡϦςΟϦεΫʹ͍ͭͯਖ਼͘͠ཧղͨ͠͏͑Ͱͷར༻Λڧ͘ਪ঑ ࢀߟ63-ɿIUUQTEFWTPSBDPNJPKQEPDTQVCMJD@HBUF

  10. ର઀ଓ ϦϞʔτΞΫηεʹ༻͍Δϓϩτίϧ͕5$1ͷ৔߹΍ΞΫηε ઌσόΠε͕গͳ͍৔߹͸403"$0./BQUFSͷར༻Λਪ঑ 403"$0. /BQUFS ηΩϡΞϓϩτίϧ ʹΑΔ௨৴ ดҬ໢಺௨৴

  11. ؅ཧαʔόΛ ΞυϗοΫʹߏங ·ͨ͸ৗ࣌ઃஔ ରଟ઀ଓ ΞΫηεݩͱσόΠε͕ରଟʢdʣʹͳΔ৔߹͸Ϋϥ΢υ ্ͷ؅ཧαʔόܦ༝ͰͷΞΫηεΛਪ঑ ؅ཧαʔό 71( 403"$0. $BOBM

     (BUF ؅ཧαʔόͱ4*.ؒͰดҬ઀ଓ ؅ཧαʔόͱηΩϡΞ઀ଓ
  12. ଟରଟ઀ଓ ΞΫηεݩڌ఺ʹෳ਺ͷ୲౰ऀ͕͍Δ৔߹͸͋Β͔͡ΊΞΫηε ༻ͷωοτϫʔΫΛߏங͓ͯ͘͜͠ͱΛਪ঑ 71( ϧʔλ ηΩϡΞτϯωϧ ΞΫηεݩڌ఺ ϧʔλ ෳ਺ਓ͕σόΠεʹ ΞΫηε͢Δ৔߹͸

    ڌ఺ؒ઀ଓͷߏஙΛਪ঑ ڌ఺͔Β4*.ͷϓϥΠϕʔτ*1ΞυϨεΛࢦఆͯ͠௚઀ΞΫηεՄೳ 403"$0. $BOBM  (BUF
  13. ϋΠϒϦουߏ੒ ϫʔΫϩʔυ͕ෳࡶͳ৔߹ɺର઀ଓͱଟରଟ઀ଓͷϋΠϒϦ ουߏ੒Λਪ঑ 71( ηΩϡΞτϯωϧ ΞΫηεݩڌ఺ ϧʔλ ϧʔλ 403"$0. /BQUFS

    ֎ग़ઌ͔ΒΠϯλʔωοτܦ༝Ͱ ηΩϡΞΞΫηεՄೳ 5-4Φϓγϣϯ ڌ఺͔Β4*.ͷϓϥΠϕʔτ*1ΞυϨεΛࢦఆͯ͠௚઀ΞΫηεՄೳ ηϧϥʔυϯάϧͰطଘ1$͕ηϧϥʔ઀ଓʹରԠ ֎ग़ઌͰ΋ดҬ໢಺ͰͷηΩϡΞ઀ଓՄೳʹ 4*.ؒηΩϡΞ઀ଓ 4*.ؒηΩϡΞ઀ଓ 403"$0. $BOBM  (BUF
  14. ˜403"$0. */$ • ԕִ஍ͷ8FCΧϝϥʹͱ͖Ͳ͖ΞΫηε͍ͨ͠ • େྔͷ3BTQJʹ"OTJCMFͰσϓϩΠ͍ͨ͠ • อकڌ఺͔Β͍ͭͰ΋σόΠεʹΞΫηε͍ͨ͠ Ϣʔεέʔε

  15. ԕִ஍ͷ8FCΧϝϥʹ࣌ʑΞΫηε͍ͨ͠ લఏɿ • ΞΫηεݩ͸Πϯλʔωοτܦ༝ͰΞΫηε͢Δ • ΞΫηεස౓͸݄ʹճఔ౓ • Χϝϥ͸୆ • 8FCΧϝϥ͸)551Ͱ഑৴͍ͯ͠Δ

    403"$0. /BQUFS 5-4Φϓγϣϯ GET https://x-x-x-x.napter.soracom.io:xxxxx/ GET http://10.128.0.1:80/ 10.128.0.1:80 ର઀ଓύλʔϯ
  16. લఏɿ • ਓͰͨ͘͞ΜͷσόΠεΛ؅ཧ͢Δ • 1MBZCPPL͕׬ྃ͢Δ·Ͱͷ͕࣌ؒಡΊͳ͍ • ϲ݄ʹճ͙Β͍ෆఆظʹൃੜ͢Δ࡞ۀ େྔͷ3BTQJʹ"OTJCMFͰσϓϩΠ͍ͨ͠ ؅ཧαʔό 71(

    403"$0. $BOBM  (BUF ࡞ۀ͢Δͱ͖͚ͩ؅ཧαʔόΛߏங 3BTQJͷઃఆมߋ $ ansible-playbook -i soracom_air main.yml ؅ཧαʔόʹ઀ଓ $ ssh -i ~/.ssh/id_rsa user@mgmt-server ରଟ઀ଓύλʔϯ
  17. ˜403"$0. */$ લఏɿ • อक࡞ۀ͸Πϯλʔωοτ઀ଓෆՄ • อकڌ఺ʹ͸ෳ਺ͷ୲౰ऀ͕͍Δ • ͍ͭอक࡞ۀ͕ൃੜ͢Δ͔ಡΊͳ͍ •

    อक࡞ۀʹ͸༷ʑͳϓϩτίϧΛར༻͢Δ อकڌ఺͔Β͍ͭͰ΋σόΠεʹΞΫηε͍ͨ͠ 71( ηΩϡΞτϯωϧ อकڌ఺ ϧʔλ ϧʔλ 403"$0. $BOBM  (BUF Ѽͷܦ࿏ͷωΫετϗοϓΛ "84্ͷϧʔλʹ޲͚ΔઃఆΛ௥Ճ 10.128.0.0/9 vxlan0:10.128.255.254 192.168.0.0/24 อकڌ఺͔Βͷ௨৴ͷ4SD*1ΞυϨεΛ ʹ/"5͢ΔઃఆΛ௥Ճ ଟରଟ઀ଓύλʔϯ ࣾ಺γεςϜ
  18. ˜403"$0. */$ • ϦϞʔτΞΫηεʹ͸ύλʔϯ͕͋Δ • ϫʔΫϩʔυʹԠͯ͡ύλʔϯΛબͼ·͠ΐ͏ • ࠔͬͨΒιϥίϜʹ͝૬ஊ͍ͩ͘͞ʂ ·ͱΊ

  19. ˜403"$0. */$ • 403"$0.(BUF • IUUQTTPSBDPNKQTFSWJDFTHBUF • 403"$0./BQUFS • IUUQTTPSBDPNKQTFSWJDFTOBQUFS

    • 71( • IUUQTEFWTPSBDPNJPKQEPDTWQH@EFUBJM • 1VCMJD(BUF • IUUQTEFWTPSBDPNJPKQEPDTQVCMJD@HBUF "QQFOEJY
  20. ˜403"$0. */$ ࣍ճ༧ࠂ 403"$0./BQUFSϋϚΓͲ͜Ζపఈղઆ /"5ͱ͖Ͳ͖ϧʔςΟϯά ʢ༧ఆʣ