Slide 1

Slide 1 text

&$͔Β&$4΁ҠߦΛ ࢝Ί͓ͨ࿩ 5BLBZVLJ:PTIJPLB '"3&/%5FDIOPMPHJFTDP -UE+"846(4IJNBOF

Slide 2

Slide 2 text

ࣗݾ঺հ ໊લ
 ٢Ԭོߦ ॴଐ
 ϑΝʔΤϯυςΫϊϩδʔגࣜձࣾ
 +"846(4IJNBOF
 .BUTVFSC ۀ຿
 ݩϑϩϯτΤϯυΤϯδχΞ
 ݩΞϓϦέʔγϣϯΤϯδχΞ
 ݱΠϯϑϥΤϯδχΞ ޷͖ͳαʔϏε
 $MPVE

Slide 3

Slide 3 text

ΞδΣϯμ
 ʙɹ&$͔Β&$4΁ҠߦΛ࢝Ί͓ͨ࿩ɹʙ w ܦҢʢഎܠʣ w ݹ͍ߏ੒ w ৽͍͠ߏ੒ w 1PJOU w ՝୊ w ·ͱΊ

Slide 4

Slide 4 text

ܦҢʢഎܠʣ w ࣾ಺αʔϏεɺϗεςΟϯάαʔϏεͷΠϯϑϥΛࠓ෩ ͷΫϥ΢υʹ͍ͨ͠ w ৽͍͠αʔϏεͷج൫Λߟ͑Δ

Slide 5

Slide 5 text

ݹ͍ߏ੒

Slide 6

Slide 6 text

AWS Cloud Internet Amazon RDS Proxy Server (EC2) App Server (EC2) ϗεςΟϯάαʔϏε αʔϏεఏڙதͷγεςϜͳͷͰৄࡉ΅΍͔͠ؾຯʜ

Slide 7

Slide 7 text

VPC Internet EC2 Database Rails App ࣾ಺αʔϏε

Slide 8

Slide 8 text

৽͍͠ߏ੒

Slide 9

Slide 9 text

VPC Internet ALB Service Task ECS Task Definition Task container Cluster w &$
 ஋ஈ͍҆
 EPDLFSWPMVNFQMVHJO࢖͑Δ w 'BSHBUF
 ϑϧϚωʔδυ
 ϑΝΠϧӬଓԽͰ͖ͳ͍
 &$ʹ͘Β΂஋ஈߴΊ

Slide 10

Slide 10 text

VPC Internet RDS ALB Service Task Task ECS ( Fargate ) CodePipeline Registry Task Definition ϗεςΟϯάαʔϏε 4BB4 Systems Manager CloudFormation ˞༁͋ͬͯݱࡏݕূத S3 ΞϓϦέʔγϣϯʹมߋΛՃ͑ͨ 4ରԠͷQMVHJO࢖༻ "QBSUNFOUʢϚϧνςφϯτʣ࢖༻ ஫ʣϦʔδϣϯ "; 4( $MPVE8BUDI -PHͳͲলུ͍ͯ͠·͢ɻ

Slide 11

Slide 11 text

VPC Internet RDS ALB Service Task Task ECS ( EC2 ) CodePipeline Registry Task Definition ࣾ಺αʔϏε EFS Systems Manager CloudFormation Ҡߦத ΞϓϦέʔγϣϯ 3BJMT"QQMJDBUJPO +FOLJOT (JU-BCͳͲ ஫ʣϦʔδϣϯ "; 4( $MPVE8BUDI -PHͳͲলུ͍ͯ͠·͢ɻ

Slide 12

Slide 12 text

1PJOU &$4Λબ୒ʢ%PDLFSͰຊ൪؀ڥʣ $MPVE'PSNBUJPOͰ؀ڥߏங 4ZTUFNT.BOBHFSར༻ w &$41JQFMJOFͷ૊Έ߹ΘͤͰ։ൃ΋αʔό؅ཧ΋ίετܰݮʢ৺ཧతɾ࣌ؒతʣ w ຊ൪ɺεςʔδϯάɺςετ؀ڥͷߏங͕؆୯ʹͳͬͨ w 4ZTUFNT.BOBHFSແྉͰศརʂ 3VCZ 3BJMT ίϯςφ 1JQFMJOFͷಋೖ w 1JQFMJOFศརʂ"84Ͱ׬݁Ͱ͖Δʂʂ

Slide 13

Slide 13 text

&$4Λબ୒
 ʢίϯςφͰຊ൪؀ڥʣ

Slide 14

Slide 14 text

Α͔ͬͨ͜ͱ
 ʢ&$4ίϯςφʣ σϓϩΠ࣌ͷ৺ཧతෛ୲ͷܰݮ w #MVF(SFFOEFQMPZNFOU w ͙͢ʹϩʔϧόοΫͰ͖Δ҆৺ײ w ຊ൪؀ڥͱಉ͡؀ڥͰ։ൃ͕Ͱ͖Δ

Slide 15

Slide 15 text

Α͔ͬͨ͜ͱ
 ʢ&$4ίϯςφʣ αʔό؅ཧͷෛ୲ܰݮ w ৑௕ԽɺߴՄ༻ੑ͕؆୯ w ".*ͷ؅ཧ΋ಛʹෆཁʢ&$ͷ"VUP4DBMFͷΑ͏ͳ w ӡ༻ίετΛܰݮ͍ͨ͠ʢ&$ɾσϓϩΠͷ؅ཧʣ w ϛυϧ΢ΣΞͷ؅ཧ͕༰қʹͰ͖Δ

Slide 16

Slide 16 text

Α͔ͬͨ͜ͱ
 ʢ&$4ίϯςφʣ %PDLFSWPMVNFQMVHJOʹରԠ ʢετϨʔδͷӬଓԽʣ

Slide 17

Slide 17 text

ͦͷଞͷબ୒ʹ͍ͭͯ &,4Λར༻͠ͳ͔ͬͨཧ༝
 ౦ژϦʔδϣϯɺٕज़໘ʢֶशίετʣɺֹۚ

Slide 18

Slide 18 text

1JQFMJOFͷಋೖ

Slide 19

Slide 19 text

Α͔ͬͨ͜ͱ
 ʢσϓϩΠɾςετͷࣗಈԽʣ σϓϩΠͷͨΊʹɺ44)ͰαʔόʹೖΒͳͯ͘ྑ͘ͳͬ ͨɻʢ͞ΑͳΒΦϨΦϨσϓϩΠʣ ςετ࣮ߦ๨Ε๷ࢭ %PDLFS*NBHFΛ࢖͏ͱ؆୯ͩͬͨ

Slide 20

Slide 20 text

CodeCommit User Code Pipeline ECR CodeBuild #VJME %FQMPZ TaskDefinition Service Cluster EPDLFSDPNQPTF HJUQVTI QSF@CVJMEˠCVJME ˠQPTU@CVJME CVJMETQFDZNM ࣮ߦ 4PVSDF Jenkins
 Test ௨஌

Slide 21

Slide 21 text

$MPVE'PSNBUJPOͰ
 ؀ڥߏங

Slide 22

Slide 22 text

"84ϦιʔεΛࣗಈͰߏஙͰ͖ΔαʔϏε ςϯϓϨʔτ ઃఆϑΝΠϧ ελοΫ ςϯϓϨʔτΛݩʹ࡞੒͞ΕΔϦιʔεΛ؅ཧ͢Δ୯Ґ $MPVE'PSNBUJPO

Slide 23

Slide 23 text

໨తɾཧ༝ w खॱॻͱ͔ॻ͖ͨ͘ͳ͍ w BXTDMJ BOTJCMF૊Έ߹ΘͤͪΐͬͱπϥΠ w ॳظߏங͸͜ΕͰશͯͰ͖Δʢ%PDLFSͷԸܙʣ w ؀ڥͷ࠶ݱੑͷ֬อʢผΞΧ΢ϯτͰ΋ʣ w :".-Ͱॻ͚ΔΑ͏ʹͳͬͯͨ

Slide 24

Slide 24 text

஫ҙ఺ wελοΫͷωετʹ͍ͭͯ wςϯϓϨʔτͷ࠶ར༻ w$'OҎ֎ʢ(6* $-*ͳͲखಈʣͰߋ৽͢ΔͱյΕΔ͔΋ wֶशίετߴΊ

Slide 25

Slide 25 text

CloudFormation 71$ &$4 4FSWJDF ʜ 3%4 71$ 4VCOFU 4( FUDʜ "-# SVMF UBSHFU MJTUFOFS $MVTUFS "VUP4DBMF &'4 *". 3PMF 4( FUDʜ %/4 5BTL%FpOJUJPO 4FSWJDF "VUP4DBMF 5BSHFU 3VMF 3PMF *". 3%4 4VCOFU 4( ओʹ௥Ճɾมߋ͢ΔελοΫ

Slide 26

Slide 26 text

4ZTUFNT.BOBHFSͷ ར༻

Slide 27

Slide 27 text

໨తɾཧ༝ w ύεϫʔυ౳ͷ؅ཧ w 44)ϩάΠϯ

Slide 28

Slide 28 text

3VCZ 3BJMT ίϯςφ w ίϯςφͷىಈ͸ૣ͍͚Ͳɺ3BJMTͷىಈ͸஗͍ w ىಈ࣌ʢFOUSZQPJOUTIʣͷॲཧΛͳΔ΂ܰ͘͘ w CVOEMFJOTUBMM NJHSBUJPOͷλΠϛϯά w ϝϞϦʔͷফඅྔ w 3BJMTϚϧνςφϯτԽ

Slide 29

Slide 29 text

՝୊ 3BJMTΞϓϦͷσϓϩΠ ࣾ಺Ͱͷ%PDLFSͷ෍ڭ׆ಈ ؀ڥม਺૿΍͗͢͠ʹ஫ҙ ϩΪϯά ηΩϡϦςΟʔ

Slide 30

Slide 30 text

·ͱΊ

Slide 31

Slide 31 text

1PJOU &$4Λબ୒ʢ%PDLFSͰຊ൪؀ڥʣ $MPVE'PSNBUJPOͰ؀ڥߏங 4ZTUFNT.BOBHFSͰӡ༻؅ཧ w &$41JQFMJOFͷ૊Έ߹ΘͤͰ։ൃ΋αʔό؅ཧ΋ίετܰݮʢ৺ཧతɾ࣌ؒతʣ w ຊ൪ɺεςʔδϯάɺςετ؀ڥͷߏங͕؆୯ʹͳͬͨ w 4ZTUFNT.BOBHFSແྉͰศརʂ 3VCZ 3BJMT ίϯςφ 1JQFMJOFͷಋೖ w 1JQFMJOFศརʂ"84Ͱ׬݁Ͱ͖Δʂʂ %PDLFSʢίϯςφʣͷԸܙ w ʜͦ΋ͦ΋ίϯςφʹ޲͍ͯͳ͍ΞϓϦʢγεςϜʣ΋͋Δɻ

Slide 32

Slide 32 text

͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ