ãSREã¯äºæ¥ã®æé·ãæ¯ããéµã«ãã©ã³ãµãŒãºã®å€è§åãåŸæŒãããæœçãŸãšã
ãã®Googleãæåã«æå±ãããWebãµã€ãã®å®å®æ§ãšä¿¡é Œæ§ãé«ããã€ã³ãã©æ§ç¯ã®æ°ææ³ãŒãŒããããªèª¬æã¯ãã¯ãäžèŠã«æããã»ã©ãæ¥æ¬ã®ãããçéã§ãåºãããèŠããŠããSREïŒSite Reliability EngineeringïŒã
ãã®2ã3幎ã®éã«ããã³ãã£ãŒããå€§äŒæ¥ãŸã§å¹ åºããããäŒæ¥ãå°ä»»ããŒã ãèšããããã«ãªããã€ã³ãã©ãšã³ãžãã¢ã¯ãµãŒãã¹ã®éçºã»çºå±ã«å¯ŸããŠããçŽæ¥çãªåœ±é¿ãæã€ããã«ãªã£ãã
ã¯ã©ãŠããœãŒã·ã³ã°å€§æã®ã©ã³ãµãŒãºã¯ãæé·æããSREã®æ¹æ³è«ãå°å ¥ããŠãããšããã
ãã®ç²æãã£ãŠãã2016幎ã«è¡ã£ãããžã¿ã«ããŒã±ãã£ã³ã°ãµãŒãã¹ãQuantãïŒâ»ïŒã®ãªãªãŒã¹ãç®åãã«ãCtoCã®ã¹ãã«ã·ã§ã¢ãµãŒãã¹ãpookãããšã³ãžãã¢åãåžžé§æ¡ä»¶ç޹ä»ãµãŒãã¹ãLancersTOPããªã©ç¶ã ãšæ°äºæ¥ãçã¿åºããŠããã売äžã2016幎ã¯21ååã察å幎æ¯ã§çŽ160ïŒ ãšé 調ã«äŒžã³ãŠããã
â»ãQuantããéå¶ããã©ã³ãµãŒãºã®100ïŒ åäŒç€Ÿã¯ãªã³ãæ ªåŒäŒç€Ÿã¯ããœãªã¥ãŒã·ã§ã³äºæ¥ãã©ã³ãµãŒãºã«ç§»ç®¡ããäžã§2018幎3æ30æ¥ã«ã°ãªãŒãžæ ªåŒè²æž¡ããŠããã
ä»å¹Ž2æ20æ¥ããã®éçšã§ãã£ãŠããããšãæ«é²ãããšã³ãžãã¢åãå匷äŒãäºæ¥ã®å€è§åãæ¯ããã©ã³ãµãŒãºçSREè¡ããTECH PLAYã§éå¬ããã©ã³ãµãŒãºã¯ãã©ããªå£ã«çªãåœãããã©ãä¹ãè¶ããŠããã®ãããã®æŠèŠã玹ä»ãããã
ããã4åã®ã¡ã³ããŒã§SREã宿œ
å匷äŒã®åé ããã©ã³ãµãŒãºã®ãããŸã§ãšããããããããŒãã«èªã£ãå·è¡åœ¹å¡CTOã®æšªäºè¡ããã«ãããšãå瀟ã®åŸæ¥å¡æ°ã¯çŽ160åïŒ2017幎4ææç¹ïŒã§ããã¡ãšã³ãžãã¢ã¯çŽ30åèŠæš¡ã«ãªã£ãŠããã
ãã®äžã§ãSREã«åãçµãã€ã³ãã©ãšã³ãžãã¢ã¯ã2018幎2ææç¹ã§ããã4åãå°æ°ç²Ÿéã®ããŒã ã§ãåè¿°ããæ°èŠãµãŒãã¹ãå±å°éªšã§ããã¯ã©ãŠããœãŒã·ã³ã°ãµãŒãã¹ã®ã©ã³ãµãŒãºããã®ä»äŒæ¥ãµã€ãã»åºå ±ããã°ãªã©ãæ¯ããŠããã
SREãå§ãããã£ããã¯ããã€ã³ãã©ããŒã ãã€ã³ãã©ããèŠãªããšããç¶æ³ã«ã¯ããããªãã£ãããããšæšªäºããã¯èšãã

Webãã¶ã€ããŒãšããŠãã£ãªã¢ãã¹ã¿ãŒãããåŸãSIerã§ã®å€§èŠæš¡ã·ã¹ãã éçºããã³ã³ãµã«ãã£ã³ã°äŒç€Ÿã§ã®æ°èŠWebãµãŒãã¹ã®äŒç»ã»éçºã»éçšã«æºãã£ãŠããæšªäºãã
ããã ãSREãšããåç§°ãæ¡çšãããããšãã£ãŠãã€ã³ãã©ãšã³ãžãã¢ã®åœ¹å²ãåçã«å€ãã£ããšããããã§ã¯ãããŸãããä»ãŸã§ããã£ãŠããããšã«ãååãå€ããŠå ãåœãŠçŽãããšã§ãäŒç€ŸãšããŠãSREã¯äºæ¥ã®æ ¹å¹¹ãæ¯ãããã®ããšè¡šæããã®ã§ããïŒæšªäºããïŒ
暪äºããã¯ã©ã³ãµãŒãºã«å ¥ç€Ÿããåãããã€ãã®äŒæ¥ã転è·ããäžã§ãã¶ã€ã³ããããã³ããšã³ãéçºãããã¯ãšã³ãéçºãšå¹ åºãæ¥åã«æºãã£ãŠããããããªèæ¯ããã£ãŠããCTOãšããŠãšã³ãžãã¢ããŒã ãéå¶ããéãã忥ã«ããäžäœæã®åªå€±ããªãã¹ãé¿ããããã«å¿æããŠãããšããã
ããããæšªäºããã®èãã¯ãå瀟ã®ã€ã³ãã©æ§ç¯ã»éçšæ¥åã«ãåæ ãããŠããã
æè¡çè² åµãæ±ããªããæ»ãã®ã€ã³ãã©æ§ç¯ã
SREããŒã ã®ç«ã¡äžãããæºãã£ãŠããã€ã³ãã©ãšã³ãžãã¢ã®éæŸ€è£æ¯ ããã¯ãããŒã ã®ããã·ã§ã³ã以äžã®ããã«è¿°ã¹ãã
ãæã ã®SREããŒã ã§ã¯ãäžè¬çã«SREãšããŠèªç¥ãããŠããæ¥å以å€ã«ãã©ã³ãµãŒãºç¬èªã®äŸ¡å€èгã«åºã¥ããæ¥åãããã€ãæ åœããŠããŸããã€ãŸãããµãŒãéçšãå®åæ¥åã®èªååããµãŒãã¹æ¹åã®ãããªä»äºã«å ããéçºç°å¢ã®æ¯æŽããµãŒããŒè²»çšã®åæžãªã©ãã¹ã¿ãŒãã¢ããã®æé·ã«å¿ èŠã ãšèããããæœçãæšªæçã«ãµããŒãããŠããã®ã§ããïŒé柀ããïŒ

2013幎ã«ã©ã³ãµãŒãºãžå
¥ç€Ÿããåœåã¯ãã€ã³ãã©ãšã³ãžãã¢ãèªå1人ã ãã ã£ããšèªãéæŸ€ãããJAWS UGã®å±±åœ¢æ¯éšã«æå±ããŠã³ãã¥ããã£æŽ»åãè¡ã£ãŠãã
ãã®åãçµã¿è©³çްãšãåããã»ã¹ã§è¡ã£ãŠããæœçã¯åœæ¥ã®çºè¡šè³æïŒä»¥äžã®Speaker DeckïŒã«è©³ããã
>> ã©ã³ãµãŒãºã§ç©ã¿éããSREçåãçµã¿ãšããããïŒSpeaker DeckïŒ
äž»ãªæ¹éãšããŠã
ã1ãã»ãã¥ãªãã£å¯Ÿçãå ŒããŠèšèªãããŒã«ã¯ãææ°ãµãŒãã¹ããææ°ããŒãžã§ã³ãã«è¿œåŸããïŒæ§ããŒãžã§ã³ãç¡çã«ã«ã¹ã¿ãã€ãºããªãïŒ
ã2ãå®åäœæ¥ãèªååããã ãã§ãªããä»ã®ããŒã ã«ãå§è²ãã§ããä»çµã¿ã«ããïŒã€ã³ãã©ããŒã ãä»ãããèªåã§å®çµã§ãããããªç°å¢æ§ç¯ãããïŒ
ã3ãã€ã³ãã©ããŒã ãéçºã®ããã«ããã¯ã«ããªã
ãªã©ãéèŠããŠãããšããã
ãããã¯ããµãŒãã¹éçºã®ã¹ããŒããæ ä¿ããããšãšãããŒã¿è§£æã®ãããªãããžãã¹ãµã€ãã§ãåžžã«å¿ èŠãšãããä»äºãããšã³ãžãã¢ä»¥å€ã®èª°ããè¡ããããã«ããã®ãçãã ã
äŸãã°ã1ãã®ãèšèªãããŒã«ã¯ææ°ããŒãžã§ã³ã«ããæçŽã«è²«ãããšã§ãæ¡å€§äžã®ãšã³ãžãã¢ããŒã ã«æ°å ¥ç€Ÿå¡ãå ¥ã£ãŠæ¥ãæãçç£æ§ãäžããã«ä»äºãããŠãããããšããã¡ãªãããçãŸããã
ããŸãããªãŒããŒäžåšã§çãæ®ã£ãŠããæ©èœã广ã®èãæ©èœã瀟å 調æŽããäžã§åé€ããããå€ããªã£ãã³ãŒããåé€ããã®ãæã ã®åœ¹å²ã§ããããã«ãã£ãŠçç£æ§ã®åäžããµãŒãè²»çšã®åæžã«ã€ãªãããŸããïŒé柀ããïŒ
ããããŠãæè¡çè² åµãæ±ããªããæ»ãã®ã€ã³ãã©æ§ç¯ããšè³éé¢ã§ã®ãå®ãã®å§¿å¢ãã®äž¡æ¹ãåæé²è¡ã§é²ããããšã§ããµãŒãã¹ã®ã¿ãªããäŒæ¥å šäœã®æé·ãäžæ¯ãããããŒã ãšããŠååšæçŸ©ãé«ããŠããã
ä»åŸã¯ã
- PHP + CakePHPãAmazon Aurora MySQLã®ããŒãžã§ã³ã¢ãã
- ããŒã¿åæåºç€ã®æ§ç¯ïŒãã°ã®ãªã¢ã«ã¿ã€ã è§£æãéå»ãã°ã®Athena察å¿etc.ïŒ
- éçºç°å¢ã§æ¡çšããŠããDockerãæ¬çªç°å¢ã«ãé©çšããã¢ããªãšã³ãžãã¢ãéçºããªãªãŒã¹ãéçšããã¹ãŠè¡ããä»çµã¿ã«
- åãããŠAPIåãé²ããŠèšèªã«äŸåããªããµãŒãã¹éçšç°å¢ã«
- ãã€ã¯ããµãŒãã¹åããµãŒãã¬ã¹åãé©å®é²ãã
ãªã©ã宿œããªãããããã§å¹ã£ãããŠããŠãã©ã³ãµãŒãºä»¥å€ã®ä»ãµãŒãã¹ã«ãåºããŠããã®ãç®æšã ãšèªãã
ãã䟿å©ãªããŒã«ã詊ããªããéçºã®ããã«ããã¯ã朰ã
ãã ãæšªäºãããéæŸ€ããã説æãããããªããã·ã§ã³ãã4åãšããå°äººæ°ã®ããŒã ã§é²ããŠãã®ã¯å£ã§èšãã»ã©ç°¡åãªããšã§ã¯ãªããã€ã³ãã©ããŒã ããéçºã®ããã«ããã¯ã«ãªããªããããã«ã¯ãã¹ã±ãŒã«ãç¶ãããµãŒãã¹ãããã«å°ãªãã³ã¹ãã§æ¯ããŠãããïŒ ã«ç¥æµãçµãå¿ èŠãããã
ãã®å®è·µäŸã®äžã€ãšããŠãã€ã³ãã©ãšã³ãžãã¢ã®å¹³å¡è²Žä¹ããã¯ãCtoCã®ã¹ãã«ã·ã§ã¢ãµãŒãã¹ãpookãã«ãããAmazon EC2 Container ServiceïŒä»¥äžãECSïŒå°å ¥ã®å·¥å€«ã説æããã

éèãå®å
¬åºåãã®ãªã³ãã¬ãã¹ã€ã³ãã©éçšãããèªç€ŸãµãŒãã¹ã®ã¯ã©ãŠãã€ã³ãã©ãšã³ãžãã¢ãçµãŠã2016幎3æã©ã³ãµãŒãºã«å
¥ç€Ÿããå¹³å¡ãã
ECSã¯Dockerã³ã³ããã®å®è¡ã»ç®¡çãç°¡åã«è¡ãããšã®ã§ããã¹ã±ãŒã©ãã«ãªã³ã³ãã管çãµãŒãã¹ãšããŠç¥ãããŠããããå瀟ã§ã¯æåãOSSã®ãªãŒã±ã¹ãã¬ãŒã·ã§ã³ããŒã«ã§ããTerraformã§ã³ã³ãã管çãè¡ãæ§æ³ã ã£ããšããã
ãããšããšã©ã³ãµãŒãºã¯Terraform + Ansibleã䜿ã£ãèªåæ§ç¯åãé²ããŠããããããšããã®ãçç±ã§ããããã ãæ°èŠãµãŒãã¹ã®æ°ãå¢ããã«ã€ããŠãã€ã³ãã©ããŒã ã®åŽåãå¢ãç¶ãããšãã課é¡ããããŸãããé害察å¿ã®ãã³ã«æãåããå¿ èŠãããããŸãOSSã®ããŒãžã§ã³ãäžããéã«ããŸãåããªããŠæ»ããã......ãšããæéãçºçããŸããããã§ãECS-CLIã§Dockerã³ã³ãããäœæã»æŽ»çšããç°å¢ã«åãæ¿ããŸãããïŒå¹³å¡ããïŒ
ãã®éã®äž»ãªå€æåºæºã¯2ã€ã ã£ããšå¹³å¡ããã¯ç¶ããã
ãäžã€ã¯éçºã®ã¹ããŒãæãæ ä¿ããããããããããã¿ã€ãããŒã¹ã§PullâBuildâUpã®ãµã€ã¯ã«ãåãããšããç¹ãç¹ã«é åçã§ããããããŠããäžã€ã¯ãImmutable Infrastructureãå¿åããŠã€ã³ãã©ãå·æ°ããŠããæµãã«å³ããŠããããã§ããïŒå¹³å¡ããïŒ
å®éã«ãpookãã§æ§ç¯ããã·ã¹ãã ã¢ãŒããã¯ãã£ãªã©ã«ã€ããŠã¯ãåœæ¥ã®çºè¡šè³æïŒä»¥äžã®Speaker DeckïŒã«ãŸãšãŸã£ãŠããã®ã§ããã²èŠãŠã»ããã
>> Lancers x ECSïŒSpeaker DeckïŒ
åºæ¬çãªèãæ¹ã¯ãPaaSæäŸäŒæ¥Herokuã®ç€Ÿå¡ããŸãšããŠäžççã«ç¥ãããããã«ãªã£ããã¢ãã³ãªã¯ã©ãŠãã¢ããªã±ãŒã·ã§ã³éçºã®æ¹æ³è«ãTwelve-Factor Appããåèã«ããŠãããšå¹³å¡ããã¯èšãã
ãŸããããžã¿ã«ããŒã±ãã£ã³ã°ãµãŒãã¹ãQuantãã®ãµãŒããŒãµã€ãéçºãæ åœããŠãããšã³ãžãã¢ã®ameshoããã¯ãå šç€Ÿçãªéçºå¹çã¢ãããçã£ãŠTreasure Data瀟ã®OSSã¯ãŒã¯ãããŒãšã³ãžã³ãDigdagããå°å ¥ããäºäŸã«ã€ããŠèª¬æããïŒåœæ¥ã®çºè¡šè³æã¯ä»¥äžã®Speaker DeckïŒã
>> 52 weeks after Digdag operationïŒSpeaker DeckïŒ

æºåž¯å
¬åŒãµã€ããåºåé
ä¿¡ç³»ã®éçºãªã©ãçµãŠã2016幎12æã«ã©ã³ãµãŒãºã«å
¥ç€ŸããameshoãããRuby on RailsãGoã䜿ã
ãDigdagãã¯ãããåŠçããã°ã®ããã¯ã¢ãããªã©ã宿çã«èªåå®è¡ãããžã§ãã®ç®¡çãå¯èŠåããããŒã«ã ããQuantãã§ã¯ãäž»ã«ãããåŠçæéã®å¯èŠåãšéçšã®å¹çåãç®çã«äœ¿ãããã
ãDigdagãå°å ¥ããåã¯cronã䜿ã£ãŠãžã§ããèªåå®è¡ããŠããŸããããéçšãããŒã®äžéæãããã£ãŠãžã§ãã®å®è¡ã¿ã€ãã³ã°ãææ¡ãã¥ãããšãã課é¡ããããŸãããããã§Digdagãå°å ¥ããããšã§ã管çç»é¢ãèŠãã ãã§ã©ã®ãµãŒããããã¯ããŠããããäžæ¬ããŠåããããã«ãªããŸãããïŒameshoããïŒ
ããã«ãã£ãŠããããåŠçãèšå®ãã人以å€ãããã©ã®åŠçããã€å§ãŸããå®è¡äžã¯ã©ã®ãããæéãããã£ãŠãããïŒããããžã¥ã¢ã«ã§ææ¡ãããããªã£ããšameshoããã¯è©±ãã
ããã®ä»ãäžåžãååã«å£é ã§èª¬æããªããŠããããªããŸããããã³ãŒããã¬ãã§æžããªã人ïŒäŸïŒã¯ãšãªã ãæžããŠãã人ãšãïŒã«ãšã£ãŠããæ¢åã®èšå®ãã¡ã€ã«ãããã°äœ¿ãåãã§æžãã®ã§æéãçããããã«ãªããŸãããïŒameshoããïŒ
ããããŠå šè¬çãªç¶æ³ææ¡ããããããªã£ãããšã§ãéçºããŒã å šå¡ã®èªèãåãããã«ãªãããä»ã§ã¯digdagãäžå¿ã«éçºãé²ãã§ããæãã«ãªã£ãŠããããšããã
ããŒã ãäŒç€Ÿã®è² æ ãããã䟿å©ãªããŒã«ã詊ãããšã§æ¹åã»è»œæžããŠããããšããSREã®å€§äºãªåœ¹å²ãšããããšã ããã
ããããã€ãã³ã
é¢é£ããã€ãã³ã

ããšã³ãžãã¢åãå匷äŒãäºæ¥ã®å€è§åãæ¯ããã©ã³ãµãŒãºçSREè¡
2018幎02æ20æ¥ (ç«)ããããã®èšäº

æç§æžãèªãã ã ãã§ã¯åãããªãSREæšé²ã®åãçµã¿ãå ¬éïŒââSHIFTã»X-Tech5ã»NTTããŒã¿ã®ãšã³ãžãã¢ãèªã£ãäºäŸã玹ä»

PayPayæµã¯ã©ãŠãã€ã³ãã©æ¹åã®æ¥µæââéããããªãœãŒã¹ã§75%ã®æ¥åè² æ åæžãéæ








