Datadogã¯6æ9æ¥ïœ11æ¥ã®æéã§ç±³ãã¥ãŒãšãŒã¯ã®Javits Centerã«ãããŠå¹Žæ¬¡ã«ã³ãã¡ã¬ã³ã¹ãDASHããéå¬ãããæšä»ããã©ãããã©ãŒã ã®èŠæš¡ãæ¡å€§ããã«ã€ããŠãã¢ãã¿ãªã³ã°ãšã€ã³ã·ãã³ã管çã®èª²é¡ãå¢ããŠãããæé·ã«åãããŠã¢ãã¿ãªã³ã°æŠç¥ã確å®ã«é²åãããã«ã¯ã©ãããã°ããã®ã ãããïŒToyota Connected North America(TCNA)ã®å°å ¥äºäŸã玹ä»ããã
Datadogã§6幎éã®ã¢ãã¿ãªã³ã°ããã»ã¹ãåçå
ããšã¿èªåè»ã®æµ·å€åäŒç€Ÿã§ããTCNAã§ã¯ã6幎åã«ãã¬ããã£ã¯ã¹ãã©ãããã©ãŒã ãç«ã¡äžããŠä»¥æ¥ãæ°ãããµãŒãã¹ãäžçåå°ã«å±éã»æ¡å€§ããŠãããããšã¿ã®ã«ã€ãŒã³ææ³(ç¶ç¶çæ¹å)ãæŽ»çšããã¢ãã¿ãªã³ã°ããã»ã¹ãåçåããããšã§èŠæš¡ã«å¿ããã·ã³ãã«ããç¶æããŠããã
TCNAã¯åç±³ã®ããšã¿ã°ã«ãŒãã§ããToyota Motor North Americaãšã¯å¥äŒç€Ÿãšãªããç€Ÿå¡æ°ã¯çŽ400人ãããšã¿ã°ã«ãŒãã®ãœãããŠã§ã¢éšéã®ãããªååšã§ãè»äž¡å ã®ã»ã³ãµãéä¿¡ããCAN(Controller Area Network)ãã¹ã掻çšããæè¡ããæ°ããããããŠãããã®UI/UXãã¶ã€ã³ãªã©ãæãããŠãããæè¿ãçºè¡šãããæ°ããè»èŒã€ã³ã¿ãŒãã§ãŒã¹ãå瀟ã®ããŒã ãèšèšããã
説æã«ç«ã£ããToyota Connected North America Senior DevOps Engineerã®Ashley Parksæ°ã¯ãTCNAã®ãã¬ããã£ã¯ã¹ãã©ãããã©ãŒã ãDrivelinkããæ åœãDrivelinkã¯ãããšã¿èªåè»ã®ã³ãã¯ãã£ãããµãŒãã¹ãT-Connectãã®äžéšãšããŠ2019幎ããæäŸãç·æ¥éå ±ãè»äž¡äœçœ®æ å ±ãµãŒãã¹ãSafety Connectãã®ããŒã³ããå幎ã«ããŠã³ã¿ã€ã ãŒããå®çŸããŠããã
Drivelinkã¯ã°ããŒãã«ã§1250äžå°ã§æå¹åãããŠããããããŸã§åé»ã550äžä»¶ããã¡å®å šã«é¢ãããã®ã55äžä»¶ãè»äž¡è¿œè·¡ã¯3äž5000ä»¶ãšãªã£ãŠããã
æäŸããŠããå®å šãµãŒãã¹ã«ã¯ãè¡çªæã«èªåã§éç¥ãããACN(Automatic Collision Notification)ããè»å ã®SOSãã¿ã³ã«ããç·æ¥éå ±ããããŠçé£è»äž¡ã®è¿œè·¡æ©èœãªã©ãããããããã¯DCM(Data Communication ModuleïŒå°çšéä¿¡æ©)ãšãããè»èŒã®ããã€ã¹ãéããŠãSIMã«ãŒãã§ã³ãŒã«ã»ã³ã¿ãŒã«é³å£°é話ãšè»äž¡ããŒã¿ãéä¿¡ããããšã§ãäºæ ã®æç¡ãè¡çªç®æãä¹å¡æ°ãªã©ãææ¡ããè¿ éãªæå©å¯Ÿå¿ãå¯èœãšããŠããã
ãŸããçé£è»äž¡ã®è¿œè·¡ã¯ãå¿ ãããçé£ã«éãããèŠå¯ã®å ±åãããã°Amber Alert(å ç«¥èªæ)ãSilver Alert(é«éœ¢è è¡æ¹äžæ)ãªã©ã«ã察å¿å¯èœãªããšã«å ãããDestination AssistããšãããµãŒãã¹ã§ã¯ãè»èŒããããŠãããã«ç®çå°æ å ±ãéä¿¡ããæ©èœãæäŸããŠããããªãã¬ãŒã¿ãŒãŸãã¯AIã察å¿ããŠããã
Parksæ°ã¯ãããšã¿çç£æ¹åŒ(Toyota Production System)ã¯ã嵿¥è ã®è±ç°äœåæ°ãæ¯èŠªã®ç¹æ©äºæ¥ãæ¹åããéçšã§çã¿åºããå²åŠã§ããããšã¿ã¯å ã ç¹æ©ã¡ãŒã«ãŒãšããŠã¹ã¿ãŒãããŸãããå¹çæ§ã广æ§ãç¡é§ã®æé€ã远æ±ãããã®å²åŠã®äžã§ããç¹ã«ãKaizen(ã«ã€ãŒã³)ã=ç¶ç¶çæ¹åãéèŠããŠããŸããåœç€Ÿã§ãã·ã¹ãã ã®ã¢ããã°ã¬ãŒããèšŒææžãã»ãã¥ãªãã£ã®ææ°åãæ°ããããŒã«ã®ã¢ãŒããã¯ãã£è©äŸ¡ãªã©ãããŸããŸãªåœ¢ã§ã«ã€ãŒã³ãå®è·µããŠããŸãããšè¿°ã¹ããŸãã¯ããžãã¹ã®æé·ã«åãããŠã¢ãã¿ãªã³ã°ãã¹ã±ãŒã«ãããæ¹æ³ã玹ä»ããã
ããžãã¹ã®æé·ã«åãããŠã¢ãã¿ãªã³ã°ãã¹ã±ãŒã«
TCNAã§ã¯HashiCorpã®ãTerraformãã§ã°ããŒãã«ã¢ãã¿ãªã³ã°ã¹ã€ãŒããæ§ç¯ãããµãŒãã¹ãå¢å ããŠãäžè²«æ§ã®ããç£èŠãå¯èœãšããŠãããå°åå¥ã®ã¢ãã¿ãŒãçšæããŠãããã倧åã®ã¢ãã¿ãŒã¯ã°ããŒãã«ã¢ãã¿ãªã³ã°ã·ã¹ãã ã«çµ±åããããããã©ãããã©ãŒã äžã®ãã¹ãŠã®ãµãŒãã¹ãéä¿¡ããå ±éã®ã¡ããªã¯ã¹ã«ããšã¥ããŠããã
äŸãã°ãRabbitMQãšKubernetesã§ãã€ã¯ããµãŒãã¹éã®éä¿¡ãè¡ã£ãŠããããããã¹ãŠã®ãµãŒãã¹ãRabbitMQã«é¢ããã¡ããªã¯ã¹ãéä¿¡ããæ°ãããµãŒãã¹ããããã€ãããããæ¢åã®ãµãŒãã¹ããªãŒã¹ãã©ãªã¢ã«è€è£œãããŠãããã€ããããããå Žåã§ããèªåçã«ã¡ããªã¯ã¹ãéä¿¡ãããDatadogã®ã¢ãã¿ãŒã«å«ãŸããããã«ãªã£ãŠããã
ãã®ä»çµã¿ã«ã€ããŠåæ°ã¯ãéåžžã«ã·ã³ãã«ã§ãããã¢ãã¿ãŒã®ã¿ã€ãã«ã«ã¯å¿ ããããŒã åãããç°å¢åããªã©ã®ã°ã«ãŒãã³ã°æ å ±ãå«ããããã«ããŠããŸããããã«ãããSlackãã£ã³ãã«ãªã©ã§éç¥ãåãåã£ãéã«ãã©ã®ããŒã ã察å¿ãã¹ãããããã«åããããã«ãªããŸããããã«ããã¹ãŠã®ã¢ãã¿ãŒã¯Terraformã§ç®¡çããŠãããSlackãã£ã³ãã«ãžã®éç¥å ãå€å®ãã巚倧ãªifæãäœæããŠããŸããéçºè ã¯Terraformã®å€æ°ãæå®ããã ãã§ãã¢ãã¿ãŒãæ£ããSlackãã£ã³ãã«ã«éç¥ãããããã«ãªããŸããNorth Americaã®ãµãŒãã¹ã¯ãNorth Americaããšããååã§èå¥ããããããã¯ã·ã§ã³ãšéãããã¯ã·ã§ã³ã®ã¢ã©ãŒããåããŠç®¡çããŠããŸããããã«ãããäžèŠãªãã€ãºãæžãããå°åããšã®ã¢ãã¿ãŒãæç¢ºã«è¿œè·¡ã§ããŸãããšèª¬æããã
ãŸããã¢ãã¿ãŒã«ã¯P1ïœP4ãŸã§ã®ãåªå 床(Priority)ããå¿ ãèšå®ãããP1ã¯æãé倧ãªã¢ã©ãŒããšãªããP1ã¢ãã¿ãŒã¯ã€ã³ãã©ããŒã ã«çŽæ¥ããŒãžãéä¿¡ãããµããŒãããã»ã¹ãã¹ãããããŠå³æå¯Ÿå¿ãä¿ããäŸãã°ãããŒããããŠã³ããå Žåã«ã¯å³åº§ã«éç¥ãé£ã³ãè¿ éãªåŸ©æ§ãå¯èœãšããŠããã
人éãã¢ãã¿ãŒãèŠããšãã ãã§ãªããDatadogã®AIãšãŒãžã§ã³ããBits AIãããªã³ã³ãŒã«å¯Ÿå¿ãè¡ãéã«ãå¿ èŠãªãããRunbook(å¯Ÿå¿æé æž)ã®æ·»ä»ã¯å¿ é ãšãªã£ãŠãããåé¡ãçºçãããšãã«äœãããã°ããã®ããæèšãããŠããªããšã誰ã察å¿ã§ããã«æŸçœ®ãããŠããŸãå¯èœæ§ããããšããã
ã¢ãã¿ãªã³ã°ã®ç²ŸåºŠãä¿ã€2ã€ã®éçšæœç
ã¢ãã¿ãŒã®æå¹æ§ãç¶æããããã®åãçµã¿ãšããŠã¯ãã¢ãã¿ãŒãé©åã«æ©èœããŠãããã確èªããããã«ãå瀟ã§ã¯ãéé±ã®ã¢ãã¿ãŒç¢ºèªããŒãã£ã³ã°ããšãååæããšã®Game Day(ã·ã¹ãã æ€èšŒã€ãã³ã)ã®2ã€ã®æ¹æ³ãæ¡çšããŠããã
ã¢ãã¿ãŒç¢ºèªããŒãã£ã³ã°ã§ã¯ãDatadogãæäŸãããMonitor Notifications Overviewããšããããã·ã¥ããŒããæŽ»çšããã¢ãã¿ãŒã®çºç«åæ°ãéç¥å ã®Slackãã£ã³ãã«ãã¢ã©ãŒãç¶æ ãªã©ãã°ã©ããããŒãã«ã§å¯èŠåãããã®ãšãªãã
ç¹ã«æ³šç®ããã®ã¯ãæãå€ãçºç«ããã¢ãã¿ãŒãã®ã°ã©ãã§ãäŸãã°ããã¢ãã¿ãŒãéå»2é±éã§5000åãçºç«ããŠããå Žåããã®éŸ(ããã)å€ãé©åãåŠããåè©äŸ¡ããéèŠã§ãªãå Žåã¯åé€ããããšãããããŸããåžžã«ã¢ã©ãŒãç¶æ ã®ãŸãŸã«ãªã£ãŠããã¢ãã¿ãŒããã§ãã¯ããã¡ããªã¯ã¹ãéä¿¡ãããŠããªãããèšå®ãã¹ã®å¯èœæ§ãããããšãããäžèŠã§ããã°åé€ããã
ããã«ãéç¥å ãèšå®ãããŠããªãã¢ãã¿ãŒ(Slackãã¡ãŒã«ã«éãããŠããªããã®)ããå質ã¿ããã§ç¢ºèªãããã¹ãçšã«äœæããããŸãŸæŸçœ®ãããŠããå¯èœæ§ãé«ããã®ãããããåé€å¯Ÿè±¡ãšããã
æåŸã«ãæéãããã°é廿°é±éã§æ°ãã«ç£èŠãã¹ãäºè±¡ããªãã£ããã話ãåããéåžžã¯RCA(Root Cause Analysis)ã§è°è«ãããå 容ã ãã宿çãªãã¬ã€ã³ã¹ããŒãã³ã°ãšããŠæå¹ã ãšããããããã®åãçµã¿ã¯ãSlackãã£ã³ãã«ããã€ãºã§æº¢ããããã®ãé²ããããŒã ãã¢ãã¿ãŒãç¡èŠããã確å®ã«å¯Ÿå¿ã§ããç°å¢ãæŽããããã®âã«ã€ãŒã³âã®äžç°ãšããŠåãçµãã§ããã
å瀟ã§ã¯éé±ã§ã¢ãã¿ãŒã®ç¢ºèªãè¡ããæ°ããã¢ã©ãŒããæ¬çªç°å¢ã«æå ¥ããåã«ã¯ãæ€èšŒã®ããã»ã¹ãèšããŠãããTerraformã®ifæã§ã¯ã鿬çªçšãšæ¬çªçšã®Slackãã£ã³ãã«ãåããŠããã鿬çªç°å¢ã§é »ç¹ã«ã¢ã©ãŒããçºçããŠããå Žåã¯ããŒãã£ã³ã°ã§åãäžããã
ãã ããå€ãã®å Žåã¯ããŸã ãã¹ãäžã§ãããç°åžžå€ã®éŸå€ã調æŽäžã§ãããšãã£ãçç±ã§ãããã«å¯Ÿå¿ããå¿ èŠã¯ãªããšå€æãDatadogã®ããã·ã¥ããŒãã§ã¯ãSlackãã£ã³ãã«ããšã«ãã£ã«ã¿ãªã³ã°ã§ãããããããããéçšãå¯èœãšããŠããã
Game Dayã§å®çŸããæè¡æ€èšŒãšããŒã 匷å
ãŸããååæããšã®Game Dayã§ã¯ã«ãªã¹ãšã³ãžãã¢ãªã³ã°(Chaos EngineeringïŒæ¬çªç°å¢ã§æå³çã«é害ãçºçãããã·ã¹ãã ã®èé害æ§ãæ€èšŒã»æ¹åããææ³)ã®äžç°ã§ãæå³çã«éæ¬çªç°å¢ã§é害ãçºçãããã·ã¹ãã ã®èé害æ§ã埩æ§èœåãæ€èšŒããã
äŸãã°ãããŒããèœãšããããAWS(Amazon Web Services)ã®ãªãŒãžã§ã³ã忢ããããããŠããµãŒãã¹ã忥ç¶ã§ããããã€ã³ãã©ã«åé·æ§ããããã確èªããããããã®åãçµã¿ã¯ããªã³ã³ãŒã«å¯Ÿå¿ã®äžå®ã軜æžãã广ããããæ°ããããŒã ã¡ã³ããŒãæ°èŠãµãŒãã¹ãå ãã£ãéã«ãå®éã«ããŒãžéç¥ãå±ããåŠãã確èªã§ãããããéçšäœå¶ã®æŽåã«ã圹ç«ã€ãšããŠããã
ãŸããã³ããçŠä»¥éã察é¢ã§ã®äº€æµãæžã£ãããšããããããŒã éã®ã³ãã¥ãã±ãŒã·ã§ã³ãä¿é²ããå ŽãšããŠãæ©èœããŠãããGame Dayã§ã¯é害ãçºçãããããšã§ãã·ã¹ãã å ã®ä»ã®éšåã«ããšã©ãŒãæ³¢åããå¯èœæ§ããããæœåšçãªé害ãã€ã³ãã®ç¹å®ã«ãã€ãªãããšã®ããšã ã
äŸãã°ãJavaãµãŒãã¹ã忥ç¶ã§ããã«ãšã©ãŒãåºãå Žåãæ°ããããŒãžã§ã³ãäŸåé¢ä¿ã®èŠçŽããå¿ èŠãããããªãã»ããDatadogã®ã¢ãã¿ãŒãæ£ããçºç«ãããã©ããã確èªã§ããããããäœãçºç«ããªããã°ã¢ãã¿ãŒã®èšå®ãäžååããGame Dayã®ã·ããªãªãé©åã§ãªãã£ãå¯èœæ§ããããšããã
Parksæ°ã¯ãåãªãæè¡æ€èšŒã ãã§ãªããããŒã ãã«ãã£ã³ã°ã®æ©äŒãšããŠããšãããä»ããŒã ã®ã¡ã³ããŒãšäº€æµããã€ã³ã·ãã³ãæã®å¯Ÿå¿æ¹æ³ãå ±æããããšã§ãçµç¹å šäœã®å¯Ÿå¿åãåäžãããŠããŸãããšè¿°ã¹ãŠããã
DatadogãæŽ»çšããå¹ççãªã€ã³ã·ãã³ã管çããã»ã¹
ç¶ããŠãParksæ°ã¯ã€ã³ã·ãã³ã管çã«è©±ãç§»ãããåæ°ã¯æ°ããã€ã³ã·ãã³ã管çããã»ã¹ãèšèšããéããããã¯æ¢åã®ããã»ã¹ãèŠçŽãéã«ä»¥äžã®6ã€ã®åããããŒã ã§å ±æããããšãéèŠã ãšã®èªèã瀺ããã
誰ãSlackã§çºç«ããã¢ãã¿ãŒã«å¯Ÿå¿ããã®ãïŒ å€ãã®äººãSlackéç¥ããã¥ãŒãããŠããå¯èœæ§ãããããã責任è ãæç¢ºã«ããå¿ èŠãããã
ã¢ãã¿ãŒãçºç«ãããšããã©ã®ãããªã¹ããããèžãã®ãïŒ
ã©ã®ã¿ã€ãã³ã°ã§ããŒãžéç¥ãéãã®ãã察å¿ã®æµããå®çŸ©ããŠããããšãéèŠãã€ã³ã·ãã³ããå§ãŸã£ãåŸã次ã«äœãããã®ãïŒ
åå察å¿ã®æé ãææ§ã ãšã察å¿ãé ããåå ã«ãªãããã€ãšã³ãžãã¢ãåŒã³åºããïŒ
Runbookã®æåŸã«å°éãããšãããŸãã¯è€æ°ã®ã¢ãã¿ãŒãåæã«çºç«ããŠãããšãã¯ãå³åº§ã«ãšã³ãžãã¢ã«éç¥ãéããã€ã³ã·ãã³ããé·æåããå Žåã®å¯Ÿå¿ã¯ïŒ
8æéã3æ¥ãªã©é·åŒããå Žåã®å¯Ÿå¿æ¹éãäºåã«æ±ºããŠããå¿ èŠããããã€ã³ã·ãã³ããåæããåŸãäœãããã®ãïŒ
ãã¹ãã¢ãŒãã (äºåŸåæ)ãæ¯ãè¿ããåçºé²æ¢çã®å ±æãªã©ãçµäºåŸã®ããã»ã¹ãéèŠã
ã€ã³ã·ãã³ããçºçãããšèªåçã«ã¯ãŒã¯ãããŒãèµ·å
ã€ã³ã·ãã³ããçºçãããšãDatadogäžã§äœæãããå°çšSlackãã£ã³ãã«ãžã®éç¥ãããçŽè¿ã®ãªãªãŒã¹ã®ç¢ºèªããèªåã·ã³ã»ãã£ãã¯ç£èŠãã¹ãã®å®è¡ãšå ±æçµæã®å ±æãããã¹ãããŒã ãžã®å ±æããªã©ã®ã«ã¹ã¿ã ã¯ãŒã¯ãããŒãèªåçã«èµ·åããã
ããã«ãåé¡ãçºçããŠãããµãŒãã¹ã®æ åœãšã³ãžãã¢ãSlackãã£ã³ãã«ã«è¿œå ããéç¥ãå¿ èŠãã©ããã確èªãé倧ãªã€ã³ã·ãã³ãã®å Žåã¯ããããŒãžã£ãŒããã£ã¬ã¯ã¿ãŒãSlackãã£ã³ãã«ã«è¿œå ããç¶æ³ãå ±æããã
ãŸããããã¯ã°ã©ãŠã³ãã§åäœããå°èŠæš¡ãªã¯ãŒã¯ãããŒããããæå€§24æé皌åããããæ¯æããã¹ã¿ãŒã«ãã¹ã宿œããªãã€ã³ããããšãšãã«ã4æéããšã«ãªã³ã³ãŒã«æ åœè ã亀代ããããéç¥ããããšã§ãé·æéã®ã€ã³ã·ãã³ãã§ã察å¿ãéåããªãããã«ããŠããã
æåŸã«ãDatadog Incident Managementãããèªåçæããããã¹ãã¢ãŒãã ã®ãã³ãã¬ãŒãã«ã¯ã5 Whys(ãªãã5åç¹°ãè¿ãåæææ³)ããå«ãŸããŠãããã¿ã€ã ã©ã€ã³ãèšé²ããªããã責任远åã§ã¯ãªãæ¹åã«çŠç¹ãåœãŠãæ¯ãè¿ãããŒãã£ã³ã°ãè¡ãã
ãã®éã«ãäœãèµ·ããã®ãïŒããã©ã®ã¢ãã¿ãŒãçºç«ããã®ãïŒããæ¹åã§ããç¹ã¯ãããïŒããæ°ãã«äœæãã¹ãã¢ãã¿ãŒã¯ãããïŒããªã©ã確èªããã€ã³ã·ãã³ãã解決ããåŸã«å¿ ã宿œããéèŠãªããã»ã¹ãšãªã£ãŠãããšããã
ãã®ããã«ããŠãTCNAã¯DatadogãæŽ»çšããç£èŠãšã€ã³ã·ãã³ã管çã®åãçµã¿ãå®è·µããŠããããµãŒãã¹ã®æé·ã«äŒŽããã©ã®ããã«ã¹ã±ãŒã©ãã«ãªã¢ãã¿ãªã³ã°ãæ§ç¯ããŠãããã6幎éã«ããã£ãŠã¢ãã¿ãŒã®æå¹æ§ãã©ãç¶æããã€ã³ã·ãã³ã管çãæŽåããŠããããç¥ããã®ã§ã¯ãªãã ããããDatadogã®å°å ¥ãæ€èšããŠããäŒæ¥ã®äžå©ã«ãªãã°å¹žãã ã



