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
「isaax」を使った PoCからプロダクションまでの開発
Search
Tomoyuki Sugita
February 23, 2018
Technology
0
270
「isaax」を使った PoCからプロダクションまでの開発
2018.2.23 Fri isaax UG+さくらクラブ共催 IoT 勉強会 @ サイボウズ株式会社 大阪オフィス
Tomoyuki Sugita
February 23, 2018
Tweet
Share
More Decks by Tomoyuki Sugita
See All by Tomoyuki Sugita
採用でプロダクトの壁を乗り越える
tomotomo
1
360
ラズパイマガジン 寄稿ネタDEMO
tomotomo
0
910
PHPでLチカ(PHPカンファレンス2018 懇親会)
tomotomo
0
3.3k
IoTデバイスのつらみ isaaxで解消しましょう
tomotomo
0
120
IoTLT 40回 おめでとう!
tomotomo
2
460
2000年頃のフロントエンド技術
tomotomo
1
10k
WordPressとサーバーとお金の話
tomotomo
0
1.1k
スタートアップのレガシーシステムをAws活用で改善している話
tomotomo
0
490
Other Decks in Technology
See All in Technology
AIエージェント入門
minorun365
PRO
32
19k
サバイバルモード下でのエンジニアリングマネジメント
konifar
8
1.7k
入門 PEAK Threat Hunting @SECCON
odorusatoshi
0
170
AWSではじめる Web APIテスト実践ガイド / A practical guide to testing Web APIs on AWS
yokawasa
8
750
AWS Well-Architected Frameworkで学ぶAmazon ECSのセキュリティ対策
umekou
2
150
LINE NEWSにおけるバックエンド開発
lycorptech_jp
PRO
0
330
エンジニアリング価値を黒字化する バリューベース戦略を用いた 技術戦略策定の道のり
kzkmaeda
7
3.2k
遷移の高速化 ヤフートップの試行錯誤
narirou
6
1.8k
OPENLOGI Company Profile
hr01
0
60k
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
19k
いまからでも遅くない!コンテナでWebアプリを動かしてみよう!コンテナハンズオン編
nomu
0
170
2/18 Making Security Scale: メルカリが考えるセキュリティ戦略 - Coincheck x LayerX x Mercari
jsonf
0
240
Featured
See All Featured
Producing Creativity
orderedlist
PRO
344
40k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
Speed Design
sergeychernyshev
27
810
GraphQLの誤解/rethinking-graphql
sonatard
69
10k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
How STYLIGHT went responsive
nonsquared
99
5.4k
Statistics for Hackers
jakevdp
797
220k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
How to Think Like a Performance Engineer
csswizardry
22
1.4k
The Cost Of JavaScript in 2023
addyosmani
47
7.4k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Transcript
ʮJTBBYʯΛͬͨ 1P$͔ΒϓϩμΫγϣϯ·Ͱͷ։ൃ 2018.2.23 Fri JTBBY6( ͘͞ΒΫϥϒڞ࠵*P5ษڧձ !αΠϘζגࣜձࣾେࡕΦϑΟε
ࣗݾհ w ਿాࢸ!UPNPUPNPCJMF w גࣜձࣾ94)&--Ϗδωε։ൃϚωʔδϟʔ ˞ΤϯδχΞͰ͋Γ·ͤΜ w ஶॻʮΤϯδχΞͷͨΊͷ8PSE1SFTT։ൃೖʯ w ࡢ݄ɺେࡕϚϥιϯ͠·ͨ͠
w ࡢ݄ɺస৬Ͱେࡕ͔Β౦ژʹҾͬӽ͠·ͨ͠ w ࠓϲ݄ͿΓͷେࡕͰ͢ w ͓ञ͕େ͖Ͱ͢ɻओʹژڮɾఱຬΛҿΈา͍ͯ·ͨ͠
94)&--ʢΤΫγΣϧͱಡΈ·͢ʣ ԿͬͯΔձࣾʁ *P5ͷडୗ։ൃ σόΠε։ൃ σόΠεΞϓϦέʔγϣϯ։ൃ *P5ษڧձ JTBBY6TFS(SPVQIUUQTDBNQJTBBYJP اۀ͚ɺֶߍ͚ *P54BB4JTBBYͷ։ൃ ࠓ͓͢Δ༰
*P5ͷडୗ։ൃ
*P5ʹΑΔόε҆શӡసࢧԉγεςϜ όεӡసखͷߴྸԽΛղܾ͘͢ɺόεӡసखͷ݈߁ঢ়ଶΛԕִͰѲɺ ࢹ͢ΔγεςϜΛ։ൃɻ(I[ͷϚΠΫϩϨʔμʔΛ࠲੮ͷޙΖʹऔΓ ͚ͯɺΫϥυ͔Βͷ݈߁ঢ়ଶѲΛ࣮ݱɻ Έͳͱ؍ޫόε͕ӡߦ͢Δͷ࿏ઢόεͰ࣮ূߦɻ ϓϨεϦϦʔε IUUQTXXXJTJEDPKQOFXTSFMFBTFIUNM
γεςϜͷ֓ཁ ͜ͷ෦Λ୲
94)&--͕1P$Ͱͬͨ͜ͱ σόΠεΛ։ൃ ৺ഥɾݺٵηϯαʔͱं྆ηϯαʔ *P5ήʔτΣΠ *P5ήʔτΣΠͷԕִΞοϓσʔτ ౦ژͷ94)&--ΦϑΟεͰ։ൃͨ͠৽͍͠Ξϓ ϦέʔγϣϯΛɺਆށͷόεʹҰ੪৴ JTBBY ΞΠβοΫε ΛͬͨͷͰɺݱʹߦ͘
͜ͱͳ͘Ξοϓσʔτ͢Δ͜ͱ͕ग़དྷͨ ˞ৄ͘͠ޙͰ
*P5ษڧձ
*P5ษڧձ͜Μͳ͜ͱͯ͠·͢ ࣌ؒͰ(JUͰཧ͢Δ*P5ΧϝϥσόΠε։ൃΛମݧ ࢀՃऀͷײ w ͜Μͳʹ؆୯ʹͰ͖ΔͱࢥΘͳ͔ͬͨ ιϑτ ΣΞΤϯδχΞ w (JUIVCʹ1VTI͢Δ͚ͩͰσόΠεΛߋ৽Ͱ͖
ΔͷศརͰ͢Ͷ ઐֶߍߨࢣ w ͲΜͳ͜ͱ͕ग़དྷΔͷ͔ͷΠϝʔδ͕͔ͭΊͨ ࣄۀ෦Ϛωʔδϟʔ
໌ޙσδϋϦେࡕͰΓ·͢ IUUQTJTBBYVHDPOOQBTTDPNFWFOU ˞͝ΊΜͳ͍͞ɺΩϟϯηϧͪͰ͢
IUUQTDBNQJTBBYJP ΠϕϯτใJTBBYDBNQ ΞΠβοΫɾεΩϟϯϓ Ͱ֬ೝ ͝ཁ͕͋Εاۀ͚ʹ࣮ࢪ͠·͢
ࠓͷຊɿJTBBY ΞΠβοΫε IUUQTJTBBYJP
*P5ʹΑΔόε҆શӡసࢧԉγεςϜΛ࣮ݱ͢Δʹ ਆށࢢपลΛΔͷόεʹઃஔ͞Εͨ*P5(8 ͷԕִΞοϓσʔτ͕ඞཁɻ JTBBY͕͔͋ͬͨΒग़དྷ͚ͨͲɺɺɺ
JTBBYແ͠ͰΖ͏ͱ͢Δͱᶃ શσόΠεʹάϩʔόϧIPৼΓग़͢ͷʁશσόΠεͷ'JSFXBMMઃఆ͢Δͷʁ SSHϙʔτ։͚ͱ͘ͷʁ͍ͬͯ͏͔44)ͰϩάΠϯ͢Δͷʁ άϩʔόϧ*1 άϩʔόϧ*1 άϩʔόϧ*1 44) 44) 44)
JTBBYແ͠ͰΖ͏ͱ͢Δͱᶄ ݁ہIPৼΓग़͢ͷʁ୭͕ωοτϫʔΫઃܭ͢Δͷʁ ͍ͬͯ͏͔11SSHͰϩάΠϯ͢Δͷʁ άϩʔόϧ*1 άϩʔόϧ*1 άϩʔόϧ*1 44) 44) 44) ดҬͰ҆৺
JTBBYΛ͏ͱσόΠε։ൃ͕؆୯ ։ൃ ίʔυΛ1VTI Ξοϓσʔτ OTAߋ৽ͷΈ͕ҰॠͰʂ
JTBBYΛ͏ͱσόΠε։ൃ͕؆୯ ΦϑΟε͔Β ຊதͷσόΠεΛ Ξοϓσʔτʂ ։ൃڥͰ্ख͘ ಈ͍ͨͷΛ1VTI
JTBBYͷදతͳػೳͭ σόΠεߋ৽ ϞχλϦϯά ڥม εΫϦϓταʔϏε
6TF$BTF ΞϓϦέʔγϣϯͷ ηΩϡϦςΟϗʔϧ͕ݟ͔ͭͬͨʂ ʢσόΠεߋ৽ʣ
JTBBYΛ͏ͱσόΠε։ൃ͕؆୯ ຊதͷσόΠεΛ Ξοϓσʔτʂ ։ൃڥͰͨ͠ ΞϓϦΛσϓϩΠ
6TF$BTF σόΠεͷΞϓϦέʔγϣϯ ͕ͨ͠ʂ ʢϞχλϦϯάʣ
JTBBYΛ͏ͱσόΠε։ൃ͕؆୯ ຊதͷσόΠεΛ Ξοϓσʔτʂ JTBBYΫϥυͰ σόΠεΛ ൃݟ͠ఀࢭ
JTBBYΛ͏ͱσόΠε։ൃ͕؆୯ ຊதͷσόΠεΛ Ξοϓσʔτʂ ։ൃڥͰमਖ਼ͯ͠ ಈ͍ͨͷΛσϓϩΠ
6TF$BTF "1*ͷΤϯυϙΠϯτ͕ มΘͬͨʂ ʢڥมʣ
JTBBYΛ͏ͱσόΠε։ൃ͕؆୯ ຊதͷσόΠεΛ Ξοϓσʔτʂ JTBBYΫϥυͰ ڥมΛมߋ
6TF$BTF ϛυϧΣΞͷ ηΩϡϦςΟϗʔϧ͕ݟ͔ͭͬͨʂ ʢεΫϦϓταʔϏεʣ
JTBBYΛ͏ͱσόΠε։ൃ͕؆୯ ຊதͷσόΠεΛ Ξοϓσʔτʂ JTBBYΫϥυͰ Ξοϓσʔτ εΫϦϓτΛ࣮ߦ
ਪಈ࡞ڥɾσόΠεར༻ྫ ରԠՄೳͳϓϥοτϑΥʔϜ04 w EBSXJOYBNE w MJOVYYBNE w GSFFCTEYBNE w PQFOCTEYBNE
ରԠՄೳͳΞʔΩςΫνϟ w Y w BSN w BSN w BSN w BSN 'SJFOEMZ&MFD /BOP1J 5PSBEFY $PMJCSJ*.9 3BTQCFSSZࡒஂ 3BTQCFSSZ1J 5FYBT*OTUSVNFOUT*OD #FBHMF#POF "SSPX&MFDUSPOJDT %SBHPO#PBSE "464 5JOLFS#PBSE
࣮ࡍͷ͍ํͷհ
JTBBYͷදతͳػೳͭͷ͍ํ σόΠεߋ৽ ϞχλϦϯά ڥม εΫϦϓταʔϏε
ͨͬͨͷεςοϓͰ (JUϓϩδΣΫτͱJTBBYϓϩδΣΫτΛඥ͚Δ σόΠεʹJTBBYΤʔδΣϯτΛΠϯετʔϧʢϫϯϥΠφʔʣ ։ൃͨ͠σόΠεΞϓϦέʔγϣϯΛ(JUʹ1VTI͢Δ͚ͩ (JU͔ΒσόΠε·ͰJTBBY͕ࣗಈͰͬͯ͘ΕΔ
(JUϓϩδΣΫτͱ JTBBYϓϩδΣΫτΛඥ͚Δ
(JUIVCͷϓϩδΣΫτΛ࡞ ࢼ͍ͨ͠ํҎԼͷϓϩδΣΫτΛ'PSL͍ͯͩ͘͠͞ IUUQTHJUIVCDPNZFOUTVOOPEFSFEXBUDI JTBBYKTPO͕ඞਢ
JTBBYKTPOͷத ىಈεΫϦϓτ͕ఆٛ͞Ε͍ͯΔ͚ͩ αϯϓϧIUUQTHJUIVCDPNZFOUTVOOPEFSFEXBUDICMPCNBTUFSJTBBYKTPO
ϓϩδΣΫτΛ৽ن࡞ IUUQTJTBBYJPʹϩάΠϯˠμογϡϘʔυ ˠʴϘλϯΛΫϦοΫ
(JUIVCͷϦϙδτϦΛબ ϦϙδτϦ͕දࣔ͞Εͳ͍߹ɺΠϯςάϨʔγϣϯ ը໘Ͱ(JUIVCͱͷଓͰ͖͍ͯΔ͔֬ೝ͍ͯͩ͘͠͞
σόΠεʹ JTBBYΤʔδΣϯτΛΠϯετʔϧ ʢϫϯϥΠφʔʣ
ΫϥελʔΛબͯ͠ʜ
Raspberry Pi
։ൃͨ͠σόΠε ΞϓϦέʔγϣϯΛ (JUʹ1VTI͢Δ͚ͩ
isaaxʹొͨ͠σόΠε͕Ұ੪ʹΞοϓσʔτ ։ൃ ίʔυΛ1VTI Ξοϓσʔτ
JTBBYͷදతͳػೳͭͷ͍ํ σόΠεߋ৽ʢࡁʣ ϞχλϦϯά ڥม εΫϦϓταʔϏε
ϞχλϦϯά
σόΠε֤छͷใ͕֬ೝͰ͖·͢ ࢮ׆ࢹ ϩʔΧϧ*1 .BDΞυϨε
σόΠεͷΤϥʔϩά͕ݟ͑ΔͷͰಛఆ͕͠ ͘͢ΞϓϦέʔγϣϯͷमਖ਼͕͔ͲΓ·͢ɻ
ڥม
ΫϥελʔΛબͯ͠ʜ
ιʔείʔυʹॻ͖ͨ͘ͳ͍ ڥมJTBBYΫϥυͰཧͯ͠ʜ ΞϓϦέʔγϣϯ࠶ىಈʂ
σόΠεͷڥม͕ߋ৽͞Ε·ͨ͠ ʢ৴༻Ͱ͖ͳ͍ਓ֬ೝͯ͠ʣ
εΫϦϓταʔϏε
ΫϥελʔΛબͯ͠ʜ
εΫϦϓτͷछྨछྨ w QSFJOTUBMM w ΞϓϦέʔγϣϯΛΠϯετʔϧ͢Δલ ॳظԽ࣌ ʹ࣮ߦ ͞Ε·͢ w ྫ͑ॳճͷڥઃఆεΫϦϓτΛ࣮ߦ
w QSFVQEBUF w ΞϓϦέʔγϣϯͷߋ৽લʹ࣮ߦ͞Ε·͢ w ࠷৽ͷιʔείʔυΛμϯϩʔυ͢ΔલʹΓ͍ͨ͜ͱ w QPTUVQEBUF w ΞϓϦέʔγϣϯͷߋ৽ޙʹ࣮ߦ͞Ε·͢ w ྫ͑ґଘύοέʔδͷߋ৽εΫϦϓτ
υΩϡϝϯτͪ͜Β IUUQTJTBBYJPEPDT
ʮJTBBYʯΛͬͨ 1P$͔ΒϓϩμΫγϣϯ·Ͱ ͷ։ൃ
ϓϩμΫγϣϯ·ͰͷͭͷϑΣʔζ ։ൃϑΣʔζ ͱʹ͔͘σόΠε͕ಈ͘Α͏ʹ͢Δɻ σόΠεʹଓͯ͠։ൃɻ ্ख͘ಈ͍ͨίʔυΛ(JUʹίϛοτɻ 1P$ϑΣʔζ ϓϩμΫγϣϯ ϑΣʔζ ։ൃڥ ݕূڥ
ݕূڥͰςετͨ݁͠ՌΛݩʹ ։ൃڥͰΞϓϦέʔγϣϯͷमਖ਼ɻ ཧ͢ΔσόΠε̎ʙఔɻ ։ൃڥ ݕূڥ ຊ൪ڥ ग़ՙޙͷσόΠεΛϝϯςφϯε ͢Δ͜ͱ͕ۃʹ͘͠ͳΔɻ ΞϓϦͷόάमਖ਼ηΩϡϦςΟߋ৽ ͷͨΊʹ05"ߋ৽ͷΈ͕ඞਢɻ
ϓϩμΫγϣϯ·ͰͷͭͷϑΣʔζ ։ൃϑΣʔζ ͱʹ͔͘σόΠε͕ಈ͘Α͏ʹ͢Δɻ σόΠεʹଓͯ͠։ൃɻ ্ख͘ಈ͍ͨίʔυΛ(JUʹίϛοτɻ 1P$ϑΣʔζ ϓϩμΫγϣϯ ϑΣʔζ ։ൃڥ ݕূڥ
ຊ൪ڥ ग़ՙޙͷσόΠεΛϝϯςφϯε ͢Δ͜ͱ͕ۃʹ͘͠ͳΔɻ ΞϓϦͷόάमਖ਼ηΩϡϦςΟߋ৽ ͷͨΊʹ05"ߋ৽ͷΈ͕ඞਢɻ ˍ ӽ͑ΒΕͳ͍น
ϓϩμΫγϣϯ·ͰͷͭͷϑΣʔζ ։ൃϑΣʔζ ͱʹ͔͘σόΠε͕ಈ͘Α͏ʹ͢Δɻ σόΠεʹଓͯ͠։ൃɻ ্ख͘ಈ͍ͨίʔυΛ(JUʹίϛοτɻ 1P$ϑΣʔζ ϓϩμΫγϣϯ ϑΣʔζ ։ൃڥ ݕূڥ
ݕূڥͰςετͨ݁͠ՌΛݩʹ ։ൃڥͰΞϓϦέʔγϣϯͷमਖ਼ɻ ཧ͢ΔσόΠε̎ʙఔɻ ։ൃڥ ݕূڥ ຊ൪ڥ ग़ՙޙͷσόΠεΛϝϯςφϯε ͢Δ͜ͱ͕ۃʹ͘͠ͳΔɻ ΞϓϦͷόάमਖ਼ηΩϡϦςΟߋ৽ ͷͨΊʹ05"ߋ৽ͷΈ͕ඞਢɻ
JTBBYΛͬͨϓϩμΫγϣϯͷҠߦ ։ൃϑΣʔζ ͱʹ͔͘σόΠε͕ಈ͘Α͏ʹ͢Δɻ σόΠεʹଓͯ͠։ൃɻ ্ख͘ಈ͍ͨίʔυΛ(JUʹίϛοτɻ 1P$ϑΣʔζ ϓϩμΫγϣϯ ϑΣʔζ ։ൃڥ ݕূڥ
ݕূڥͰςετͨ݁͠ՌΛݩʹ ։ൃڥͰΞϓϦέʔγϣϯͷमਖ਼ɻ ཧ͢ΔσόΠε̎ʙఔɻ ։ൃڥ ݕূڥ ຊ൪ڥ ग़ՙޙͷσόΠεΛϝϯςφϯε ͢Δ͜ͱ͕ۃʹ͘͠ͳΔɻ JTBBYͰݕূڥʹσϓϩΠɻ ΞϓϦͷόάमਖ਼ηΩϡϦςΟߋ৽ JTBBY͚ͩͰ݁ɻ
JTBBY͕ࢦ͢ੈք w ୭͕*P5ͷ։ൃΛखܰʹͰ͖Δੈք w 05"ηΩϡϦςΟʹֻ͔͍ͬͯͨίετΛσβ ΠϯΞϓϦʹ͑ΔΑ͏ʹͳΔ w ϦιʔεΛ*P5ιϦϡʔγϣϯ։ൃʹूதͰ͖Δ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠