Slide 1

Slide 1 text

[Online] nakanoshima.dev#1 7 Let's start App Runner ! 2021.06.0 9 ABEJA, Inc . Shogo Muranushi EKS Λ࢖ͬͯΔਓ͔Βݟͨ App Runner

Slide 2

Slide 2 text

@rwle1212 2 ໊લ ɿ ଜओ ૖ޛʢΉΒ͵͠ ͠ΐ͏͝ʣ ձࣾ ɿ ABEJA, Inc . ۀ຿ ɿΠϯϑϥΤϯδχΞ -> ϓϩμΫτΦʔφʔ -> SRE

Slide 3

Slide 3 text

@rwle1212 3

Slide 4

Slide 4 text

4 EKS࢖ͬͯΔਓ͔ΒݟͨApp Runner

Slide 5

Slide 5 text

@rwle1212 5 App RunnerͬͯͲΜͳ΋ͷʁ ࠓ೔ͷΠϕϯτͰଞͷਓ͕঺հͯ͘͠Ε͍ͯΔͱ৴ͯ͡Կ΋ॻ͔ͳ͍

Slide 6

Slide 6 text

@rwle1212 6 EKSͬͯԿʁ ʢ௒֓ཁʣ • KubernetsͷΫϥελʔΛϚωʔδυͯ͘͠ΕΔ΍ͭ • ਖ਼໊ࣜশ͸Amazon Elastic Kubernetes Servic e • Kubernetesͱ͸ • એݴతͳߏ੒؅ཧͱࣗಈԽΛଅਐ͠ɺίϯςφԽ͞Εͨϫʔ Ϋϩʔυ΍αʔϏεΛ؅ཧ͢ΔͨΊͷɺϙʔλϒϧͰ֦ுੑ ͷ͋ΔΦʔϓϯιʔεͷϓϥοτϑΥʔϜ • ίϯςφ؅ཧͷσϑΝΫτελϯμʔυ

Slide 7

Slide 7 text

7 EKSΑΓApp Runner͕༏Ε͍ͯΔͱ͜Ζ <

Slide 8

Slide 8 text

@rwle1212 8 ϏϧυɾσϓϩΠͷࡉ͔͍͜ͱΛߟ͑Δඞཁͳ͍ ʢ΋ͪΖΜ৭ʑ͋Δ͚Ͳ΋ʣ • EKSͷ৔߹͸ • ίϯςφͷϏϧυɺίϯςφΠϝʔδͷϦϙδτϦɺΠϝʔδͷ σϓϩΠํ๏ͳͲߟ͑Δඞཁ͋Δ • ߏங͠·͑͹ָ͚ͩͲɺ࢖͍ॳΊͨ࣌ʹݕ౼ɺߏஙͷඞཁ͋Γ • CircleCI? GitHub Actions? GitOps?

Slide 9

Slide 9 text

@rwle1212 9 ΫϥελʔͷΞοϓάϨʔυෆཁ • EKSͷ৔߹͸ • 3ϲ݄αΠΫϧҐͰΫϥελʔͷΞοϓάϨʔυ͕ඞཁ • OSSͷ֦ுػೳͨ͘͞Μ࢖͏ͱͳ͓େมʢͳͷͰγϯϓϧʹ࢖ ͍·͠ΐ͏ʣ • Istio? Calico? CRD?

Slide 10

Slide 10 text

@rwle1212 10 ϊʔυͷ؅ཧ͕ෆཁ
 ʢಛʹηΩϡϦςΟ໘ָ͕ʣ • App Runnerͷ৔߹͸ • OSϨϕϧͷηΩϡϦςΟ΍ύον౳ͷ؅ཧ͕ෆཁ • ର֎తͳνΣοΫγʔτ΍؂ࠪͱ͔௨࣌͢ʹʮ΢ Πϧεରࡦιϑτ͸ʁʯʮIDSͱ͔ೖΕͯ·͢ ͔ʁʯͱ͔ʮʢOSϨϕϧ͸ʣશ෦AWS͞Μ͕΍ͬ ͯ·͢ʂ஍ٿن໛ͰʂʯͰOK :shirankedo : • AWS Systems Managerͷػೳ܈ݟͨ࣌ʹ಄͕௧͘ͳͬͨͷͰɺͦΕΒΛ֮͑ͳ͘ ͯྑ͍ͳΜͯʂ

Slide 11

Slide 11 text

@rwle1212 11 https://dev.classmethod.jp/articles/all-ssm-capabilities-2021/

Slide 12

Slide 12 text

12 ϊʔυ͕ϑϧϚωʔδυͳͷྑ͍ΑͶ

Slide 13

Slide 13 text

13 App RunnerΑΓEKS͕༏Ε͍ͯΔͱ͜Ζ <

Slide 14

Slide 14 text

@rwle1212 14 ৭ʑ͋Δ͚Ͳग़ͨ͹͔ͬͳͷͰ ൺֱ͢Δͷ͸Մѩ૝ • VPCೖΕͳ͍ɻRDSͱͲ͏ܨ͛Δʁ • ϥϯλΠϜগͳ͍ʢECRͷํ࢖͑͹ԿͰ΋Ͱ͖Δ͚ͲɺͦΕͩͱϏ ϧυָʹͳΒͳ͍ʣ • GPUͱ͔࢖͑ͳ͍ɻCPU/MEM͕ݶք͋Δ • ΧφϦΞϦϦʔεͰ͖ͳ͍? ΈΜͳ͕ͨ͘͞Μ࢖ͬͯϑΟʔυόοΫ͢Ε͹վળ͞ΕΔ

Slide 15

Slide 15 text

15 Ͱ΋͞ɺଞʹ΋ίϯςφαʔϏε ͍ͬͺ͍͋ΔΑͶʁ

Slide 16

Slide 16 text

16 ͸͍ɻ͍ͬͺ͍͋Γ·͢ɻ

Slide 17

Slide 17 text

@rwle1212 17 AWSͷίϯςφαʔϏε • ECSܥ: ECS, Fargate, ECS Anywher e • EKSܥ: EKS, Fargate, EKS Anywhere (coming 2021 ) • Lightsai l • Elastic Beanstalk

Slide 18

Slide 18 text

18 ԡ͓͑ͯ͘͞ͷ͸ҎԼ3఺ EKS / EC S Fargat e App Runnner

Slide 19

Slide 19 text

@rwle1212 19 EKS, ECS / Fargate / App Runner

Slide 20

Slide 20 text

@rwle1212 20 Ͳ͏͍͏࣌ʹͲΕΛબ୒͢Δͷ͔ • ·ָͣͳ΋ͷ͔Βཁ݅Λຬ͔ͨ͢ߟ͑Δ • ୈҰީิ: App Runne r • ୈೋީิ: Fargate ( ECS or EKS ) • ୈࡾީิ: ECS or EKS

Slide 21

Slide 21 text

@rwle1212 21 App RunnerΛબ୒͢Δ࣌ • Lambda͕ཁ݅ʹ߹Θͳ͍ • ͨͩͷγϯϓϧͳWebΞϓϦέʔγϣϯ • DB͸DynamoD B • ݴޠ͸Pytho n • GolangΛσϓϩΠ͍ͨ͠ʢECRϞʔυ࢖͏ʣ

Slide 22

Slide 22 text

@rwle1212 22 FargateΛબ୒͢Δ࣌ • DB͸RDBͰRDS࢖͍͍ͨ • EFSͱ͔ͷϑΝΠϧγεςϜϚ΢ϯτ͍ͨ͠ • ڧΊͷCPU/MEM࢖͍͍ͨ • ߟ͑ͯΈ͚ͨͲҙ֎ͱগͳ͔ͬͨ

Slide 23

Slide 23 text

@rwle1212 23 EKS / ECS Λબ୒͢Δ࣌ • ෳ਺ͷΞϓϦέʔγϣϯΛҰݩͰ؅ཧ͍ͨ͠ • Service Discovery, Daemonset, etc. . • ϊʔυʢΠϯελϯελΠϓʣΛ੍ݶͳ͘࢖͍͍ͨ • ϋΠύϑΥʔϚϯεΠϯελϯε • ಛघΠϯελϯεʢGPU, ARM, AMD, Mac, etc.. ʣ • KubernetesΤίγεςϜͷOSSΛϑϧ׆༻͍ͨ͠ • ࠓճ͸ App Runner vs Any Container Service ͳͷͰफڭઓ૪ʢECS vs EKSʣͷ࿩͸ׂѪ͠·͢

Slide 24

Slide 24 text

@rwle1212 24 Ͳ͏͍͏࣌ʹͲΕΛબ୒͢Δͷ͔
 ʢ࠶ܝࡌʣ • ·ָͣͳ΋ͷ͔Βཁ݅Λຬ͔ͨ͢ߟ͑Δ • ୈҰީิ: App Runne r • ୈೋީิ: Fargate ( ECS or EKS ) • ୈࡾީิ: ECS or EKS

Slide 25

Slide 25 text

25 ଞΫϥ΢υ΋ίϯςφαʔϏε͋ΔΑͶʁ
 ʢGCP͚ͩ঺հʣ

Slide 26

Slide 26 text

@rwle1212 26 GK E GKE Autopilo t Cloud Run 26 Google Cloud EKS૬౰ɻEKSΑΓָɻEKSΑΓࣗ༝౓௿͍ɻ ָΛऔΔ͔ɺࣗ༝౓ΛऔΔ͔޷Έɻݸਓతʹ͸EKSͷํ͕޷͖ʹ࡞ΕΔ͔Β޷͖ Fargate EKSʹ͍ۙɻΫϥελʔ΋ϊʔυͷ؅ཧ΋ෆཁɻ Fargate EKSͱͷҧ͍͸ɺ΄ͱΜͲૉͷঢ়ଶͰ࢖͑ΔɻFargate EKS͸৭ʑ੍ݶ͋ Δɻݸਓతʹ͸Ϋϥελ΋ϊʔυ΋؅ཧͨ͘͠ͳ͍͚Ͳૉͷࣗ༝౓͕ཉ͍͠ͷͰɺ KubernetesΫϥελͱͯ͠͸ܾఆ൛ɻ Fargate / App Runnerʹ͍͚ۙͲɺৗ࣌ىಈܕͰ͸ͳ͘αʔόϨεతͳΠϕϯτ υϦϒϯܕɻ ΠϕϯτυϦϒϯʢFaaSʣͷίετମܥ͕ັྗͰίϯςφͷࣗ༝౓Λ݉Ͷඋ͑ͨ

Slide 27

Slide 27 text

@rwle1212 27 ֤ίϯςφαʔϏεͷҐஔ෇͚ γϯϓϧ ֦ுੑ௿͍ ෳࡶ ֦ுੑߴ͍ &,4 (,& &$4 'BSHBUF (,&"VUPQJMPU "QQ3VOOFS $MPVE3VO

Slide 28

Slide 28 text

@rwle1212 28 ֤ίϯςφαʔϏεͷҐஔ෇͚ γϯϓϧ ֦ுੑ௿͍ ෳࡶ ֦ுੑߴ͍ &,4 (,& &$4 'BSHBUF (,&"VUPQJMPU "QQ3VOOFS $MPVE3VO ΍͸ΓKubernetesܥ͸OSS౳ଟ͍ͷͰ৭ʑ֦ுͰ͖Δ

Slide 29

Slide 29 text

@rwle1212 29 ֤ίϯςφαʔϏεͷҐஔ෇͚ γϯϓϧ ֦ுੑ௿͍ ෳࡶ ֦ுੑߴ͍ &,4 (,& &$4 'BSHBUF (,&"VUPQJMPU "QQ3VOOFS $MPVE3VO ϊʔυ؅ཧෆཁͳͷ͸

Slide 30

Slide 30 text

@rwle1212 30 ֤ίϯςφαʔϏεͷҐஔ෇͚ γϯϓϧ ֦ுੑ௿͍ ෳࡶ ֦ுੑߴ͍ &,4 (,& &$4 'BSHBUF (,&"VUPQJMPU "QQ3VOOFS $MPVE3VO Ͱ͖Δ͜ͱ੍͕ݶ͞Ε͍ͯΔ෼

Slide 31

Slide 31 text

31 ๻͕ཉ͍͠΋ͷ

Slide 32

Slide 32 text

@rwle1212 32 ๻͕ཉ͍͠΋ͷ • ؆୯ͳ΋ͷΑΓɺγϯϓϧͳ΋ͷ͕ཉ͍͠ • ϥούʔαʔϏε΍݁ہ৭ʑͳαʔϏεΛ֮͑ͳ͍ͱ͍͚ͳ͍ ෳࡶͳϞϊ͸ආ͚͍ͨ • App Runnner Έ͍ͨʹ૯߹తʹɺ͋·Γҙࣝ͢Δ͜ͱͳ͘উखʹ΍ͬ ͯ͘ΕΔγϯϓϧͳ΋ͷ͕͍͍ • ʮυϦϧΛങ͍ʹདྷͨਓ͕ཉ͍͠ͷ͸υϦϧͰ͸ͳ݀͘Ͱ͋Δʯ

Slide 33

Slide 33 text

33 ͍͞͝ʹ

Slide 34

Slide 34 text

34

Slide 35

Slide 35 text

35 ͭ·Γ͜͏͍͏͜ͱͰ͢

Slide 36

Slide 36 text

36 AppӉ஦Runner

Slide 37

Slide 37 text

37 ͋Γ͕ͱ͏͍͟͝·ͨ͠