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

オープンソースコミュニティで加速するサーバーレスの未来/serverless will be

オープンソースコミュニティで加速するサーバーレスの未来/serverless will be

堀家隆宏

October 04, 2019
Tweet

More Decks by 堀家隆宏

Other Decks in Programming

Transcript

  1. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. T O K Y O 2 0 1 9 . 1 0 . 0 3 - 0 4 ΦʔϓϯιʔείϛϡχςΟͰ Ճ଎͢ΔαʔόʔϨεͷະདྷ ງՈོ޺ CEO Serverless Operations LLC
  2. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. ࣗݾ঺հ ɾServerless Operationsͱ͍͏ձࣾΛ΍ͬͯ·͢ ɾServerless Frameworkͷϝϯςφʔ ɾαʔόʔϨεͰͷ։ൃָ͕ʹͳΔπʔϧΛ࡞ͬͯ
 ɹΦʔϓϯιʔεͰެ։ͯ͠·͢ ɾServerless Meetup TokyoͷΦʔΨφΠβʔ
  3. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Ϋϥ΢υͷੈքͷதʹ͍ͳ͕Βɺ ΦʔϓϯιʔείϛϡχςΟʹࢀՃ͢Δ͜ͱͷָ͠͞΍ҙຯ ͦͯͦ͠Ε͕͋ͳͨࣗ਎΍ΩϟϦΞʹͲΜͳӨڹΛ΋ͨΒ͢ͷ͔
 ຊ೔఻͍͑ͨ͜ͱ
  4. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Agenda ɾࢲͱαʔόʔϨεͷྺ࢙ ɾࢲ͕ؔΘ͍ͬͯΔOSSϓϩδΣΫτ ɾάϩʔόϧͷαʔόʔϨείϛϡχςΟʹࢀՃ͢Δ͜ͱ
 ɹͦͷதͰಘͨ΋ͷ ɾOSSϓϩδΣΫτΛܧଓతʹଓ͚Δํ๏
 
 ɾ͜Ε͔ΒͷαʔόʔϨεͷ࿩
  5. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. T O K Y O ͳͥαʔόʔϨεͳ OSSʹ೤த͢ΔΑ͏ʹͳͬͨͷ͔ গࣗ͠෼ͷྺ࢙Λ͔͞ͷ΅ͬͯΈΔ
  6. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. ɾ2006೥ɿେֶͷݚڀࣨͰγϡϛϨʔγϣϯͷϓϩάϥϜΛC++Ͱॻ͘
 ɹɹɹɹɹϓϩάϥϛϯάͷָ͠͞Λײ͡ΔΑ͏ʹͳΔ ɾ2008೥ɿਆށσδλϧɾϥϘͱ͍͏ਆށͷSierͷձࣾʹ৽ଔೖࣾɻ
 ɹɹɹɹɹPHPΛ͔ͭͬͨWebΞϓϦέʔγϣϯͷ։ൃͷ࢓ࣄΛͨ͘͞Μ΍Δ ɾ2009೥ɿΦʔϓϯιʔεCMSͷWordPressͱͷग़ձ͍ ྺ࢙
  7. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. WordPressͱͷग़ձ͍
  8. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. WordPressͱAWSͳ೔ʑ
  9. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. AWSָ͕ͦ͠͏ʹөΔ೔ʑ ɾ2013೥ࠒ͸ɺ·ͩEC2͕த৺ͷੈք؍ɻ
 ɹϓϩάϥϚʔͷࣗ෼͸ΠϯϑϥΛ৮Δ͜ͱ͕΄΅ͳ͍ͨΊ
 ɹਂؔ͘ΘΔ͜ͱ͸ͳ͔ͬͨ ɾͰ΋AWSͷ੎͍΍ίϛϡχςΟʹ͸ඇৗʹऒ͔Ε͍ͯͨ
  10. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. 2014೥ - AWS LambdaͷϦϦʔε
  11. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. AWS Lambdaͷ͕΋ͨΒͨ͠΋ͷ αʔόʔΛ࡞Βͣͱ΋ϓϩάϥϜ͕AWS্Ͱ࣮ߦͰ͖ΔΑ͏ʹͳͬͨ 
 ࣗ෼ͨͪʹ΋AWSͷαʔϏεΛ૊Έ߹Θͤͯ໘ന͍΋ͷ͕ͭ͘ΕΔͧͱ͍ ͏ϫΫϫΫ͕େ͖͘૿ͨ͠
  12. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. 2015೥ - API GatewayͷϦϦʔε
  13. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. API Gateway͕΋ͨΒͨ͠΋ͷ LambdaϕʔεͰ࡞ͬͨΞϓϦέʔγϣϯ͕HTTPϓϩτίϧΛ௨ͯ͠
 AWSͷ֎ͷੈքʹ༰қʹग़ͤΔΑ͏ʹͳͬͨ AWSͷαʔϏεΛ্ख͘૊Έ߹Θͤͯ໘ന͍ΞϓϦέʔγϣϯΛ
 ެ։Ͱ͖Δͧͱ౰࣌ͷࣗ෼͸େ͖͘ڵฃͨ͠
  14. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. ಈ͘΋ͷΛ࡞ͬͯ͸ࢼ͢೔ʑ
  15. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. ௚໘ͨ͠໰୊ ɾϚωδϝϯτίϯιʔϧ͔Β௚઀ιʔείʔυΛΞοϓϩʔυ͢ΔͨΊɺ
 ɹόʔδϣϯ؅ཧͰ͖ͳ͍ ɾ෼ࢄ؀ڥԼͰͲͷΑ͏ʹߏ੒؅ཧ͢Δͷʁ ɾCI/CDͷࣗಈԽ͸ʁ
  16. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. ͦΕΒΛղܾ͢ΔServerless Frameworkͷొ৔
  17. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. AWSͷߏ੒ΛOSSԽͰ͖Δিܸ
  18. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. T O K Y O ࢲ͕ؔΘΔαʔόʔϨεͳOSSϓϩδΣΫτ
  19. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Serverless Framework
  20. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. ϓϥάΠϯγεςϜ Community Plugins
  21. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Serverless Step Functions
  22. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. ઃఆϑΝΠϧͷॻ͖ํ Reference to the functions Statemachine definition
  23. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Step FunctionsͷΠϕϯτιʔεΛఆٛ Event Source Step Functions Workflow
  24. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. ઃఆϑΝΠϧͷهड़ྔ͕গͳͯ͘ࡁΉ CloudFormation Serverless Step Functions
  25. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Serverless Step Functions
  26. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Serverless API Gateway Service Proxy https://github.com/horike37/serverless-apigateway-service-proxy
  27. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. API GatewayͱAWSαʔϏεΛΠϯςάϨʔγϣϯ͢Δέʔε AWS Services API Gateway
  28. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Lambdaແ͠ͰͷΠϯςάϨʔγϣϯ AWS Services API Gateway
  29. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. γϯϓϧͳઃఆϑΝΠϧ
  30. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Ϣʔεέʔε https://qiita.com/horike37/items/4da41b7859cbf7bb9baf
  31. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. ϑϩϯτ͔ΒAPIΛݺͼKinesisʹPVΛPUT
  32. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. ͦͷଞίϯτϦϏϡʔγϣϯͨ͠OSS ɾServerless Dashboard For Atom ɾServerless Application Model ɾAlisProject/serverless-application ɾServerless Delete Log Groups ɾServerless Package Customizer ɾPynamoDB ɾSimple API Gateway
  33. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. T O K Y O αʔόʔϨεͳOSS׆ಈΛܧଓతʹଓ͚Δ Ϟνϕʔγϣϯ
  34. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. ΦϯϥΠϯͰίʔυΛத৺ʹܨ͕ΔίϛϡχςΟ
  35. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. ϓϩάϥϚͱͯͦ͜͠ʹࢀՃ͢Δָ͠͞ ɾਓؾͷ͋ΔΦʔϓϯιʔεϓϩμΫτʹ͸εΩϧ͕༗Δਓ͕ू·ͬͯ͘Δɻ
 ɹͦ͏͍ͬͨਓ͔ΒιʔεͷϨϏϡʔΛड͚Δ͜ͱͰ֨ஈʹεΩϧΞοϓ͢Δ ɾԕ͘ͷࠃͷձͬͨ͜ͱͷͳ͍ਓ͔Βײँ͞ΕΔتͼ
  36. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. ӳޠ͕Ͱ͖ͳ͍͜ͱ͸େ͖ͳ໰୊Ͱ͸ͳ͍ ɾ๻ࣗ਎͸೔ৗձ࿩͕ո͍͠Ϩϕϧ ɾ຋༁πʔϧ࢖͑͹ͷҙݟ΍ҙਤΛɹ
 ɹ఻͑Δ͜ͱ͸Մೳ
 ɹॏཁͳͷ͸͕͔͔࣌ؒͬͯ΋จষΛ
 ɹ૊ΈཱͯͯɺͦΕΒΛ఻͑Δ͜ͱ
  37. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. ͜ΜͳϚΠϯυηοτͰOSSͱ޲͔͍߹͏ ɾਓؾͷ͋ΔΦʔϓϯιʔεϓϩμΫτ͸ɺ
 ɹҒ͍ͯ͘͢͝ਓ͚͕ͩͭͬͯ͘ΔͷͰ͸ͳ͍
 ɹ౰ͨΓલʹࣗ෼ͷҙࢤ͕൓өͰ͖Δ৔ॴͰ͋Δͱ͍͏͜ͱ ɾࣗ෼ͷॻ͍ͨίʔυ͕ྫ͑1ߦͩͱͯ͠΋ੈքதͷਓʹ࢖ΘΕͯɺ
 ɹͲ͔͜ͷ୭͔ͷ໾ʹཱͬͯΔ͔΋͠Εͳ͍ͱ૝૾ͯ͠ΈΔ͜ͱ
  38. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. “ੈքΛม͑Δ͜ͱ͸೉͍͕͠ɺ ੈքΛ0.0000001mmྑ͘͢Δ͜ͱ͸ ࠓ೔ͷগ͠ͷ͕Μ͹ΓͰՄೳ͔΋͠Εͳ͍”
  39. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. OSS׆ಈΛܧଓͤ͞Δʹ͸
  40. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. ͳͥܧଓ͕೉͍͔͠ ɾऔΓ׶͑ͣެ։ͯ͠Έ͕ͨɺಛʹ୭͔Βͷ൓Ԡ΋ͳ͘๞͖ͯ͠·͏ ɾOSS׆ಈࣗମ͸ΊͪΌͪ͘Ό஍ຯ
  41. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. ͲͷΑ͏ʹͦΕΛଧ։͢Δͷ͔ ɾ·ͣ͸ελʔ͕1000Ҏ্໨҆ʹΑؔ͘Θ͍ͬͯΔਓ͕ෳ਺͍Δɺ͔ͭ
 ɹhelp-wantedͳͲίϯτϦϏϡʔλͷೖΓޱΛ࡞ͬͯ͘ΕΔϓϩδΣΫτ
 ɹͰܧଓతʹϓϧϦΫΤετΛૹΓଓ͚Δ ɾઌૹΓʹ͞Ε͍ͯΔ໰୊Λ௵͍ͯ͘͠ਓͷ
 ɹଘࡏ͸ΊͪΌͪ͘Όॏཁ
  42. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. ͲͷΑ͏ʹͦΕΛଧ։͢Δͷ͔ ɾܧଓ͢Δਓͷ਺͸ΊͪΌͪ͘Όগͳ͍ɻ
 ɹܧଓ͢Δ͜ͱͰ৴པ͞ΕͯίϛοτݖΛ෇༩͞ΕΔՄೳੑ͸͔ͳΓߴ͍ ɾίϛοτݖΛ΋Β͏ࠒʹ͸ɺͦͷOSSϓϩμΫτ಺ͰίϛϡχςΟ
 ɹͷ͍ͪһͱͯ͠ೝࣝ͞ΕΔɻࣗ෼ͷݟ͑Δܠ৭΋มΘΔ
  43. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. ͲͷΑ͏ʹͦΕΛଧ։͢Δͷ͔ ɾͦͯ͠ɺϓϧϦΫΛग़͠ଓ͚ͨϓϩμΫτͷϓϥάΠϯͳͲ෇ਵͷ
 ɹOSSϓϩμΫτΛग़ͯ͠ΈΔ
 ɾίϛϡχςΟͷਓ͕ϑΟʔυόοΫͨ͠Γ
 ɹએ఻ͯ͘͠ΕͨΓɺҰॹʹ։ൃʹࢀՃͯ͘͠ΕͨΓͱ͍͏ɺ
 ɹྑ͍αΠΫϧ͕ճΔΑ͏ʹͳΓɺܧଓ͍͚ͯ͠ΔϞνϕʔγϣϯΛอͪ΍͘͢ͳΔ
  44. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. αʔόʔϨεͷະདྷͱ Φʔϓϯιʔε
  45. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Cloud 2.0ͱ͸Ͳ͏͍ͬͨ΋ͷ͔ ɾαʔόʔϨεͰࣗ෼ͨͪͰ੹຿Λ࣋ͨͳ͍ͱ͍͚ͳ͍ͷͬͯίʔυͷ෦෼ͩΑͶ
 ɹ͔ͩΒͦͷ੹຿͔Β։์͞ΕΔͨΊʹΑΓগͳ͍ίʔυΛ๬ΉΑͶ ɾͦͯͦ͠ͷଟ͘͸ϚωʔδυαʔϏεͰ͸࣮ݱͰ͖ͳ͍෦෼Λ
 ɹίʔυͰอ؅ͯ͠Δέʔε͕ଟ͘ɺͦ͜ʹେ͖ͳՁ஋͸ͳ͍ΑͶ ɾͭ·Γ“ڀۃͷαʔόʔϨεΞϓϦέʔγϣϯʹ͸
 ɹ·ͬͨ͘ίʔυ͕ͳ͍ΜͩΑ”
  46. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Cloud 2.0ͱ͸Ͳ͏͍ͬͨ΋ͷ͔ ɾαʔόʔϨεͷૂ͍͸ΑΓίʔυΛগͳ͘Ϋϥ΢υͷαʔϏεΛ
 ɹग़དྷΔݶΓ࢖͏͜ͱͩΑ
 ɹ͜ΕΛվΊͯ࣍ੈ୅ͷΫϥ΢υͷ࢖͍ํͱͯ͠“Cloud 2.0"ͱ໊෇͚ͯΈΑ͏ ɾ“Cloud 2.0”࣌୅ͷΩϯά͸ͩΕ͔ʁͦΕ͸ʮ֦ுੑͱՄ༻ੑͷߴ͍
 ɹΫϥ΢υαʔϏεͷར఺Λཧղͯ͠ɺ
 ɹͦΕΒΛ݁ͼ͚ͭΔͨΊͷ࠷খݶ࠷దԽ͞Εͨ
 ɹίʔυΛॻ͘ਓͨͪʯͩͱ͓΋͏Α
  47. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. “ϑϧϚωʔδυαʔϏεΛ͏·͘ར༻͢Δ͜ͱͰɺ ΞϓϦέʔγϣϯϩδοΫͷ੹຿ͷଟ͘ΛΫϥ΢υʹ೚ͤ
 ΑΓϏδωεόϦϡʔΛग़ͨ͢Ίͷ࢓ࣄʹूத͢Δ͜ͱ“ Cloud 2.0࣌୅ͷϚΠϯυηοτ
  48. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. ͦΜͳมԽʹͲͷΑ͏ʹ޲͖߹͏͔ ɾCloud2.0ͷ࣌୅Ͱ΋ɺίʔυΛॻ͘ͱ͍͏͜ͱ͕ຊ࣭తʹͳ͘ͳ͍ͬͯ͘ͱ͍͏
 ɹ͜ͱ͸ͳ͍ɻԿނͳΒΫϥ΢υαʔϏεؚΊͨ͜ͷੈͷιϑτ΢ΣΞ͸
 ɹ͢΂ͯϓϩάϥϜͰಈ͍͍ͯΔͱ͍͏ࣄ࣮ ɾίʔυΛॻ͘ࢹ఺Λม͑ͯΈΔɻ୯ൃͰೲ඼͢Δ࢓ࣄͷίʔυʹՁ஋͸
 ɹ͋Δͷ͔ʁܧଓతʹԿ͔ΛղܾͰ͖ΔΑ͏ͳ͜ͱΛίʔυͰදݱͯ͠
 ɹ͍͘ํ͕Α͍ͷͰ͸
  49. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. OSSͰ͋Δͱ͍͏νϟϯε ɾΫϥ΢υͷαʔϏε͸೔ʑ৽͍͠΋ͷ͕ϦϦʔε͞ΕΔɻ
 ɹ৽͍͠΋ͷ͕ग़Δͱ͍͏͜ͱ͸ͦΕʹ෇ਵͯ͠
 ɹ৽ͨͳ໰୊΋ൃੜ͢Δͱ͍͏͜ͱɻ໰୊ͱ͸νϟϯεͰ͋Δͱ͍͏͜ͱ
 
 ɾOSSͰࣗ෼ͷॻ͘ίʔυ͕ଟ͘ͷਓʹӨڹΛ༩͑ΒΕΔ͸ͣ
  50. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. https://tokyo.serverlessdays.io/ ೔ຊͰServerless Days΍Γ·͢
  51. Thank you! © 2019, Amazon Web Services, Inc. or its

    affiliates. All rights reserved. ງՈོ޺ [email protected]