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

AWS Drink MeetUp 20190307 soru

soru
March 07, 2019

AWS Drink MeetUp 20190307 soru

Experience story that tried making IoT Platform using AWS

soru

March 07, 2019
Tweet

Other Decks in Technology

Transcript

  1. ໨࣍ • ࣗݾ঺հ • ձࣾ঺հ - ΤϯίΞʔυ • ͳͥθϩ͔Β࡞ͬͨʁ •

    γεςϜߏ੒ • ΠϯϓϥྖҬʁΞϓϦέʔγϣϯྖҬʁ • ࢖ͬͯΈͨ - Cognito • ࢖ͬͯΈͨ - Dynamo DB • ࢖ͬͯΈͨ - IoT
  2. ձࣾ঺հ - ΤϯίΞʔυ • 2013೥γϦίϯόϨʔͰ૑ۀ • 2016೥Encored೔ຊ๏ਓઃཱ • 2017೥Encored Japan໊ࣾมߋ

    (SBͱJV) • ΤωτʔΫ(Enertalk) • ϠϚμిػεϚʔτϗʔϜͱͯ͠ఏڙɹɹ ʢࠓ݄χϡʔεϦϦʔεલʹConfidentialʣ Ԋֵ ੡඼
  3. γεςϜߏ੒ IoT Cognito Auth Auth Log Services Core S3 RDB

    Dynamo Push, mail Enertalk Open API Service API Device API Registor Shadow setting Request Topic Rule Action BLE SES,SNS Ͳ͜·Ͱ͕ΠϯϓϥͰ Ͳ͜·Ͱ͕ΞϓϦʁ
  4. APPྖҬ͸SERVERLESSͰ • ServerlessͷBaseͷࢀߟ͸ (API Gateway, Lambda, IAM Role) • https://github.com/awslabs/aws-serverless-express

    • ։ൃͷޮ཰ԽͷͨΊͷɺlocal։ൃ؀ڥͷىಈϞʔυͷઃܭ • Rule ActionͳͲͰϏδωεϩδοΫ΍Modelͷ࠶ར༻ • ITɺUT͸ࣗಈԽ ىಈϞʔυ ༻్ ؀ڥ४උ උߟ Offline αʔϏεϩδοΫ։ൃ Local RDB Local Dynamo DB AWS͸MockͰ Cognito͸ཁઃܭ AWS࿈ܞ։ൃ AWSϦιʔεͱૄ௨֬ೝ AWS Acess key AWS Serviceຖʹ Access Keyઃఆ SAM docker API Gatewayͷಈ࡞֬ೝ SAM Docker API Gateway Version ͕ҧ͏ʁ
  5. ࢖ͬͯΈͨ - DYNAMO DB ͱʹ͔͘ϋϚΓ·͘Γʢٕज़ݕ౼࣌͸࢖Θͳ͍ͱ൑அͨ͠ͷʹɾɾɾʣ ʮ͜͜ʹϋϚͬͨʂDynamoDBʯ • https://blog.brains-tech.co.jp/entry/2015/09/30/222148 ʻ໰୊ʼ ༧໿ΩʔϫʔυͷΧϥϜ໊Λར༻͢Δ৔߹͸

    ҎԼͷΑ͏ʹΧϥϜΛఆٛ͢Δඞཁ͕͋Γ·͢ɻ ProjectionExpression:'#type', ExpressionAttributeNames:{ '#type': ‘type', }, ʮpayload.typeʯͷ৔߹͸ʁ ProjectionExpression:'#type', ExpressionAttributeNames:{ '#type': ‘payload.type’, }, ᶃ ProjectionExpression:’payload.#type', ExpressionAttributeNames:{ '#type': ‘type', }, ᶄ ⭐RDBͷߟ͑ํΛࣺͯɺSIMPLEͳkey & ValueઃܭΛ ᶄ ˒ਖ਼ղ
  6. ࢖ͬͯΈͨ - IOT MQTTূ໌ॻ؅ཧ • σόΠεొ࿥ͷૢ࡞step͕ଟ͍ˠ Custom AuthenticationΛཱͯͯࣗಈԽ • AWSͷূ໌ॻࣗಈൢചػΛࢀߟ

    • https://github.com/awslabs/aws-iot-certificate-vending-machine Shadow • σόΠεͷઃఆɺঢ়ଶ৘ใΛڞ༗͢Δɻ • ϓϥοτϑΥʔϜ͔Βӡ༻ʹ͸Ұํํ޲͕Φεεϝʢ100%ݸਓҙݟʣ Topic • γεςϜڞ௨ͷ༣ศϙετ ※౦ژ౎ɺ౦ژ౎/ീԦࢠࢢɺ౦ژ౎/ീԦࢠࢢ/… • σόΠεͷෛՙΛݮΒͨ͢ΊɺTopicύεʹ޻෉͕ඞཁ • ͻͱͭͷύεͰσόΠε̍୆͕ඞཁͳ৘ใͷΈड͚औΔΑ͏ʹ ※ϋʔυϧߴ͍
  7. ࢖ͬͯΈͨ - IOT Rule Action • ઃܭʹΑͬͯ͸ίʔσΟϯάθϩͰDB֨ೲ·Ͱ • Error QueueΛ׆༻͠Α͏ɻ˞ΤϥʔൃੜΛ؂ࢹɺ෮چσʔλอ؅

    جຊతͳऔΓࠐΈʁ • Topicͷmessage brokerΛར༻ͤͣrule-nameΛࢦఆͯ͠Aciton • ϝϦοτɿmessage cost͕͔͔Βͳ͍ • σϝϦοτɿ ᶃ rule-nameͷ؅ཧ͕ඞཁɹ ᶄ subscribe͕Ͱ͖ͳ͍ Basic Ingest