ãã®èšäºã¯æåã®æŠèŠã§ãã
ãã®èšäºã®ç®çã¯ãDevOpsã«é¢ããæè²ããã°ã©ã ã§ã¯ãªãã å ã®ãœãŒã¹ããæ¢ã«å ¥æå¯èœãªè³æã®äºçŽ°ãªè€è£œã§ããããŸããã ç®æšã¯ãDevOpsã®å®è£ ãäžè¬çãªåœ¢åŒã§Amazon AWSãµãŒãã¹ã«æ瀺ããããšã§ããã誰ã§ãèªç±ã«é©åãªãªãã·ã§ã³ãéžæã§ããŸãã 察象èªè ã¯å°ãªããšãAmazon AWSã®ååšã«ç²ŸéããŠãããä»äºã§ãã®æ©èœã䜿çšããŠããã»ã¹ãéšåçãŸãã¯å®å šã«è»¢éããäºå®ã§ãã æäŸãããAmazon AWSãµãŒãã¹ã¯é«éã§å¢å ãããã®æ°ã¯æ¢ã«100ã®ã©ãŠã³ãããŒã¯ãè¶ ããŠããŸãããããã£ãŠãAWSã®åªããçµéšããã£ãŠããæ°æ©èœãèŠã€ããããšã圹ç«ã€å ŽåããããŸãã圌ãã®ä»äºã«æåããã
ãã¥ãŒãã§ã¯ãªãïŒã®ã¿ïŒ

誰ããç¹ã«Amazon AWSã®ååãªçµéšããªã人ã®ããã®ããã€ãã®äžè¬çã ãéèŠãªèšèã ããŽã«æããããã¥ãŒãã¯ãè«ççã«æ£ããäž»ãªã¢ã€ãã¢ãäŒããŸããAmazonAWSã¯ããµãŒãã¹ã®ã»ãããæäŸãã誰ã§ãå¿ èŠãªãã®ãçµã¿ç«ãŠãããšãã§ããã³ã³ã¹ãã©ã¯ã¿ã§ãã ãã ããç®çã®ãã¥ãŒãïŒãµãŒãã¹ïŒãããŒãºãæºãããªãå Žåããã®ããã¥ãŒããã¯äžå¿ãã®ç¬éã ããåçºããå¯èœæ§ããããŸãã ãã®å Žåãç°ãªãã¿ã¹ã¯ã䜿çšããŠåãã¿ã¹ã¯ã解決ã§ããå€ãã®ãµãŒãã¹ãããŸããŸãªæ¹æ³ã§çžäºã«è€è£œã§ããããããªã¯ãšã¹ãã«äžèŽããªãAmazon AWSãµãŒãã¹ã¯ãã®äœ¿çšããã£ã³ã»ã«ãããåã«æ€çŽ¢ããçç±ãäžããããšãèŠããŠããå¿ èŠããããŸãé©åã§ãã çµå±ã®ãšãããAmazon AWSãµãŒãã¹ã¯ãäž»ã«åœŒãèªèº«ã®ããŒãºã®ããã«éçšã®çµæãšããŠç»å ŽããŸããã Amazon AWSã¯æ°åã®å°ããªããŒã ïŒ 2ã€ã®ãã¶ããŒã ãšåŒã°ããŸãïŒãæ¡çšããŠããããããããç¬èªã®äœæ¥æ¹æ³ïŒèšèªãOSãæ§é ããããã³ã«ãªã©ïŒãèªç±ã«éžæã§ãããããæåã¯Amazon AWSã§å©çšå¯èœãªãµãŒãã¹ãã®ãããªåç©åã®å€æ§æ§ããµããŒãããå¿ èŠãããããããã¯ãã§ã«Amazon AWSå ã§åäœããŠããŸãã
ããã¯ã䜿çšããå¿ èŠããããã®ãäŒããã ãã§ãªããäžæ¹ã§ãéåžžã®æ¢åã®ããã»ã¹ããã³ãããã°ãããããã»ã¹ãšçµ±åããæ©èœãæäŸããããã«èšèšãããAmazon AWS CodeãµãŒãã¹ã«ãšã£ãŠç¹ã«éèŠã§ãäžæ¹ãç¬èªã®å®è£ ãæäŸããããŒã«ã¯ãéåžžãAmazon AWSæ©èœã掻çšãããšãã«æãå¹æçã§ãã
DevOps Amazon AWS Designer
åãã¥ãŒããåå¥ã«ååã«ç解ããŠããŠãããããããã©ã®å®¶ã建ãŠãããšãã§ãããã¯åžžã«æ確ã§ã¯ãããŸããã ãããã£ãŠããããã®ãµãŒãã¹ã1ã€ã®å³ã«ãŸãšããŠããã®ãããªã³ã³ã¹ãã©ã¯ã¿ãŒããäœãã¢ã»ã³ãã«ã§ãããã«ã€ããŠã®äžè¬çãªã¢ã€ãã¢ãåŸãããã«ããŸãã Code- servicesãéžæããããããéåžžã®ããã»ã¹ãšé¢é£ä»ãããšã次ã®ãããªèšèšã«ãªããŸãã

åCode-ãµãŒãã¹ã«ã€ããŠç°¡åã«èª¬æããŸãïŒè©³çŽ°ã«ã€ããŠã¯ãåŸã§åãµãŒãã¹ã«ã€ããŠåå¥ã«èª¬æããŸãïŒã
AWS CodeCommit
ããã¯ã©ã®ããã«èŠããŸãã

æãæçœã§ç解ãããããµãŒãã¹ã¯ãGITã®Amazonå®è£ ã§ãããããã¯å®å šã«ç¹°ãè¿ãããŸãã äœæ¥ãšå¯Ÿè©±ïŒããŒã ïŒã®ç¹ã§GITãšéãã¯ãããŸãããå®éã«ã¯ã IAMãµãŒãã¹ãä»ããã¢ã¯ã»ã¹ã®æŽçãªã©ãAWSãµãŒãã¹æ§é ãžã®çŽæ¥çµ±åã«å¿ èŠã§ãã ã³ãŒãèªäœã¯S3ã«ä¿åãããŸãã
AWS CodeBuild
ããã¯ã©ã®ããã«èŠããŸãã

ã¢ã»ã³ããªãµãŒããŒ-Javaãªã©ãå±éåã«ã¢ã»ã³ããªãå¿ èŠãšãããããžã§ã¯ãçšã ããã©ã«ãã§ã¯ãUbuntuã«åºã¥ããŠã³ã³ãããèµ·åããŸãããç¬èªã®ã³ã³ãããæå®ã§ããŸãã
Dockerã€ã¡ãŒãžãæå®ãã

ãã©ã°ã€ã³ãä»ããJenkinsãšã®çµ±åããµããŒãããŸã ã
çµã¿ç«ãŠã«å ããŠããã¹ããåæ§ã«å®è¡ã§ããŸãã ãããŠãããã¯åœŒã®äž»ãªç®çã§ã¯ãããŸãããã圌ã¯ãã®ããã«éžã¶ããšãã§ããŸãã
ãã¹ããããã€ããŒãšããŠã®AWS CodeBuild

ãããã£ãŠãAWS CodeBuild㯠ããã¹ãã段éã«ãååšããŸãã
AWS CodeDeploy
äºåã«ã€ã³ã¹ããŒã«ããããšãŒãžã§ã³ããšæè»ãªèšå®ã䜿çšããŠãããããç°å¢ã§æ©èœããã³ãŒããå±éããããã®ãµãŒãã¹ã ç¹å¥ãªéãã¯ããšãŒãžã§ã³ããAmazon AWSä»®æ³ãã·ã³ã ãã§ãªãããå€éšãã§ãåäœããããšã§ããããã«ããã次ã®ãããªæãå€æ§ãªãœãããŠã§ã¢ãäžå çã«ãããã€ã§ããŸãã ãããŠããŒã«ã«ã
AWS CodePipeline
ããã¯ã©ã®ããã«èŠããŸãã

ã¡ã€ã³å³ãããããããã«ãåã®3ã€ã®ãµãŒãã¹ãšããåãããç®çã®é åºã§ãµãŒãã¹ãéå§ããå®éãDevOpsããã»ã¹ã®èªååãæäŸããŸãã
次ã®ã¹ããããéå§ããåã«ãããã»ã¹ãã©ã³ãã®æŽçããµãŒãããŒãã£ãµãŒãã¹ã®éå§ïŒããšãã°ããã¹ãçšïŒã䞊åãã©ã³ãã®äœæã確èªã®èŠæ±ïŒ æ¿èªã¢ã¯ã·ã§ã³ ïŒãè¡ãããšãã§ããŸãã å šäœãšããŠãããã¯Amazon AWSã§DevOpsãæŽçããããã®äžå¿çãªããŒã«ã§ãã
AWS CodeStar
ããã¯ã©ã®ããã«èŠããŸãã

æ¬è³ªçã«CodePipelineãè€è£œããŸãããèµ·åãšèšå®ãç°¡åã«ããããã«ç ãæŸãŸãããŠãããå¹ åºãæ¢è£œã®ãã³ãã¬ãŒãïŒ å€æ°ã®ã¢ããªã±ãŒã·ã§ã³èšèªçšïŒãšã¢ãã¿ãªã³ã°ãµãŒãã¹ïŒ CloudWatch ïŒãšçµ±åãããã©ã°ã€ã³ãšçµ±åã®ããã®ãã©ã°ã€ã³ãåããæ¬åœã«äŸ¿å©ãªããã·ã¥ããŒãã䜿çšããŠè§£æ±ºãããŸããžã©ãšã
AWS CodeStarãã³ãã¬ãŒã

Amazon AWS IaaCãµãŒãã¹
Infrastructure as Codeã®æŠå¿µãå®è£ ããAmazon AWSãµãŒãã¹ã¯æ¬¡ã®ãšããã§ãã
- 匟æ§è±è
- Opsworks
- é²åœ¢æ
å€ãã®å Žåãã©ã¡ããéžæããã®ãã3ã€ã®ãµãŒãã¹ããããã€æ®µéã®ã¡ã€ã³ãã€ã¢ã°ã©ã ã«ããåããã®ïŒã€ã³ãã©ã¹ãã©ã¯ãã£ãšã¢ããªã±ãŒã·ã§ã³ã®ãããã€ïŒåãã«èšèšãããŠããçç±ã«ã€ããŠçåãçããŸãã èŠããã«ããããã®äœ¿çšã¯æ¬¡ã®ããã«è¡šãããšãã§ããŸãã

ã€ãŸããäœããè¿ éã«è¡ãããã«ïŒãããŠããããæªãããšãæå³ããããã§ã¯ãããŸããïŒãããã¯æšæºæ©èœïŒåçŽãªãµã€ããªã©ïŒã§ã-Elastic Beanstalkã䜿çšãããšäŸ¿å©ã§ãã ãããå€ãã®ãã¹ããããèŠçŽ ãšãããã¯ãŒã¯èšå®ã®æ·±å»ãªèŠä»¶ã䌎ãè€éãªãããžã§ã¯ãã§ããå Žåã CloudFormationã䜿çšããã«è¡ãããšã¯ã§ããŸããã äžéã®äœããšããŠ-ChefããŒã¹ã®OpsWorksã®äœ¿çšã®ããã§ã ã
ãã ããå®éã«ã¯ïŒãããŠéåžžã¯è€éãªãããžã§ã¯ãã§äœ¿çšãããŸãïŒ3ã€ãã¹ãŠã®çµã¿åããïŒ CloudFormationã¯ã¡ã€ã³ã€ã³ãã©ã¹ãã©ã¯ãã£ïŒ VPC ããµããããããªããžããªãã¢ã¯ã»ã¹ã«å¿ èŠãªIAMã®ããŒã«ãäœæãããªã©ïŒãäžãã OpsWorksã¹ã¿ãã¯ãèµ·åããŸããå®è¡äžã®virtualoksã®å éšã³ã³ããŒãã³ããæ¢ã«æè»ã«æ§æã§ããŸãã ãŸããéçºããã»ã¹ã®å©äŸ¿æ§ã®ããã«ã CloudFormationã¯Elastic Beanstalkã³ã³ããŒãã³ãã®ã¹ã¿ãã¯ãäžããããšãã§ããããã .ebextensionsèªäœã䜿çšããéçºè ã¯ãåçŽãªæ§æãã¡ã€ã«ãå€æŽããã ãã§ãå®è¡äžã®ã¢ããªã±ãŒã·ã§ã³ã®ãã©ã¡ãŒã¿ãŒïŒäœ¿çšããä»®æ³ãã·ã³ã®æ°ãšçš®é¡ã ããŒããã©ã³ãµãŒã®äœ¿çšãªã©ïŒãå€æŽã§ããŸãã³ãããåŸã«èªåçã«å€æŽãé©çšããããšãïŒã¢ããªã±ãŒã·ã§ã³ã€ã³ãã©ã¹ãã©ã¯ãã£ãå«ãïŒã®ã³ãŒããå«ããã©ã«ããŒã
AWSã©ã ã

ãããšã¯å¥ã«ã ServerLessã¢ãŒããã¯ãã£ã®æŠå¿µãå®è£ ããLambdaãµãŒãã¹ã«ã€ããŠèšåãã䟡å€ããããŸã ãããã¯ãäžæ¹ã§ã¯Elastic Beanstalkã«äŒŒãŠãããAWS CodeãµãŒãã¹ã䜿çšããŠDevOpsããã»ã¹ã«å ¥åã§ããŸãã äžæ¹ãAWS Lambdaã¯ãAmazon AWSã®ãããããã®ã®ããã®åªããïŒå¿ èªã®ïŒãªãŒãã¡ãŒã·ã§ã³ããŒã«ã§ãã çžäºäœçšã䌎ããã¹ãŠã®ããã»ã¹ã¯ã Lambdaã䜿çšããŠæ¥ç¶ã§ããŸãã ããšãã°ããµãŒãã¹ïŒ ä»®æ³ãã·ã³ ãã¯ã©ã¹ã¿ãŒïŒãåèµ·åããã¡ãŒã«ã§ç®¡çè ã«ãšã©ãŒã¡ãã»ãŒãžãéä¿¡ããããšã«ããã CloudWatchã®ã¢ãã¿ãªã³ã°çµæãåŠçããŠå¿çã§ããŸãã ãŸããDevOpsããã»ã¹ã®æ¥ç¶ã«ã䜿çšãããŸããããšãã°ããã«ãã¡ãœãããšãã¹ããå®è¡ããåŸãäžè¬çãªæ¹æ³ã§Deployã«è»¢éããŸãã äžè¬ã«ãAWS Lambdaã䜿çšãããšãæãè€éãªããžãã¯ãå®è£ ã§ããŸãããããã¯çŸåšã®Amazon AWSãµãŒãã¹ã®ã»ããã§ã¯ãŸã å©çšã§ããŸããã
ãããã®ãµãŒãã¹ã«å ããŠãä»ã®ãµãŒãã¹ãDevOpsããã»ã¹ã«é¢äžããŠããå ŽåããããŸãã ãããã£ãŠã䜿çšãããµãŒãã¹ã®äžè¬çãªã¹ããŒã ãæ瀺ããããšãããšãç¶æ³ãéåžžã«ãããã«ãããªãå¯èœæ§ããããŸãïŒä»¥äžã¯åãªãæ¡ä»¶ä»ãã®äŸã§ãïŒã

ãã¹ãŠãèŠèŠçã«éä¿¡ã§ããããã§ã¯ãããŸããããªããªã AWS IAMã¢ã¯ã»ã¹ã³ã³ãããŒã«ãµãŒãã¹ãªã©ã®ã°ããŒãã«ãšã³ãã£ãã£ã浞éããã»ãŒãã¹ãŠã®ã³ã³ããŒãã³ãã«ååšããŸãã EC2ãµãŒãã¹ã®èšç®èœåã«åºã¥ããŠãä»ã®ãã¹ãŠã®ãµãŒãã¹ãæ©èœããŸãã S3ã¹ãã¬ãŒãžãµãŒãã¹ã¯ãä»ã®å€ãã®ãµãŒãã¹éã§ããŒã¿ã転éããããã«äœ¿çšãããŸãã ãŸããAWS Service Catalogãªã©ã®é«ã¬ãã«ã®ãµãŒãã¹ã¯ãããŸããŸãªAmazon AWSã¢ã«ãŠã³ãéã®çžäºäœçšãªã©ãæäŸã§ããŸãã
ããã«ãåã ã®ãµãŒãã¹ã®ãã詳现ãªèæ ®äºé ãšããŠãåãããããç解ãã«ããããŒã«ã®ã»ããã«æ··ä¹±ããŠç解ã§ããªãã¹ããŒã ãåºçŸãã誰ã§ãå¿ èŠãªãã®ãéžæã§ããŸãã
DevOpsããã»ã¹ã«é¢äžã§ããAmazon AWSãµãŒãã¹ã®äžè¬çãªã¹ããŒã ã«åºã¥ãåèšã æã人æ°ã®ãããã³ãã«ã¯ã CodePipeline / CodeCommit + ElasticBenstalk / OpsWorks as Deployã®ãããªãã®ã§ãã ãããŠããããã«èŠãããããã«-CodeStarã¯è¯ãã§ãã 確ãã« ã AWS CodeStarã¯æ¯æãããŸãããããã§ã¯ãéžæã®äžè¬çãªèãæ¹ã瀺ãããã«ã³ã¹ããã¡ã¯ã¿ãŒãæå³çã«èæ ®ãããŸããã§ãããJenkinsã®ä»²éã®ãããªäººæ°ã®ããCI / CDãããžã§ã¯ãã®å¿ èŠãªãã©ã°ã€ã³ã䜿çšãããªã©ãåã³ã³ããŒãã³ããèªç±ã«äœ¿çšã§ããããã§ã
åç §ïŒ
- AWSã§DevOpsãã€ãã©ã€ã³ãé«éåïŒ ãã㪠ã ãã¬ãŒã³ããŒã·ã§ã³