SRE (ãµã€ãä¿¡é Œæ§ãšã³ãžãã¢ãªã³ã°) ã¯ãWeb ãããžã§ã¯ãã®å¯çšæ§ã確ä¿ããããã®ã¢ãããŒãã§ãã ãã㯠DevOps ã®ãã¬ãŒã ã¯ãŒã¯ãšã¿ãªãããDevOps ãã©ã¯ãã£ã¹ã®é©çšã§æåãåããæ¹æ³ã«ã€ããŠèª¬æããŸãã ãã®èšäºã®ç¿»èš³
ç«ã«ãã翻蚳ã èªæžã楜ããïŒ
Google ã® SRE ããŒã ã«ã¯ãæåããç£èŠããã³éç¥ã·ã¹ãã ãäœæããããã®åºæ¬ååãšãã¹ã ãã©ã¯ãã£ã¹ããããŸãã ãã®ç« ã§ã¯ãWeb ããŒãžã®èšªåè
ãééããå¯èœæ§ã®ããåé¡ãšãWeb ããŒãžã®è¡šç€ºãå°é£ã«ããåé¡ã®è§£æ±ºæ¹æ³ã«ã€ããŠèª¬æããŸãã
å®çŸ©ããŸã
ã¢ãã¿ãªã³ã°ã«é¢é£ãããããã¯ãè°è«ããããã«äœ¿çšãããåäžã®èªåœã¯ãããŸããã 以äžã®çšèªã¯ Google ã§ãäžè¬çã«ã¯äœ¿çšãããŠããŸããããæãäžè¬çãªè§£éãåæããŸãã
ç£èŠ
ã·ã¹ãã ã«é¢ããå®éçããŒã¿ã®ãªã¢ã«ã¿ã€ã ã§ã®åéãåŠçãéèšã衚瀺: ãªã¯ãšã¹ãã®æ°ãšãªã¯ãšã¹ãã®çš®é¡ããšã©ãŒã®æ°ãšãšã©ãŒã®çš®é¡ããªã¯ãšã¹ãã®åŠçæéããµãŒããŒã®çšŒåæéã
ãã¯ã€ãããã¯ã¹ç£èŠ
å éšã·ã¹ãã ã³ã³ããŒãã³ãã«ãã£ãŠè¡šç€ºãããã¡ããªã㯠(ãã°ãJava ä»®æ³ãã·ã³ ãããã¡ã€ãªã³ã° ã¡ããªãã¯ãå éšçµ±èšãçæãã HTTP ãã³ãã©ãŒ ã¡ããªãã¯ãªã©) ã«åºã¥ãã¢ãã¿ãªã³ã°ã
ãã©ãã¯ããã¯ã¹ç£èŠ
ãŠãŒã¶ãŒã®èŠ³ç¹ããã¢ããªã±ãŒã·ã§ã³ã®åäœããã¹ãããŸãã
ããã·ã¥ããŒã
ãµãŒãã¹ã®äž»èŠãªå¥å šæ§ææšã®æŠèŠãæäŸããã€ã³ã¿ãŒãã§ã€ã¹ (é垞㯠Web)ã ããã·ã¥ããŒãã«ã¯ããã£ã«ã¿ãŒã衚瀺ãããã€ã³ãžã±ãŒã¿ãŒãéžæããæ©èœãªã©ãå«ãŸããå ŽåããããŸããã€ã³ã¿ãŒãã§ã€ã¹ã¯ããŠãŒã¶ãŒã«ãšã£ãŠæãéèŠãªã€ã³ãžã±ãŒã¿ãŒãèå¥ããããã«èšèšãããŠããŸãã ããã·ã¥ããŒãã«ã¯ããªã¯ãšã¹ãã®ãã¥ãŒãåªå 床ã®é«ããšã©ãŒã®ãªã¹ããç¹å®ã®è²¬ä»»åéã«å²ãåœãŠããããšã³ãžãã¢ãªã©ããã¯ãã«ã« ãµããŒã ã¹ã¿ããåãã®æ å ±ã衚瀺ã§ããŸãã
ã¢ã©ãŒãïŒéç¥ïŒ
é»åã¡ãŒã«ãŸãã¯ãã®ä»ã®æ段ã§å人ãåä¿¡ããããšãç®çãšããéç¥ããšã©ãŒãŸãã¯ãªã¯ãšã¹ã ãã¥ãŒã®å¢å ã«ãã£ãŠããªã¬ãŒãããå¯èœæ§ããããŸãã éç¥ã¯ããã±ãããé»åã¡ãŒã« ã¢ã©ãŒããã€ã³ã¹ã¿ã³ã ã¡ãã»ã³ãžã£ãŒ ã¡ãã»ãŒãžã«åé¡ãããŸãã
æ ¹æ¬çãªåå
äžåºŠä¿®æ£ããã°äºåºŠãšçºçããŠã¯ãããªããœãããŠã§ã¢ã®æ¬ é¥ãŸãã¯äººçºçãšã©ãŒã ãã®åé¡ã«ã¯ãäžååãªããã»ã¹èªååããœãããŠã§ã¢ã®æ¬ é¥ãã¢ããªã±ãŒã·ã§ã³ ããžãã¯ã®äžååãªç²Ÿç·»åãªã©ãããã€ãã®äž»ãªåå ãèããããŸãã ãããã®åèŠå ãæ ¹æ¬çãªåå ã§ããå¯èœæ§ãããããããããããé€å»ããå¿ èŠããããŸãã
ããŒããšãã·ã³ (ããŒããšãã·ã³)
ç©çãµãŒããŒãä»®æ³ãã·ã³ããŸãã¯ã³ã³ãããŒäžã§å®è¡äžã®ã¢ããªã±ãŒã·ã§ã³ã®åäžã€ã³ã¹ã¿ã³ã¹ãæãã亀æå¯èœãªçšèªã XNUMX å°ã®ãã·ã³ã§è€æ°ã®ãµãŒãã¹ããã¹ãã§ããŸãã ãµãŒãã¹ã«ã¯æ¬¡ã®ãããªãã®ããããŸãã
- çžäºæ¥ç¶: ããšãã°ããã£ãã·ã¥ ãµãŒããŒãš Web ãµãŒããŒã
- åäžã®ããŒããŠã§ã¢äžã®ç¡é¢ä¿ãªãµãŒãã¹: ããšãã°ãã³ãŒã ãªããžããªãšæ§æã·ã¹ãã ã®ãŠã£ã¶ãŒããªã©ã
人圢 ãŸãã¯ã·ã§ã .
ããã·ã¥
ãœãããŠã§ã¢æ§æã®å€æŽã
ãªãã¢ãã¿ãªã³ã°ãå¿ èŠãªã®ã§ãããã?
ã¢ããªã±ãŒã·ã§ã³ãç£èŠããå¿ èŠãããçç±ã¯ããã€ããããŸãã
é·æçãªåŸåã®åæ
ããŒã¿ããŒã¹ã®èŠæš¡ã¯ã©ããããã§ãã?ãŸãããã®æé·ã®éãã¯ã©ããããã§ãã? XNUMXæ¥ã®ãŠãŒã¶ãŒæ°ã¯ã©ã®ããã«å€åããŸãã?
æ§èœæ¯èŒ
Ajax DB 2.72 ãšæ¯èŒããŠããã€ã 3.14 ã® Acme Bucket ã§ã®ãªã¯ãšã¹ãã¯é«éã§ãã? è¿œå ããŒãã®åºçŸåŸããªã¯ãšã¹ãã®ãã£ãã·ã¥ã¯ã©ã®çšåºŠæ¹åãããŸããã? å é±ãšæ¯ã¹ãŠãµã€ãã®åäœãé ããªããŸããã?
ã¢ã©ãŒãïŒéç¥ïŒ
äœããå£ããŠããã®ã§ã誰ãããããçŽãå¿ èŠããããŸãã ãŸãã¯ãäœããããã«å£ããã®ã§ã誰ããããã«ããããã§ãã¯ããå¿ èŠããããŸãã
ããã·ã¥ããŒãã®äœæ
ããã·ã¥ããŒãã«ã¯åºæ¬çãªè³ªåã«çãã以äžã®å
容ãå«ãŸããŠããå¿
èŠããããŸãã
é¡ååæïŒãããã°ïŒã®å®æœ
ãªã¯ãšã¹ãåŠçã®é
延ãå¢å ããŸããããåææã«ä»ã«äœãèµ·ãã£ãã®ã§ãããã?
ç£èŠã·ã¹ãã ã¯ãããžãã¹ ã€ã³ããªãžã§ã³ã¹ ã·ã¹ãã ã®ããŒã¿ ãœãŒã¹ãšããŠåœ¹ç«ã¡ãã»ãã¥ãªã㣠ã€ã³ã·ãã³ãã®åæãä¿é²ããŸãã æ¬æžã¯ SRE ãå°éç¥èãæãããšã³ãžãã¢ãªã³ã°é åã«çŠç¹ãåœãŠãŠãããããããã§ã¯ç£èŠãã¯ããã¯ã«ã€ããŠã¯èª¬æããŸããã
ç£èŠãšã¢ã©ãŒãã«ãããã·ã¹ãã ããã€æ éãããããŸãã¯æ éãããã«ãªã£ãããšãç¥ãããããšãã§ããŸãã ã·ã¹ãã ãèªåçã«ä¿®åŸ©ã§ããªãå Žåã¯ã人éãã¢ã©ãŒããåæããåé¡ããŸã é²è¡äžãã©ãããå€æããåé¡ã解決ããŠãæ ¹æ¬åå ãç¹å®ããå¿ èŠããããŸãã ã·ã¹ãã ã³ã³ããŒãã³ããç£æ»ããªããã°ãåã«ãäœããå°ãããããããšããçç±ã ãã§ã¢ã©ãŒããåãåãããšã¯ãããŸããã
éç¥ã®è² æ ã人ã«äžããããšã¯ãåŸæ¥å¡ã®æéãããªãé«äŸ¡ã«äœ¿ãããšã«ãªããŸãã åŸæ¥å¡ãåããŠããå Žåãã¢ã©ãŒãã¯äœæ¥ããã»ã¹ãäžæããŸãã åŸæ¥å¡ãåšå® ããŠããå Žåãã¢ã©ãŒãã«ãã£ãŠå人ã®æéãäžæãããç¡ç ã劚ããããå¯èœæ§ããããŸãã ã¢ã©ãŒããé »ç¹ã«çºçãããšãåŸæ¥å¡ã¯ã¢ã©ãŒãã«ç®ãéããããåŸåãã«ããããåä¿¡ããã¢ã©ãŒããç¡èŠãããããŸãã æã ã圌ãã¯ãã€ãºã€ãã³ãã«ãã£ãŠé èœãããŠããæ¬åœã®èŠå ±ãç¡èŠããããšããããŸãã ãã€ãºã€ãã³ãã«ããåé¡ãè¿ éã«èšºæããŠä¿®æ£ããããšãã§ããªãããããµãŒãã¹ã®äžæãé·æéç¶ãå¯èœæ§ããããŸãã å¹æçãªèŠåã·ã¹ãã ã¯ãåªããä¿¡å·å¯Ÿéé³æ¯ãåããŠããŸãã
ç£èŠã·ã¹ãã ã«å¯ŸããåççãªæåŸ ãèšå®ãã
è€éãªã¢ããªã±ãŒã·ã§ã³ã®ç£èŠãèšå®ããããšèªäœãè€éãªãšã³ãžãã¢ãªã³ã°äœæ¥ã§ãã åéã衚瀺ãã¢ã©ãŒã ããŒã«ã®éèŠãªã€ã³ãã©ã¹ãã©ã¯ãã£ãåããŠããå Žåã§ãã10 ïœ 12 人ã®ã¡ã³ããŒãããªã Google SRE ããŒã ã«ã¯ãéåžžãç£èŠã·ã¹ãã ã®æ§ç¯ãšä¿å®ãäž»ãªç®çãšãã XNUMX 人ã XNUMX 人ã®ã¡ã³ããŒãå«ãŸããŠããŸãã ç£èŠã€ã³ãã©ã¹ãã©ã¯ãã£ãçµ±åããŠäžå åããã«ã€ããŠããã®æ°ã¯æéã®çµéãšãšãã«æžå°ããŸããããéåžžãå SRE ããŒã ã«ã¯ç£èŠã®ã¿ãå°éãšããæ åœè ãå°ãªããšã XNUMX 人ããŸãã ã·ã¹ãã ããã·ã¥ããŒãã®ç£èŠã¯éåžžã«èå³æ·±ããã®ã§ãããSRE ããŒã ã¯ãåé¡ãç£èŠããããã«èª°ããç»é¢ãèŠãªããã°ãªããªãç¶æ³ãæ éã«é¿ããŠãããšèšããããåŸãŸããã
å šäœãšããŠãGoogle ã¯æé©ãªäºåŸåæããŒã«ãåããã·ã³ãã«ã§é«éãªç£èŠã·ã¹ãã ã«ç§»è¡ããŸããã ç§ãã¡ã¯ããããå€ãäºæž¬ãããæ ¹æ¬åå ãèªåçã«æ€åºããããšãããéæ³ã®ãã·ã¹ãã ãé¿ããŸãã ãšã³ããŠãŒã¶ãŒèŠæ±å ã®æå³ããªãã³ã³ãã³ããæ€åºããã»ã³ãµãŒãå¯äžã®åäŸã§ãã ãããã®ã»ã³ãµãŒãã·ã³ãã«ã§ããéããé倧ãªç°åžžã®åå ãè¿ éã«æ€åºã§ããŸãã ãã£ãã·ã㣠ãã©ã³ãã³ã°ããã©ãã£ãã¯äºæž¬ãªã©ãç£èŠããŒã¿ã䜿çšããããã®ä»ã®åœ¢åŒã¯ããè€éã§ãã äœããµã³ããªã³ã°ã¬ãŒã (æéãŸãã¯æ¥) ã§éåžžã«é·ãæé (æãŸãã¯å¹Ž) ã«ããã£ãŠèŠ³å¯ãããšãé·æçãªåŸåãæããã«ãªããŸãã
Google SRE ããŒã ã¯ãè€éãªäŸåé¢ä¿éå±€ã䜿çšããŠããŸããŸãªæåãåããŠããŸããã ãããŒã¿ããŒã¹ãé ãããšãããã£ãããããŒã¿ããŒã¹ãé ããšããã¢ã©ãŒããåãåããããã§ãªãå Žåã¯ãµã€ããé ããšããã¢ã©ãŒããåãåãããšãã£ãã«ãŒã«ã䜿çšããããšã¯ã»ãšãã©ãããŸããã äŸåé¢ä¿ããŒã¹ã®ã«ãŒã«ã¯éåžžãããŒã¿ã»ã³ã¿ãŒãžã®ãŠãŒã¶ãŒ ãã©ãã£ãã¯ããã£ã«ã¿ãªã³ã°ããã·ã¹ãã ãªã©ãã·ã¹ãã ã®äžå€éšåãæããŸãã ããšãã°ããããŒã¿ ã»ã³ã¿ãŒãžã®ãã©ãã£ã㯠ãã£ã«ã¿ãªã³ã°ãèšå®ãããŠããå ŽåããŠãŒã¶ãŒ ãªã¯ãšã¹ãã®åŠçã®é 延ã«ã€ããŠèŠåããªããã¯ãããŒã¿ ã»ã³ã¿ãŒããã®èŠåã«é¢ããäžè¬çãªã«ãŒã«ã® XNUMX ã€ã§ãã Google ã®ã€ã³ãã©ã¹ãã©ã¯ãã£ã§ã¯ç¶ç¶çãªãªãã¡ã¯ã¿ãªã³ã°ãäžå®ã®å²åã§è¡ãããŠãããããè€éãªäŸåé¢ä¿éå±€ããµããŒãããŠããããŒã ã¯ã»ãšãã©ãããŸããã
ãã®ç« ã§èª¬æãããŠããã¢ã€ãã¢ã®äžéšã¯ãçŸåšã§ãæå¹ã§ããç¹ã«åžžã«å€åããã·ã¹ãã ã§ã¯ãçç¶ããæ ¹æ¬åå ãŸã§ããè¿ éã«ç§»è¡ããæ©äŒãåžžã«ååšããŸãã ãããã£ãŠããã®ç« ã§ã¯ãç£èŠã·ã¹ãã ã®ããã€ãã®ç®æšãšãã®ç®æšãéæããæ¹æ³ã«ã€ããŠæŠèª¬ããŸãããç£èŠã·ã¹ãã ãã·ã³ãã«ã§ããŒã ã®å šå¡ãç解ã§ããããšãéèŠã§ãã
åæ§ã«ããã€ãº ã¬ãã«ãäœããä¿¡å·ã¬ãã«ãé«ãä¿ã€ããã«ãã¢ã©ãŒããçºçããè³ç£ãç£èŠããã¢ãããŒãã¯éåžžã«ã·ã³ãã«ã§ä¿¡é Œæ§ãé«ãå¿ èŠããããŸãã 人ã ã«èŠåãçºããã«ãŒã«ã¯ãç解ãããããæ確ãªåé¡ãæ瀺ããå¿ èŠããããŸãã
çç¶ãšåå
ç£èŠã·ã¹ãã ã¯ããäœãå£ããã®ãããšããªãå£ããã®ãããšãã XNUMX ã€ã®è³ªåã«çããå¿
èŠããããŸãã
ãäœãå£ããã®ããã¯çç¶ã«ã€ããŠãããªãå£ããã®ããã¯åå ã«ã€ããŠè©±ããŸãã 次ã®è¡šã«ããã®ãããªæ¥ç¶ã®äŸã瀺ããŸãã
çç¶
çç±
HTTP ãšã©ãŒ 500 ãŸã㯠404 ãçºçãã
ããŒã¿ããŒã¹ãµãŒããŒãæ¥ç¶ãæåŠãã
ãµãŒããŒã®å¿çãé
ã
CPU 䜿çšçãé«ãããŸãã¯ã€ãŒãµããã ã±ãŒãã«ãæå·ããŠãã
å極ã®ãŠãŒã¶ãŒã¯ç«ã® GIF ãåãåã£ãŠããŸãã
CDN ã¯ç§åŠè
ãšç«ãå«ã£ãŠãããããäžéšã® IP ã¢ãã¬ã¹ããã©ãã¯ãªã¹ãã«ç»é²ãããŸããã
ãã©ã€ããŒã ã³ã³ãã³ããã©ãããã§ãå©çšã§ããããã«ãªããŸãã
æ°ãããœãããŠã§ã¢ ãªãªãŒã¹ã®å±éã«ããããã¡ã€ã¢ãŠã©ãŒã«ããã¹ãŠã® ACL ãå¿ããå
šå¡ãã¢ã¯ã»ã¹ã§ããããã«ãªããŸããã
ãäœãããšããªããã¯ãæ倧ã®ä¿¡å·ãšæå°ã®ãã€ãºãåããåªããã¢ãã¿ãªã³ã° ã·ã¹ãã ãäœæããããã®æãéèŠãªæ§æèŠçŽ ã®äžéšã§ãã
ãã©ãã¯ããã¯ã¹ãšãã¯ã€ãããã¯ã¹
éèŠãªææšã«ã€ããŠã¯ãåºç¯ãªãã¯ã€ãããã¯ã¹ç£èŠãšæ§ãããªãã©ãã¯ããã¯ã¹ç£èŠãçµã¿åãããŠããŸãã ãã©ã㯠ããã¯ã¹ãšãã¯ã€ã ããã¯ã¹ãæ¯èŒããæãç°¡åãªæ¹æ³ã¯ããã©ã㯠ããã¯ã¹ã¯çç¶ã«çŠç¹ãåœãŠãŠãããããã¢ã¯ãã£ããªç£èŠã§ã¯ãªãäºåŸçãªç£èŠã§ãããã€ãŸããã·ã¹ãã ã¯çŸåšæ£ããåäœããŠããŸããããšããããšã§ãã ãã¯ã€ãããã¯ã¹ã¯ãã·ã¹ãã ã®å éšæ€èšŒæ©èœ (ã€ãã³ã ãã°ãŸã㯠Web ãµãŒããŒ) ã«äŸåããŸãã ãããã£ãŠããã¯ã€ãããã¯ã¹ã䜿çšãããšãå·®ãè¿«ã£ãåé¡ããªã¯ãšã¹ãã®åéä¿¡ãšæãããé害ãªã©ãæ€åºã§ããŸãã
ãã«ãã¬ã€ã€ãŒã·ã¹ãã ã§ã¯ããããšã³ãžãã¢ã®æ åœé åã®çç¶ã¯ãå¥ã®ãšã³ãžãã¢ã®æ åœé åã®çç¶ã§ããããšã«æ³šæããŠãã ããã ããšãã°ãããŒã¿ããŒã¹ã®ããã©ãŒãã³ã¹ãäœäžããŸããã ããŒã¿ããŒã¹èªã¿åãã®é ãã¯ããããæ€åºããããŒã¿ããŒã¹ SRE ã®çç¶ã§ãã ãã ããããã³ããšã³ã SRE ãé ã Web ãµã€ããç£èŠããŠããå ŽåãåãããŒã¿ããŒã¹èªã¿åããé ãåå ã¯ããŒã¿ããŒã¹ãé ãããšã§ãã ãããã£ãŠããã¯ã€ãããã¯ã¹ç£èŠã¯ããã®ç¯å²ã«å¿ããŠãçç¶ã«çŠç¹ãåœãŠãå Žåãããã°ãåå ã«çŠç¹ãåœãŠãå ŽåããããŸãã
ãããã°ã®ããã«ãã¬ã¡ããªãåéããå Žåããã¯ã€ãããã¯ã¹ç£èŠãå¿ èŠã§ãã Web ãµãŒããŒãããŒã¿ããŒã¹ ã¯ãšãªã«å¿çããã®ãé ãå Žåã¯ãWeb ãµãŒããŒãããŒã¿ããŒã¹ãšéä¿¡ããé床ãšããã®å¿çé床ãç¥ãå¿ èŠããããŸãã ããããªããšãããŒã¿ããŒã¹ ãµãŒããŒãé ãã®ããWeb ãµãŒããŒãšããŒã¿ããŒã¹ã®éã®ãããã¯ãŒã¯ã®åé¡ãªã®ããåºå¥ã§ããªããªããŸãã
ãã©ãã¯ããã¯ã¹ç£èŠã«ã¯ãã¢ã©ãŒããéä¿¡ããéã«éèŠãªå©ç¹ããããŸããåé¡ããã§ã«å®éã®çç¶ãåŒãèµ·ãããŠãããšãã«ãåä¿¡è ãžã®éç¥ãããªã¬ãŒãããŸãã äžæ¹ããŸã çºçããŠããªããå·®ãè¿«ã£ããã©ãã¯ããã¯ã¹åé¡ã«å¯ŸããŠã¯ãç£èŠã¯åœ¹ã«ç«ã¡ãŸããã
XNUMXã€ã®é»éã®ä¿¡å·
XNUMX ã€ã®ãŽãŒã«ãã³ ã¢ãã¿ãªã³ã° ã·ã°ãã«ã¯ãé 延ããã©ãã£ãã¯ããšã©ãŒã飜åã§ãã ãŠãŒã¶ãŒ ã·ã¹ãã ã¡ããªã¯ã¹ã XNUMX ã€ãã枬å®ã§ããªãå Žåã¯ããã® XNUMX ã€ã«çŠç¹ãåœãŠãŸãã
é ã
ãªã¯ãšã¹ãã®åŠçã«å¿ èŠãªæéã æåãããªã¯ãšã¹ããšå€±æãããªã¯ãšã¹ãã®ã¬ã€ãã³ã·ãåºå¥ããããšãéèŠã§ãã ããšãã°ãããŒã¿ããŒã¹ãŸãã¯ä»ã®ããã¯ãšã³ããžã®æ¥ç¶ã®åªå€±ã«ãã£ãŠåŒãèµ·ãããã HTTP 500 ãšã©ãŒã¯éåžžã«è¿ éã«èšºæã§ããŸãããHTTP 500 ãšã©ãŒã¯ãªã¯ãšã¹ãã®å€±æã瀺ããŠããå¯èœæ§ããããŸãã 500 ãšã©ãŒãå šäœçãªã¬ã€ãã³ã·ã«äžãã圱é¿ãå€æãããšã誀ã£ãçµè«ã«ã€ãªããå¯èœæ§ããããŸãã äžæ¹ãé ããšã©ãŒã¯éããšã©ãŒã§ããããŸãã ãããã£ãŠãåã«ãšã©ãŒãé€å€ããã®ã§ã¯ãªãããšã©ãŒã®é 延ãç£èŠããããšãéèŠã§ãã
ãã©ãã£ãã¯
ã·ã¹ãã ãžã®ãªã¯ãšã¹ãã®æ°ã¯ãé«ã¬ãã«ã®ã·ã¹ãã ã¡ããªãã¯ã§æž¬å®ãããŸãã Web ãµãŒãã¹ã®å Žåããã®æž¬å®å€ã¯éåžžãXNUMX ç§ãããã® HTTP ãªã¯ãšã¹ãã®æ°ããªã¯ãšã¹ãã®æ§è³ª (éçã³ã³ãã³ããŸãã¯åçã³ã³ãã³ããªã©) ã§å²ã£ããã®ãè¡šããŸãã ãªãŒãã£ãª ã¹ããªãŒãã³ã° ã·ã¹ãã ã®å Žåããã®æž¬å®ã¯ãããã¯ãŒã¯ I/O é床ãŸãã¯åæã»ãã·ã§ã³ã®æ°ã«çŠç¹ãåœãŠãŸãã Key-Value ã¹ãã¬ãŒãž ã·ã¹ãã ã®å Žåããã®æž¬å®å€ã¯ XNUMX ç§ãããã®ãã©ã³ã¶ã¯ã·ã§ã³ãŸãã¯æ€çŽ¢çµæã«ãªããŸãã
ãšã©ãŒãçºç
ããã¯ãæ瀺ç (äŸ: HTTP 500)ãæé»ç (äŸ: HTTP 200ããã ãç¡å¹ãªã³ã³ãã³ããšçµã¿åããããŠãã)ããŸãã¯ããªã·ãŒ (äŸ: ãXNUMX ç§ä»¥å ã«å¿çããã£ããã£ããå ŽåãXNUMX ç§ã¯ãšã©ãŒã) ã®å€±æãããªã¯ãšã¹ãã®å²åã§ãã HTTP å¿çã³ãŒãããã¹ãŠã®é害ç¶æ ãè¡šçŸããã«ã¯äžååãªå Žåãéšåçãªé害ãæ€åºããããã«äºæ¬¡ (å éš) ãããã³ã«ãå¿ èŠã«ãªãå ŽåããããŸãã ãã®ãããªèª€ã£ããªã¯ãšã¹ãããã¹ãŠç£èŠããããšã¯æçã§ã¯ãªãå¯èœæ§ããããŸããããšã³ãããŒãšã³ãã®ã·ã¹ãã ãã¹ãã¯ã誀ã£ãã³ã³ãã³ããåŠçããŠããããšãæ€åºããã®ã«åœ¹ç«ã¡ãŸãã
飜å
ãã®ææšã¯ããµãŒãã¹ãã©ã®çšåºŠéäžçã«äœ¿çšãããŠãããã瀺ããŸãã ããã¯ãæãå¶çŽãããŠãããªãœãŒã¹ãç¹å®ããã·ã¹ãã ç£èŠã®æ段ã§ã (ããšãã°ãã¡ã¢ãªå¶çŽã®ããã·ã¹ãã ã§ã¯ã¡ã¢ãªã衚瀺ãããI/O å¶çŽã®ããã·ã¹ãã ã§ã¯ I/O æ°ã衚瀺ãããŸã)ã å€ãã®ã·ã¹ãã ã¯äœ¿çšçã 100% ã«éããåã«ããã©ãŒãã³ã¹ãäœäžããããã䜿çšçã®ç®æšãèšå®ããããšãéèŠã§ããããšã«æ³šæããŠãã ããã
è€éãªã·ã¹ãã ã§ã¯ã飜åã¯ããé«ãã¬ãã«ã®è² è·æž¬å®ã«ãã£ãŠè£å®ã§ããŸãããµãŒãã¹ã¯ 10 åã®ãã©ãã£ãã¯ãé©åã«åŠçã§ãããã99% å€ããã©ãã£ãã¯ã®ã¿ãåŠçã§ãããããŸãã¯çŸåšãããããã«å°ãªããã©ãã£ãã¯ãåŠçã§ãããã ãªã¯ãšã¹ãã®è€éããå€æŽãããã©ã¡ãŒã¿ãæãã (ããšãã°ããäœãäžããªããããäžæã®åäžã®å調æŽæ°ãå¿ èŠã)ãæ§æãã»ãšãã©å€æŽãããªãåçŽãªãµãŒãã¹ã®å Žåã¯ãéçè² è·ãã¹ãã®å€ãé©åã§ããå¯èœæ§ããããŸãããã ããåã®æ®µèœã§èª¬æããããã«ãã»ãšãã©ã®ãµãŒãã¹ã§ã¯ãCPU 䜿çšçããããã¯ãŒã¯åž¯åå¹ ãªã©ãæ¢ç¥ã®äžéãããéæ¥ä¿¡å·ã䜿çšããå¿ èŠããããŸãã ã¬ã€ãã³ã·ãŒã®å¢å ã¯ãå€ãã®å Žåã飜åç¶æ ã®äž»ãªææšãšãªããŸãã XNUMX ããŒã»ã³ã¿ã€ã«ã®å¿çæéãå°ããªãŠã£ã³ã㊠(XNUMX åãªã©) ã§æž¬å®ãããšãéåžžã«æ©ã段éã§é£œåã®ä¿¡å·ãåŸãããå¯èœæ§ããããŸãã
æåŸã«ã飜åã¯å·®ãè¿«ã£ã飜åã«é¢ããäºæž¬ã«ãé¢é£ä»ããããŠããŸããããšãã°ããããŒã¿ããŒã¹ã 4 æé以å ã«ããŒã ãã©ã€ãããã£ã±ãã«ããããã§ããããªã©ã§ãã
XNUMX ã€ã®ãŽãŒã«ãã³ ã·ã°ãã«ããã¹ãŠæž¬å®ããããããã®ã¡ããªã¯ã¹ã«åé¡ãããå Žå (ãŸãã¯ã飜åã®å Žåã¯ã»ãŒåé¡ãããå Žå)ã人ã«èŠåãããšããµãŒãã¹ã¯å€ããå°ãªããç£èŠã®å¯Ÿè±¡ã«ãªããŸãã
ãããŒã«ãïŒãŸãã¯æ¥œåšãããã©ãŒãã³ã¹ïŒã«é¢ããæžå¿µ
ç£èŠã·ã¹ãã ãæåããäœæããå Žåãå¹³åã¬ã€ãã³ã·ãŒãããŒãã®å¹³å CPU 䜿çšçããŸãã¯ããŒã¿ããŒã¹ã®å¹³åå æçãªã©ã®å¹³åå€ã«åºã¥ããŠã·ã¹ãã ãéçºããèªæããããŸãã æåŸã® 100 ã€ã®äŸã®å±éºæ§ã¯æããã§ããããã»ããµãšããŒã¿ããŒã¹ã¯éåžžã«äºæž¬äžå¯èœãªæ¹æ³ã§ç Žæ£ãããŸãã é 延ã«ã€ããŠãåæ§ã§ãã å¹³åã¬ã€ãã³ã·ã 1000 ããªç§ã§ 1 ç§ããã 5 ãªã¯ãšã¹ãã® Web ãµãŒãã¹ãå®è¡ãããšããªã¯ãšã¹ãã® 99% ã« XNUMX ç§ãããå¯èœæ§ããããŸãã ãŠãŒã¶ãŒããã®ãããªè€æ°ã® Web ãµãŒãã¹ã«äŸåããŠããå ŽåãXNUMX ã€ã®ããã¯ãšã³ãã® XNUMX ããŒã»ã³ã¿ã€ã«ãããã³ããšã³ãã®å¿çæéã®äžå€®å€ã«ãªãå¯èœæ§ããããŸãã
ãªã¯ãšã¹ãã®é ãå¹³åãšéåžžã«é ãæ«å°Ÿãåºå¥ããæãç°¡åãªæ¹æ³ã¯ãå®éã®ã¬ã€ãã³ã·ã§ã¯ãªãçµ±èš (衚瀺ã«é©ããããŒã«ã¯ãã¹ãã°ã©ã ) ã§è¡šããããªã¯ãšã¹ãã®æž¬å®å€ãåéããããšã§ããã€ãŸãããµãŒãã¹ãåŠçãããªã¯ãšã¹ãã®æ° (0 ããªç§ã®éã«ããã£ããªã¯ãšã¹ãã®æ°)ãã¹ãã°ã©ã ã®å¢çãã»ãŒææ°é¢æ°çã« (ããã 10 åã«) æ¡å€§ããããšã¯ãå€ãã®å ŽåãååžãèŠèŠåããç°¡åãªæ¹æ³ã§ãããªã¯ãšã¹ãã®ã
枬å®ã«é©åãªè©³çŽ°ã¬ãã«ã®éžæ
ã·ã¹ãã ã®ããŸããŸãªèŠçŽ ã¯ãããŸããŸãªè©³çŽ°ã¬ãã«ã§æž¬å®ããå¿ èŠããããŸãã äŸãã°ïŒ
- äžå®æéã«ããã£ãŠ CPU 䜿çšçãç£èŠããŠããé 延ã®åå ãšãªãé·æçãªã¹ãã€ã¯ã¯è¡šç€ºãããŸããã
- äžæ¹ã幎é 9 æé以å ã®ããŠã³ã¿ã€ã (幎é皌åæé 99,9%) ãç®æšãšãã Web ãµãŒãã¹ã®å ŽåãHTTP 200 å¿çã®ãã§ãã¯ã XNUMX åã« XNUMX ïœ XNUMX å以äžè¡ãããšã¯ãäžå¿ èŠã«é »ç¹ã«ãªãå¯èœæ§ããããŸãã
- åæ§ã«ãããŒã ãã©ã€ãã®ç©ºã容éã 99,9% ã§ãããã©ããã 1 ïœ 2 åããšã«è€æ°åãã§ãã¯ããå¿ èŠã¯ãããããããŸããã
枬å®ã®ç²åºŠãã©ã®ããã«æ§æãããã«æ³šæããŠãã ããã CPU è² è·ã 1 ç§ã« XNUMX ååéãããšèå³æ·±ãããŒã¿ãåŸãããŸããããã®ãããªé »ç¹ãªæž¬å®ã¯åéãä¿åãåæã«éåžžã«ã³ã¹ãããããå¯èœæ§ããããŸãã ç£èŠã®ç®æšã«é«ãç²åºŠãå¿ èŠã§ãé«ãå¿çæ§ã¯å¿ èŠãªãå Žåã¯ããµãŒããŒäžã§ã¡ããªã¯ã¹åéãèšå®ãããããã®ã¡ããªã¯ã¹ãåéããã³éèšããå€éšã·ã¹ãã ãèšå®ããããšã§ããããã®ã³ã¹ããåæžã§ããŸãã åºæ¥ãŸããïŒ
- CPUè² è·ãæ¯ç§æž¬å®ããŸãã
- ãã£ããŒã«ã 5% ã«åæžããŸãã
- ã¡ããªã¯ã¹ãæ¯åéèšããŸãã
ãã®æŠç¥ã«ãããåæãã¹ãã¬ãŒãžã«å€§ããªãªãŒããŒããããçºçãããããšãªããé«ãç²åºŠã§ããŒã¿ãåéã§ããŸãã
ã§ããã ãã·ã³ãã«ã§ããããã以äžã·ã³ãã«ã§ã¯ãããŸãã
ããŸããŸãªèŠä»¶ãéãªãåããšãéåžžã«è€éãªç£èŠã·ã¹ãã ãå®æããå¯èœæ§ããããŸãã ããšãã°ãã·ã¹ãã ã«ã¯æ¬¡ã®ãããªè€éãªèŠçŽ ãå«ãŸããŠããå¯èœæ§ããããŸãã
- ããŸããŸãªã€ã³ãžã±ãŒã¿ãŒã®ãã¹ãŠã®ã¿ã€ãã«ã€ããŠãããŸããŸãªããŒã»ã³ã¿ã€ã«ã§ã®ãªã¯ãšã¹ãåŠçã¬ã€ãã³ã·ãŒã®ããŸããŸãªãããå€ã«åºã¥ããŠã¢ã©ãŒããçæããŸãã
- èããããåå ãæ€åºããŠç¹å®ããããã«è¿œå ã®ã³ãŒããäœæããŸãã
- èããããåé¡ã®åå ããšã«é¢é£ããããã·ã¥ããŒããäœæããŸãã
æœåšçãªå䜵çã®åå ã«ã¯çµããããããŸããã ãã¹ãŠã®ãœãããŠã§ã¢ ã·ã¹ãã ãšåæ§ã«ãç£èŠã¯éåžžã«è€éã«ãªããè匱ã«ãªããå€æŽãä¿å®ãå°é£ã«ãªãå ŽåããããŸãã
ãããã£ãŠãç£èŠã·ã¹ãã ãã§ããã ãç°¡çŽ åããããã«èšèšããŠãã ããã 远跡察象ãéžæãããšãã¯ã次ã®ç¹ã«æ³šæããŠãã ããã
- å®éã®ã€ã³ã·ãã³ããã»ãšãã©ã®å Žåæ€åºããã«ãŒã«ã¯ãå¯èœãªéãã·ã³ãã«ã§ãäºæž¬å¯èœã§ãä¿¡é Œã§ãããã®ã§ããå¿ èŠããããŸãã
- é »ç¹ã«å®è¡ãããªã (ããšãã°ãäžéšã® SRE ããŒã ã§ã¯ååæã«äžåºŠæªæº) ããŒã¿åéãéèšãããã³ã¢ã©ãŒãã®æ§æãåé€ããå¿ èŠããããŸãã
- åéãããŠãããã®ã®ããã¬ãã¥ãŒ ããã·ã¥ããŒãã«è¡šç€ºãããŠããªãããŸãã¯ã¢ã©ãŒãã«ãã£ãŠäœ¿çšãããŠããªãã¡ããªã¯ã¹ã¯ãåé€ã®åè£ãšãªããŸãã
Google ã§ã¯ãåºæ¬çãªææšã®åéãšéèšã¯ãã¢ã©ãŒããããã·ã¥ããŒããšçµã¿åãããŠãæ¯èŒçã¹ã¿ã³ãã¢ãã³ã®ã·ã¹ãã ãšããŠããŸãæ©èœããŸã (Google ã®ç£èŠã·ã¹ãã ã¯å®éã«ã¯ããã€ãã®ãµãã·ã¹ãã ã«åãããŠããŸããã人ã ã¯éåžžããããã®ãµãã·ã¹ãã ã®ãã¹ãŠã®åŽé¢ãèªèããŠããŸã)ã è€éãªã·ã¹ãã ã調æ»ããããã«ã詳现ãªã·ã¹ãã ãããã¡ã€ãªã³ã°ãããã»ã¹ã®ãããã°ãäŸå€ãé害ã«é¢ãã詳现ã®è¿œè·¡ãè² è·ãã¹ãããã°ã®åéãšåæããã©ãã£ãã¯æ€æ»ãªã©ã®ä»ã®ææ³ãšç£èŠãçµã¿åãããããªãå ŽåããããŸãã ãããã®ã»ãšãã©ã¯åºæ¬çãªã¢ãã¿ãªã³ã°ãšå ±éç¹ããããŸãããããããæ··åãããšçµæãå€ãããè€éã§è匱ãªã·ã¹ãã ãäœæãããŸãã ãœãããŠã§ã¢éçºã®ä»ã®å€ãã®åŽé¢ãšåæ§ã«ãæ確ã§ã·ã³ãã«ãªççµåã®çµ±åãã€ã³ãã§ããŸããŸãªã·ã¹ãã ããµããŒãããããšãæåã®æŠç¥ã§ã (ããšãã°ãWeb API ã䜿çšããŠãé·æéã«ããã£ãŠäžè²«æ§ãç¶æã§ãã圢åŒã§éçŽããŒã¿ãååŸããŸã) ïŒã
ååãçµã³ã€ãã
ãã®ç« ã§èª¬æããååã¯ãGoogle SRE ããŒã ã«ãã£ãŠæ¿èªããã³éµå®ãããã¢ãã¿ãªã³ã°ããã³ã¢ã©ãŒãã®å²åŠã«çµã¿åãããããšãã§ããŸãã ãã®ç£èŠå²åŠã«åŸãããšã¯æãŸããããšã§ãããã¢ã©ãŒãæ¹æ³ãäœæãŸãã¯ä¿®æ£ããããã®è¯ãåºçºç¹ãšãªããçµç¹ã®èŠæš¡ããµãŒãã¹ãã·ã¹ãã ã®è€éãã«é¢ä¿ãªããéçšæ©èœã«ã€ããŠé©åãªè³ªåãããã®ã«åœ¹ç«ã¡ãŸãã
ç£èŠã«ãŒã«ãšã¢ã©ãŒã ã«ãŒã«ãäœæãããšãã¯ã次ã®è³ªåãããããšã§ã誀æ€ç¥ãäžèŠãªã¢ã©ãŒããåé¿ã§ããŸãã
- ãã®ã«ãŒã«ã¯ãä»ã®æ¹æ³ã§ã¯æ€åºã§ããªãã·ã¹ãã ã®ãç·æ¥ã§è¡åãä¿ããå¿ ç¶çã«ãŠãŒã¶ãŒã«åœ±é¿ãäžããç¶æ ãæ€åºããŸãã?
- ãã®èŠåã¯ç¡å®³ã§ããããç¡èŠããŠãããã§ãããã? ãã®èŠåãç¡èŠã§ããã®ã¯ãã€ããªãã§ãã?ãŸãããã®ã·ããªãªãåé¿ããã«ã¯ã©ãããã°ããã§ãã?
- ãã®ã¢ã©ãŒãã¯ããŠãŒã¶ãŒãæªåœ±é¿ãåããŠããããšãæå³ããŸãã? ãã©ãã£ã㯠ãã£ã«ã¿ãªã³ã°ããã¢ã©ãŒãããã£ã«ã¿ãªã³ã°ããå¿ èŠããããã¹ã ã·ã¹ãã ã䜿çšããå Žåãªã©ããŠãŒã¶ãŒã«æªåœ±é¿ãåã°ãªãç¶æ³ã¯ãããŸãã?
- ãã®ã¢ã©ãŒãã«å¿ããŠã¢ã¯ã·ã§ã³ãèµ·ããããšã¯ã§ããŸãã? ãããã®å¯Ÿçã¯ç·æ¥ã§ãã? ãããšãæãŸã§åŸ ã€ããšãã§ããŸãã? ã¢ã¯ã·ã§ã³ãå®å šã«èªååã§ããŸãã? ãã®æªçœ®ã¯é·æçãªè§£æ±ºçãšãªãã®ã§ããããããããšãçæçãªåé¿çãšãªãã®ã§ãããã?
- ãã®åé¡ã«é¢ããŠè€æ°ã®ã¢ã©ãŒããåãåã£ãŠãã人ãããŸãããã¢ã©ãŒãã®æ°ãæžããæ¹æ³ã¯ãããŸãã?
ãããã®è³ªåã¯ãã¢ã©ãŒããšèŠåã·ã¹ãã ã«é¢ããåºæ¬çãªå²åŠãåæ ããŠããŸãã
- ã¢ã©ãŒããå±ããã³ã«ãããã«å¯Ÿå¿ããªããã°ãªããŸããã XNUMXæ¥ã«æ°åãç²ããåã«ç·æ¥ã«åå¿ããããšãã§ããŸãã
- åã¢ã©ãŒãã¯é¢é£æ§ãããå¿ èŠããããŸãã
- ã¢ã©ãŒãã«å¯Ÿãããã¹ãŠã®å¿çã«ã¯äººéã®ä»å ¥ãå¿ èŠã§ãã éç¥ãèªåçã«åŠçã§ããå Žåã¯ãéç¥ã¯å±ããªãã¯ãã§ãã
- ã¢ã©ãŒãã¯ã以åã«ã¯ååšããªãã£ãæ°ããåé¡ãŸãã¯ã€ãã³ãã«é¢ãããã®ã§ããå¿ èŠããããŸãã
ãã®ã¢ãããŒãã§ã¯ãç¹å®ã®åºå¥ãææ§ã«ãªããŸããã¢ã©ãŒããåã® XNUMX ã€ã®æ¡ä»¶ãæºãããŠããå Žåãã¢ã©ãŒãããã¯ã€ã ããã¯ã¹ç£èŠã·ã¹ãã ããéä¿¡ãããããã©ã㯠ããã¯ã¹ç£èŠã·ã¹ãã ããéä¿¡ããããã¯é¢ä¿ãããŸããã ãã®ã¢ãããŒãã¯ãç¹å®ã®éãã匷調ããŸããã€ãŸããåå ãããçç¶ã®ç¹å®ã«å€ãã®åŽåãè²»ããæ¹ãè¯ãã§ãã åå ã«é¢ããŠã¯ãé¿ããããªãåå ã«ã€ããŠã®ã¿å¿é ããå¿ èŠããããŸãã
é·æã¢ãã¿ãªã³ã°
ä»æ¥ã®çç£æ§ç°å¢ã§ã¯ãç£èŠã·ã¹ãã ã¯ããœãããŠã§ã¢ ã¢ãŒããã¯ãã£ãã¯ãŒã¯ããŒãç¹æ§ãããã©ãŒãã³ã¹ç®æšã®å€åã«äŒŽããé²åãç¶ããçç£ã·ã¹ãã ãç£èŠããŸãã çŸåšèªååãé£ããã¢ã©ãŒããäžè¬çã«ãªãå¯èœæ§ãããããããã察åŠãã䟡å€ããããã§ãããã ãã®æç¹ã§ã誰ããåé¡ã®æ ¹æ¬åå ãèŠã€ããŠæé€ããå¿ èŠããããŸãã ãã®ãããªè§£æ±ºçãäžå¯èœãªå Žåã¯ãã¢ã©ãŒããžã®å¯Ÿå¿ãå®å šã«èªååããå¿ èŠããããŸãã
é·æçãªç®æšã念é ã«çœ®ããŠã¢ãã¿ãªã³ã°ã®æ±ºå®ãäžãããšãéèŠã§ãã ä»æ¥å®è¡ãããã¢ã©ãŒãã¯ãã¹ãŠãææ¥ã®ã·ã¹ãã ã®æ¹åããæ°ãããããŠããŸããããé·æçãªç£èŠã·ã¹ãã ã®æ¹åã«å¿ èŠãªæéã®éãçç£ã·ã¹ãã ã®å¯çšæ§ãããã©ãŒãã³ã¹ãäœäžããããšããããããŸãã ãã®çŸè±¡ã説æããããã« XNUMX ã€ã®äŸãèŠãŠã¿ãŸãããã
Bigtable SRE: éå°ãªèŠæå¿ã®ç©èª
Google ã®å éšã€ã³ãã©ã¹ãã©ã¯ãã£ã¯éåžžããµãŒãã¹ ã¬ãã« (SLO) ã«åºã¥ããŠããããžã§ãã³ã°ããã枬å®ãããŸãã äœå¹ŽãåãBigtable ã®ãµãŒãã¹ SLO ã¯ãã©ã€ã ã¯ã©ã€ã¢ã³ããã·ãã¥ã¬ãŒãããåæãã©ã³ã¶ã¯ã·ã§ã³ã®å¹³åããã©ãŒãã³ã¹ã«åºã¥ããŠããŸããã Bigtable ãšã¹ãã¬ãŒãž ã¹ã¿ãã¯ã®äžäœã¬ãã«ã®åé¡ã«ãããå¹³åããã©ãŒãã³ã¹ã¯ã倧ããªãããŒã«ã«ãã£ãŠå·Šå³ãããã¯ãšãªã®ææª 5% ãæ®ãã®ã¯ãšãªãããå€§å¹ ã«é ããªãããšããããããŸããã
SLO ãããå€ã«è¿ã¥ããšé»åã¡ãŒã«éç¥ãéä¿¡ãããSLO ãè¶ ãããšã¡ãã»ã³ãžã£ãŒ ã¢ã©ãŒããéä¿¡ãããŸãã ã©ã¡ãã®ã¿ã€ãã®ã¢ã©ãŒããéåžžã«é »ç¹ã«éä¿¡ããã蚱容ã§ããªãã»ã©ã®ãšã³ãžãã¢ãªã³ã°æéãè²»ããããŸãããããŒã ã¯ãå®éã«é¢é£ããå°æ°ã®ã¢ã©ãŒããèŠã€ããããã«ã¢ã©ãŒããåé¡ããã®ã«ããªãã®æéãè²»ãããŸããã ã¢ã©ãŒãã®äžéšã ãããã®ç¹å®ã®åé¡ã«é¢ãããã®ã§ãã£ããããå®éã«ãŠãŒã¶ãŒã«åœ±é¿ãäžããåé¡ãèŠéããŠããŸãããšããããããŸããã ã¢ã©ãŒãã®å€ãã¯ãã€ã³ãã©ã¹ãã©ã¯ãã£ã«ãããç解ã§ããåé¡ã®ããç·æ¥ã§ã¯ãªããæšæºçãªæ¹æ³ã§åŠçããããããŸã£ããåŠçãããŸããã§ããã
ãã®ç¶æ³ãæ¹åããããã«ãããŒã 㯠75 ã€ã®åŽé¢ããã®ã¢ãããŒããæ¡çšããŸãããBigtable ã®ããã©ãŒãã³ã¹ã®åäžã«æžåœã«åãçµã¿ãªãããäžæçã« SLO ç®æšãã¯ãšãªå¿çã¬ã€ãã³ã·ã® XNUMX ããŒã»ã³ã¿ã€ã«ã«èšå®ããŸããã ãŸããé»åã¡ãŒã« ã¢ã©ãŒãã®æ°ãéåžžã«å€ãã蚺æã«æéãè²»ããããšãã§ããªãã£ããããé»åã¡ãŒã« ã¢ã©ãŒãããªãã«ããŸããã
ãã®æŠç¥ã«ãããæŠè¡çãªåé¡ãåžžã«ä¿®æ£ããã®ã§ã¯ãªããäœè£ãæã£ãŠ Bigtable ãšã¹ãã¬ãŒãž ã¹ã¿ãã¯ã®äžäœå±€ã®é·æçãªåé¡ã®ä¿®æ£ãéå§ã§ããããã«ãªããŸããã å®éããšã³ãžãã¢ã¯åžžã«ã¢ã©ãŒãã«ãããããããšãªãä»äºãé²ããããšãã§ããŸããã æçµçã«ãã¢ã©ãŒãåŠçãäžæçã«å»¶æããããšã§ããµãŒãã¹ã®å質ãåäžãããããšãã§ããŸããã
Gmail: äºæž¬å¯èœãªã¢ã«ãŽãªãºã ã«ãã人éã®åå¿
Gmail ã¯åœåãæ€çŽ¢ã€ã³ããã¯ã¹ã®ãã£ã³ã¯ããããåŠçããããã«èšèšããããä¿®æ£ããã Workqueue ããã»ã¹ç®¡çã·ã¹ãã äžã«æ§ç¯ãããŠããŸããã Workqueue ã¯åç¶æéã®é·ãããã»ã¹ã«é©å¿ããããã®åŸ Gmail ã«ãé©çšãããŸããããäžéæãªã¹ã±ãžã¥ãŒã© ã³ãŒãã®ããã€ãã®ãã°ã¯ä¿®æ£ãéåžžã«é£ããããšãå€æããŸããã
åœæãGmail ã®ç£èŠã¯ãWorkqueue ã䜿çšããŠåã ã®ã¿ã¹ã¯ããã£ã³ã»ã«ããããšãã«ã¢ã©ãŒããããªã¬ãŒãããããã«æ§æãããŠããŸããã ãã®ã¢ãããŒãã¯çæ³çã§ã¯ãããŸããã§ããããªããªããåœæã§ã Gmail ã¯äœåãã®ã¿ã¹ã¯ãå®è¡ããããããã®ã¿ã¹ã¯ããŠãŒã¶ãŒã®æ°ããŒã»ã³ãã«æäŸãããŠããããã§ãã ç§ãã¡ã¯ Gmail ãŠãŒã¶ãŒã«åªãããŠãŒã¶ãŒ ãšã¯ã¹ããªãšã³ã¹ãæäŸããããšã«éåžžã«æžå¿µããŠããŸããããéåžžã«å€ãã®ã¢ã©ãŒããåŠçããããšã¯äžå¯èœã§ããã
ãã®åé¡ã«å¯ŸåŠããããã«ãGmail SRE ã¯ãŠãŒã¶ãŒãžã®åœ±é¿ãæå°éã«æããããã«ã¹ã±ãžã¥ãŒã©ã®ãããã°ãå¯èœãªéãæ¯æŽããããŒã«ãäœæããŸããã ããŒã ã§ã¯ãåé¡ã®çºèŠããé·æçãªè§£æ±ºçãèŠã€ãããŸã§ã®ä¿®åŸ©ãŸã§ã®ãµã€ã¯ã«å šäœãåçŽã«èªååãããã©ããã«ã€ããŠè°è«ããŸãããããã®ãããªè§£æ±ºçã§ã¯å®éã«åé¡ã解決ããã®ãé ããã®ã§ã¯ãªãããšæžå¿µãã人ãããŸããã
ãã®ç·åŒµã¯ããŒã å ã§äžè¬çã§ãããå€ãã®å Žåãèªå·±èŠåŸã«å¯Ÿããä¿¡é Œã®æ¬ åŠãåæ ããŠããŸãããäžéšã®ããŒã ã¡ã³ããŒã¯æ£ããä¿®æ£ã«æéãè²»ãããããšèããŠããŸãããä»ã®ã¡ã³ããŒã¯æçµçãªä¿®æ£ãå¿ããããäžæçãªä¿®æ£ã«æ°žé ã«æéããããããšãå¿é ããŠããŸãã ç¶æ³ãæ°žç¶çã«ããã®ã§ã¯ãªããåé¡ãäžæçã«è§£æ±ºããããšãããŸãã«ãç°¡åã§ããããããã®åé¡ã¯æ³šç®ã«å€ããŸãã ãããŒãžã£ãŒãšæè¡ã¹ã¿ããã¯ãé·æçãªä¿®æ£ãå®è£ ããäžã§éèŠãªåœ¹å²ãæãããæåã®ãçã¿ããæ²»ãŸã£ãåŸã§ããé·æçãªå¯èœæ§ã®ããä¿®æ£ããµããŒãããåªå é äœãä»ããŸãã
å®æçã«ç¹°ãè¿ãããã¢ã©ãŒããã¢ã«ãŽãªãºã ã«ããå¿çã¯å±éºä¿¡å·ã§ãã ããŒã ããããã®ã¢ã©ãŒãã®èªååã«æ¶æ¥µçã§ãããšããããšã¯ãããŒã ãã¢ã«ãŽãªãºã ãä¿¡é Œã§ãããšããèªä¿¡ãæ¬ ããŠããããšãæå³ããŸãã ããã¯å¯ŸåŠããå¿ èŠãããæ·±å»ãªåé¡ã§ãã
é·æ
Bigtable ãš Gmail ã®äŸã«å ±éããããŒãã¯ãçæçãªå¯çšæ§ãšé·æçãªå¯çšæ§ã®éã®ç«¶äºã§ãã å€ãã®å Žåã匷åãªåªåã«ãã£ãŠè匱ãªã·ã¹ãã ãé«å¯çšæ§ãéæããããšãã§ããŸããããã®éã¯éåžžçåœã§ãããŒã ã®çãå°œãçå矀ããåãè±éçãªããŒã ã®å°æ°ã®ã¡ã³ããŒãžã®äŸåã䌎ããŸãã
å¯çšæ§ã®å¶åŸ¡ãããçæçãªäœäžã¯å€ãã®å ŽåèŠçã䌎ããŸãããã·ã¹ãã ã®é·æçãªå®å®æ§ã«ãšã£ãŠæŠç¥çã«éèŠã§ãã åã¢ã©ãŒããåå¥ã«èŠãã®ã§ã¯ãªããã¢ã©ãŒãéã®å šäœçãªã¬ãã«ããå®è¡å¯èœãªããŒã ãšè¯å¥œãªäºåŸãåããå¥å šã§é©åã«ã¢ã¯ã»ã¹å¯èœãªã·ã¹ãã ã«ã€ãªãããã©ãããæ€èšããããšãéèŠã§ãã åœç€Ÿã¯ãçµå¶é£ãžã®ååæã¬ããŒãã§ã¢ã©ãŒãé »åºŠã®çµ±èš (éåžžã¯ã·ããããšã®ã€ã³ã·ãã³ããšããŠè¡šçŸãããã€ã³ã·ãã³ãã¯è€æ°ã®é¢é£ã€ã³ã·ãã³ãã§æ§æãããå ŽåããããŸã) ãåæããææ決å®è ãã¢ã©ãŒã ã·ã¹ãã ã®è² è·ãšããŒã å šäœã®å¥å šæ§ãç¶ç¶çã«ææ¡ã§ããããã«ããŸãã
ãŸãšã
å¥å šãªç£èŠãšã¢ã©ãŒããžã®éã¯ã·ã³ãã«ãã€æ確ã§ãã ã¢ã©ãŒããããªã¬ãŒããåé¡ã®çç¶ã«çŠç¹ãåœãŠãŠãããåå ã®ç£èŠã¯åé¡ã®ãããã°ã«åœ¹ç«ã¡ãŸãã ããŒã¿ããŒã¹ã®è² è·ãšããã©ãŒãã³ã¹ã®ç£èŠã¯ããŒã¿ããŒã¹èªäœã§çŽæ¥è¡ãå¿ èŠããããŸãããå¶åŸ¡ããã¹ã¿ãã¯ã®äžäœã«ãªãã»ã©çç¶ã®ç£èŠã¯å®¹æã«ãªããŸãã é»åã¡ãŒã«éç¥ã®æçšæ§ã¯éåžžã«éãããŠããããã€ãºã«ãªããããåŸåããããŸãã 代ããã«ãé»åã¡ãŒã« ã¢ã©ãŒããããªã¬ãŒããçŸåšã®åé¡ããã¹ãŠç£èŠããããã·ã¥ããŒãã䜿çšããå¿ èŠããããŸãã ããã·ã¥ããŒããã€ãã³ã ãã°ãšçµã¿åãããŠãå±¥æŽã®çžé¢é¢ä¿ãåæããããšãã§ããŸãã
é·æçã«ã¯ãç£èŠã«ãã£ãŠè¿ éãªèšºæã確å®ã«ãµããŒããããããã«ç®æšã調æŽããªãããçç¶ãå·®ãè¿«ã£ãå®éã®åé¡ã«é¢ããã¢ã©ãŒããé©åã«ããŒããŒã·ã§ã³ããå¿ èŠããããŸãã
èš³æãæåŸãŸã§èªãã§ããã ãããããšãããããŸãã ã¢ãã¿ãªã³ã°ã«é¢ããç§ã®é»å ±ãã£ã³ãã«ã賌èªããŠãã ãã
åºæïŒ habr.com