27æXNUMXæ¥ã®ã«ã³ãã¡ã¬ã³ã¹ã«ãŠ
äŒçµ±ã«åŸã£ãŠãç§ãã¡ã¯åãã§ã玹ä»ããŸã
ã¬ããŒãã®ãããã¯ãäžèšãã€åæããæåŸããå§ããŸãããã
Kubernetes
ãã¹ãäžã« Docker ã³ã³ããããããšããŸãã äœã®ããã«ïŒ åçŸæ§ãšåé¢æ§ã確ä¿ããããã«ããã·ã³ãã«ã§é©åãªå°å ¥ãå¯èœã«ãªããCI/CDã åœç€Ÿã§ã¯ã³ã³ãããæèŒãããã®ãããªè»äž¡ãå€æ°ä¿æããŠããŸãã
ãã®å ŽåãKubernetes ã¯äœãæäŸããŸãã?
- ç§ãã¡ã¯ãããã®ãã·ã³ã«ã€ããŠèããã®ãããããã¯ã©ãŠãããæ±ãå§ããŸãã ã³ã³ããã®ã¯ã©ã¹ã¿ãŒ ãŸãã¯ããã (ã³ã³ãããŒã®ã°ã«ãŒã)ã
- ããã«ãåã ã®ãããã«ã€ããŠã¯èãããããå€ãã®ãããã管çããŸãПãã倧ããªã°ã«ãŒãã ãã®ãã㪠é«ã¬ãã«ã®ããªããã£ã ç¹å®ã®ã¯ãŒã¯ããŒããå®è¡ããããã®ãã³ãã¬ãŒããããããããå®è¡ããããã«å¿ èŠãªã€ã³ã¹ã¿ã³ã¹ã®æ°ãããã§ãããšããŸãã ãã®åŸãã³ãã¬ãŒããå€æŽãããšããã¹ãŠã®ã€ã³ã¹ã¿ã³ã¹ãå€æŽãããŸãã
- ãšãšãââ㫠宣èšåAPI äžé£ã®ç¹å®ã®ã³ãã³ããå®è¡ãã代ããã«ãKubernetes ã«ãã£ãŠäœæããããäžçã®æ§é ãã (YAML ã§) èšè¿°ããŸãã ç¹°ãè¿ããŸããã説æãå€æŽããããšãå®éã®è¡šç€ºãå€æŽãããŸãã
è³æºç®¡ç
CPU
ãµãŒããŒäžã§ nginxãphp-fpmãmysql ãå®è¡ããŠã¿ãŸãããã ãããã®ãµãŒãã¹ã§ã¯å®éã«ã¯ããã«å€ãã®ããã»ã¹ãå®è¡ãããŠãããããããã«ã³ã³ãã¥ãŒãã£ã³ã° ãªãœãŒã¹ãå¿ èŠã§ãã
(ã¹ã©ã€ãäžã®æ°åã¯ããªãŠã ãã§ãããåããã»ã¹ã®ã³ã³ãã¥ãŒãã£ã³ã°èœåã«å¯Ÿããæœè±¡çãªããŒãºã瀺ããŠããŸã)
ãããæ±ããããããã«ã¯ãããã»ã¹ãã°ã«ãŒãã«çµåããã®ãè«ççã§ã (ããšãã°ããã¹ãŠã® nginx ããã»ã¹ã XNUMX ã€ã®ã°ã«ãŒããnginxãã«ããŸã)ã ãããè¡ãç°¡åãã€æçœãªæ¹æ³ã¯ãåã°ã«ãŒããã³ã³ãããŒã«é 眮ããããšã§ãã
ç¶è¡ããã«ã¯ãã³ã³ãã㌠(Linux ã®å Žå) ãäœã§ããããèŠããŠããå¿
èŠããããŸãã ãããã®å€èŠ³ã¯ãããªãåã«å®è£
ãããã«ãŒãã«ã® XNUMX ã€ã®äž»èŠãªæ©èœã®ãããã§å¯èœã«ãªããŸããã
ã¬ããŒãã®æèã§ã¯ãç§ãã¡ãèå³ãããã®ã¯ã cgroup, ã³ã³ãããŒã« ã°ã«ãŒãã¯ããªãœãŒã¹ç®¡çãå®è£
ããã³ã³ãã㌠(Docker ãªã©) ã®æ©èœã®äžéšã§ããããã§ãã åžæéãã«ã°ã«ãŒãã«ãŸãšããããããã»ã¹ãã³ã³ãããŒã« ã°ã«ãŒãã§ãã
ãããã®ããã»ã¹ã® CPU èŠä»¶ã«æ»ããä»åºŠã¯ããã»ã¹ã®ã°ã«ãŒãã«ã€ããŠèª¬æããŸãã
(ç¹°ãè¿ããŸããããã¹ãŠã®æ°åã¯ãªãœãŒã¹ã®å¿
èŠæ§ãæœè±¡çã«è¡šçŸãããã®ã§ã)
åæã«ãCPU èªäœã«ã¯ç¹å®ã®æéã®ãªãœãŒã¹ããããŸãã (ãã®äŸã§ã¯ 1000 ã§ã)ã誰ããæ¬ ããŠããå¯èœæ§ããããŸãïŒãã¹ãŠã®ã°ã«ãŒãã®ããŒãºã®åèšã¯ 150+850+460=1460 ã§ãïŒã ãã®å Žåã¯ã©ããªãã®ã§ããããïŒ
ã«ãŒãã«ã¯ãªãœãŒã¹ã®é åžãéå§ããããããå ¬å¹³ã«ãå®è¡ããåã°ã«ãŒãã«åãéã®ãªãœãŒã¹ãäžããŸãã ãã ããæåã®ã±ãŒã¹ã§ã¯ãå¿ èŠä»¥äžã«ããããååšãããã (333>150)ãè¶ éå (333-150=183) ãäºåãšããŠæ®ãããããä»ã® XNUMX ã€ã®ã³ã³ãããŒã«åçã«åé ãããŸãã
ãã®çµæãæåã®ã³ã³ãããŒã«ã¯ååãªãªãœãŒã¹ããããXNUMX çªç®ã®ã³ã³ãããŒã«ã¯ååãªãªãœãŒã¹ããªããXNUMX çªç®ã®ã³ã³ãããŒã«ã¯ååãªãªãœãŒã¹ããããŸããã§ããã ããã¯è¡åã®çµæã§ã Linux ã®ãæ£çŽãªãã¹ã±ãžã¥ãŒã© -
XNUMX çªç®ã®ã³ã³ãã㌠(php-fpm) ã§ãªãœãŒã¹ãäžè¶³ããŠããå ŽåãèŠãŠã¿ãŸãããã ãã¹ãŠã®ã³ã³ãã ãªãœãŒã¹ã¯ããã»ã¹éã§åçã«åæ£ãããŸãã ãã®çµæããã¹ã¿ãŒ ããã»ã¹ã¯æ£åžžã«åäœããŸããããã¹ãŠã®ã¯ãŒã«ãŒã®é床ãäœäžããå¿
èŠãªãã®ã®ååæªæºããåä¿¡ããŸããã
ããã CFS ã¹ã±ãžã¥ãŒã©ã®ä»çµã¿ã§ãã ããã«ãã³ã³ããã«å²ãåœãŠãéã¿ã次ã®ããã«åŒã³ãŸãã ãªã¯ãšã¹ãã ãªããããªãã®ã - 詳现ãåç
§ããŠãã ããã
å šäœã®ç¶æ³ãå察åŽããèŠãŠã¿ãŸãããã ãåç¥ã®ãšããããã¹ãŠã®éã¯ããŒãã«éããŠãããã³ã³ãã¥ãŒã¿ã®å Žå㯠CPU ã«éããŠããŸãã XNUMX ã€ã® CPUãå€ãã®ã¿ã¹ã¯ - ä¿¡å·æ©ãå¿ èŠã§ãã ãªãœãŒã¹ã管çããæãç°¡åãªæ¹æ³ã¯ãä¿¡å·æ©ãã§ããã€ãŸããããããã»ã¹ã« CPU ãžã®åºå®ã¢ã¯ã»ã¹æéãäžãã次ã«æ¬¡ã®ããã»ã¹ã«ãšããããã«äžããŸãã
ãã®ã¢ãããŒãã¯ããŒã ã¯ã©ãŒã¿ãšåŒã°ããŸã (ããŒãå¶é)ã åçŽã«ããèŠããŸããã éçã ãã ãããã¹ãŠã®ã³ã³ãããŒã«å¶éãåæ£ãããšãåé¡ãçºçããŸããmysql ã¯éè·¯ãèµ°è¡ããŠããŠãããæç¹ã§ CPU ã®å¿
èŠæ§ãçµäºããŸããããä»ã®ãã¹ãŠã®ããã»ã¹ã¯ CPU ã䜿çšã§ãããŸã§åŸ
æ©ããå¿
èŠããããŸãã ã¢ã€ãã«ç¶æ
.
Linux ã«ãŒãã«ãšãã® CPU ãšã®ããåãã«æ»ããŸããããå
šäœåã¯æ¬¡ã®ãšããã§ãã
cgroup ã«ã¯ XNUMX ã€ã®èšå®ããããŸããåºæ¬çã«ãããã㯠XNUMX ã€ã®åçŽãªãã²ãããã§ã次ã®ããšã決å®ã§ããŸãã
- ã³ã³ããïŒãªã¯ãšã¹ãïŒã®ééã¯ æ ªåŒ;
- ã³ã³ããã¿ã¹ã¯ã®äœæ¥ã«ãããåèš CPU æéã®å²å (å¶é) ã¯æ¬¡ã®ãšããã§ãã ã¯ã©ãŒã¿.
CPUã枬å®ããã«ã¯ã©ãããã°ããã§ãã?
ããŸããŸãªæ¹æ³ããããŸãã
- äœã§ãã ãªãŠã ã誰ãç¥ããŸãã - æ¯å亀æžããå¿ èŠããããŸãã
- èå³ ããæ確ã§ãããçžå¯Ÿçã§ãã50 ã³ã¢ã®ãµãŒããŒãš 4 ã³ã¢ã®ãµãŒããŒã® 20% ã¯å®å šã«ç°ãªããŸãã
- ãã§ã«è¿°ã¹ããã®ã䜿çšã§ããŸã äœéãLinux ã¯ãããèªèããŠããŸããããããã¯çžå¯Ÿçãªãã®ã§ããããŸãã
- æãé©åãªãªãã·ã§ã³ã¯ãã³ã³ãã¥ãŒãã£ã³ã° ãªãœãŒã¹ã枬å®ããããšã§ãã ç§ã ãããã®ã ãªã¢ã«ã¿ã€ã ã®ç§æ°ã«å¯Ÿããããã»ããµæéã®ç§æ°: 1 ç§ãããã®ããã»ããµæé㯠1 ç§ãããã«äžããããŸãããã㯠XNUMX ã€ã® CPU ã³ã¢å šäœã«çžåœããŸãã
ããã«è©±ããããããããã«ã圌ãã¯çŽæ¥æž¬å®ãå§ããŸããã ã«ãŒãã«ãã€ãŸããå®éã® CPU æéãšæ¯èŒããŠåã CPU æéãæå³ããŸãã Linux ã¯éã¿ãç解ããŸãããCPU æé/ã³ã¢ã¯ããŸãç解ã§ããªããããäžæ¹ããä»æ¹ã«å€æããã¡ã«ããºã ãå¿ èŠã§ããã
3 ã€ã® CPU ã³ã¢ãæã€ãµãŒããŒã®ç°¡åãªäŸãèããŠã¿ãŸãããã500 ã€ã®ãããã«ã¯éã¿ (1000ã1500ãããã³ 0,5) ãäžãããããããã®ãããã¯ããããã«å²ãåœãŠãããã³ã¢ã®å¯Ÿå¿ããéšå (1ã1,5ãããã³ XNUMX) ã«ç°¡åã«å€æãããŸãã
ã³ã¢ã®æ°ã 6 å (2) ã«ãªã 1 çªç®ã®ãµãŒããŒãçšæããããã«åãããããé
眮ãããšãåçŽã« 2 ãæããã ãã§ã³ã¢ã®åæ£ãç°¡åã«èšç®ã§ããŸã (ãããã 3ã3000ãXNUMX)ã ãããããã®ãµãŒããŒã« XNUMX çªç®ã®ãããã衚瀺ããããšãã«éèŠãªç¬éãçºçããŸãã䟿å®äžããã®éã¿ã¯ XNUMX ã«ãªããŸããããã«ãã CPU ãªãœãŒã¹ã®äžéš (ã³ã¢ã®åå) ã奪ãããæ®ãã®ãããã«ã€ããŠã¯åèšç® (åå) ãããŸãã
Kubernetes ãš CPU ãªãœãŒã¹
Kubernetes ã§ã¯ãéåžžãCPU ãªãœãŒã¹ã¯æ¬¡ã®åäœã§æž¬å®ãããŸãã ããªã¢ãã©ãã¯ã¹ãã€ãŸã0,001 ã³ã¢ãåºæ¬ééãšããŠäœ¿çšãããŸãã (Linux/cgroups çšèªã§ã¯åããã®ã CPU ã·ã§ã¢ãšåŒã³ãŸãããããæ£ç¢ºã«ã¯ 1000 ããªã³ã¢ = 1024 CPU ã·ã§ã¢ã§ãã) K8s ã¯ããã¹ãŠã®ãããã®éã¿ã®åèšã«çžåœãã CPU ãªãœãŒã¹ãè¶ ãããããããµãŒããŒäžã«é 眮ããªãããã«ããŸãã
ããã¯ã©ãããŠèµ·ããã®ã§ãããã? Kubernetes ã¯ã©ã¹ã¿ãŒã«ãµãŒããŒãè¿œå ãããšã䜿çšå¯èœãª CPU ã³ã¢ã®æ°ãå ±åãããŸãã æ°ããããããäœæãããšããKubernetes ã¹ã±ãžã¥ãŒã©ã¯ããã®ãããã«å¿ èŠãªã³ã¢ã®æ°ãèªèããŸãã ãããã£ãŠããããã¯ååãªã³ã¢ããããµãŒããŒã«å²ãåœãŠãããŸãã
ã©ããªãã ã㌠ãªã¯ãšã¹ããæå®ãããŠããŸãã (ã€ãŸãããããã«å¿ èŠãªã³ã¢ã®æ°ãå®çŸ©ãããŠããŸãã)? Kubernetes ãäžè¬çã«ã©ã®ããã«ãªãœãŒã¹ãã«ãŠã³ãããããèŠãŠã¿ãŸãããã
ãããã®å Žåããªã¯ãšã¹ã (CFS ã¹ã±ãžã¥ãŒã©) ãšå¶é (ä¿¡å·æ©ãèŠããŠããŸãã?) ã®äž¡æ¹ãæå®ã§ããŸãã
- ããããçãããšæå®ãããå Žåããããã«ã¯ QoS ã¯ã©ã¹ãå²ãåœãŠãããŸãã ä¿èšŒã åžžã«å©çšå¯èœãªãã®æ°ã®ã³ã¢ãä¿èšŒãããŠããŸãã
- ãªã¯ãšã¹ããå¶éå€æªæºã®å Žå - QoS ã¯ã©ã¹ ç Žè£ããããã ãããã®ã ããšãã°ããããã¯åžžã« 1 ã³ã¢ã䜿çšããããšãäºæ³ãããŸããããã®å€ã¯å¶éã§ã¯ãããŸããã æã ãããã¯ããã«å€ãã®ãªãœãŒã¹ã䜿çšã§ããŸã (ãµãŒããŒã«ç©ºããªãœãŒã¹ãããå Žå)ã
- QoSã¯ã©ã¹ããããŸã ãã¹ããšãã©ãŒã â ãªã¯ãšã¹ããæå®ãããŠããªãããããã®ãã®ãå«ãŸããŸãã ãªãœãŒã¹ã¯æåŸã«äžããããŸãã
ã¡ã¢ãª
ã¡ã¢ãªã®å Žåãç¶æ³ã¯äŒŒãŠããŸããããããã«ç°ãªããŸããçµå±ã®ãšããããããã®ãªãœãŒã¹ã®æ§è³ªã¯ç°ãªããŸãã äžè¬ã«ããã®é¡æšã¯æ¬¡ã®ãšããã§ãã
ãªã¯ãšã¹ããã¡ã¢ãªå
ã§ã©ã®ããã«å®è£
ãããããèŠãŠã¿ãŸãããã ããããã®ãããã倧ãããªããããŠã¡ã¢ãªãäžè¶³ãããŸã§ããããããµãŒããŒäžã«åžžé§ãããã¡ã¢ãªæ¶è²»éãå€æŽããŸãã ãã®å ŽåãOOM ãã©ãŒãçŸããæ倧ã®ããã»ã¹ã匷å¶çµäºããŸãã
ããã¯åžžã«ç§ãã¡ã«é©ããŠããããã§ã¯ãªããããã©ã®ããã»ã¹ãç§ãã¡ã«ãšã£ãŠéèŠã§ã匷å¶çµäºãã¹ãã§ã¯ãªãããèŠå¶ããããšãå¯èœã§ãã ãããè¡ãã«ã¯ããã©ã¡ãŒã¿ã䜿çšããŸã oom_score_adj.
CPU ã® QoS ã¯ã©ã¹ã«æ»ã£ãŠããããã®ã¡ã¢ãªæ¶è²»ã®åªå é äœã決å®ãã oom_score_adj å€ããé¡æšããŠã¿ãŸãããã
- ãããã®æãäœã oom_score_adj å€ - 998 - ã¯ããã®ãããªããããæåŸã«åŒ·å¶çµäºãããå¿ èŠãããããšãæå³ããŸãã ä¿èšŒ.
- æé«ã® - 1000 - 㯠ãã¹ããšãã©ãŒãããã®ãããªãããã¯æåã«åŒ·å¶çµäºãããŸãã
- æ®ãã®å€ãèšç®ããã«ã¯(ç Žè£ããããïŒå ¬åŒãããããã®æ¬è³ªã¯ãããããããå€ãã®ãªãœãŒã¹ãèŠæ±ããã»ã©ããããã匷å¶çµäºãããå¯èœæ§ãäœããªããšããäºå®ã«èŠçŽãããŸãã
XNUMXçªç®ã®ãã²ããã - ãã€ãæ°ã®å¶é - éçã®ããã«ã ããã䜿çšãããšããã¹ãŠãç°¡åã«ãªããŸããçºè¡ãããã¡ã¢ãªã®æ倧éãå²ãåœãŠãã ãã§ãããããã§ã¯ïŒCPU ãšã¯ç°ãªãïŒããïŒã¡ã¢ãªïŒãã©ã®ããã«æž¬å®ããããšããåé¡ã¯ãããŸããã
åèšã§
Kubernetes ã®åãããã«ã¯æ¬¡ã®ãã®ãäžããããŸã requests
О limits
- CPU ãšã¡ã¢ãªã®äž¡æ¹ã®ãã©ã¡ãŒã¿:
- ãªã¯ãšã¹ãã«åºã¥ããŠãKubernetes ã¹ã±ãžã¥ãŒã©ãæ©èœãããµãŒããŒéã§ããããåæ£ããŸãã
- ãã¹ãŠã®ãã©ã¡ãŒã¿ã«åºã¥ããŠããããã® QoS ã¯ã©ã¹ã決å®ãããŸãã
- çžå¯Ÿçãªéã¿ã¯ CPU ãªã¯ãšã¹ãã«åºã¥ããŠèšç®ãããŸãã
- CFS ã¹ã±ãžã¥ãŒã©ã¯ CPU ãªã¯ãšã¹ãã«åºã¥ããŠèšå®ãããŸãã
- OOM ãã©ãŒã¯ã¡ã¢ãªèŠæ±ã«åºã¥ããŠæ§æãããŸãã
- ãä¿¡å·æ©ã㯠CPU ã®å¶éã«åºã¥ããŠèšå®ãããŸãã
- ã¡ã¢ãªå¶éã«åºã¥ããŠãcgroup ã«å¶éãèšå®ãããŸãã
äžè¬ã«ããã®å³ã¯ããªãœãŒã¹ç®¡çã®äž»èŠéšåã Kubernetes ã§ã©ã®ããã«è¡ããããã«é¢ãããã¹ãŠã®è³ªåã«çããŸãã
èªåã¹ã±ãŒãªã³ã°
K8s ã¯ã©ã¹ã¿ãŒ ãªãŒãã¹ã±ãŒã©ãŒ
ã¯ã©ã¹ã¿ãŒå šäœããã§ã«å æãããŠãããæ°ããããããäœæããå¿ èŠããããšæ³åããŠã¿ãŸãããã ãããã衚瀺ãããªãéãã¹ããŒã¿ã¹ããã³ã°ã¢ããããŸã ä¿çäžã ããã衚瀺ããã«ã¯ãæ°ãããµãŒããŒãã¯ã©ã¹ã¿ãŒã«æ¥ç¶ããããã¯ã©ã¹ã¿ãŒ ãªãŒãã¹ã±ãŒã©ãŒãã€ã³ã¹ããŒã«ããŸããããã¯èªåçã«å®è¡ãããŸããã¯ã©ãŠã ãããã€ããŒãã (API ãªã¯ãšã¹ãã䜿çšããŠ) ä»®æ³ãã·ã³ã泚æããã¯ã©ã¹ã¿ãŒã«æ¥ç¶ããŸãããã®åŸãããããè¿œå ãããŸãã
ãã㯠Kubernetes ã¯ã©ã¹ã¿ãŒã®èªåã¹ã±ãŒãªã³ã°ã§ããã(ç§ãã¡ã®çµéšã§ã¯) ããŸãæ©èœããŸãã ãã ããä»ã®å Žæãšåæ§ã«ãããã§ãããã€ãã®ãã¥ã¢ã³ã¹ããããŸã...
ã¯ã©ã¹ã¿ãŒã®ãµã€ãºãå¢ãããŠããéãã¯ãã¹ãŠåé¡ãããŸããã§ããããã¯ã©ã¹ã¿ãŒã®ãµã€ãºã倧ãããªããšäœãèµ·ããã§ããããã èªåèªèº«ã解æŸãå§ãã? åé¡ã¯ã(ãã¹ãã解æŸããããã®) ãããã®ç§»è¡ãæè¡çã«éåžžã«é£ããããªãœãŒã¹ã®ç¹ã§é«äŸ¡ã§ããããšã§ãã Kubernetes ã¯ãŸã£ããç°ãªãã¢ãããŒãã䜿çšããŸãã
ãããã€ã¡ã³ããåãã 3 å°ã®ãµãŒããŒãããªãã¯ã©ã¹ã¿ãŒãèããŠã¿ãŸãããã ããã㯠6 ã€ãããŸããçŸåšã¯åãµãŒããŒã« 2 ã€ãããŸãã äœããã®çç±ã§ããµãŒããŒã® XNUMX ã€ããªãã«ããããšèããŸããã ãããè¡ãã«ã¯ã次ã®ã³ãã³ãã䜿çšããŸã kubectl drain
ã ã©ãã®ïŒ
- ãã®ãµãŒããŒã«æ°ããããããéä¿¡ããããšãçŠæ¢ããŸãã
- ãµãŒããŒäžã®æ¢åã®ããããåé€ããŸãã
Kubernetes ã¯ãããã®æ° (6) ãç¶æãã責任ããããããåã« åäœæããŸã ãããã¯ä»ã®ããŒãã«ã¯ãããŸãããç¡å¹ã«ãªã£ãŠããããŒãã«ã¯ãããŸãããããã¯ãæ°ãããããããã¹ãããããã«ãã§ã«äœ¿çšäžå¯ãšããŠããŒã¯ãããŠããããã§ãã ãã㯠Kubernetes ã®åºæ¬çãªä»çµã¿ã§ãã
ãã ããããã«ããã¥ã¢ã³ã¹ããããŸãã åæ§ã®ç¶æ³ã§ã(Deployment ã§ã¯ãªã) StatefulSet ã®å Žåãã¢ã¯ã·ã§ã³ã¯ç°ãªããŸãã ããã§ããã§ã«ã¹ããŒããã« ã¢ããªã±ãŒã·ã§ã³ãå®æããŸãããããšãã°ãMongoDB ãåãã XNUMX ã€ã®ããããããããã®ãã¡ã® XNUMX ã€ã«ã¯äœããã®åé¡ããããŸã (ããŒã¿ãç ŽæããŠããããããããæ£ããèµ·åã§ããªãå¥ã®ãšã©ãŒããããŸã)ã ãããŠãåã³ XNUMX å°ã®ãµãŒããŒãç¡å¹ã«ããããšã«ããŸããã äœãèµ·ãããïŒ
MongoDBã® ã§ãã ã¯ã©ãŒã©ã ãå¿
èŠãªãããåæ¢ããŸããXNUMX ã€ã®ã€ã³ã¹ããŒã«ãããªãã¯ã©ã¹ã¿ãŒã®å Žåãå°ãªããšã XNUMX ã€ãæ©èœããå¿
èŠããããŸãã ãã ãããã㯠起ããŠããŸãã -ããããšã ãããäžæäºç®ã ãã®ãã©ã¡ãŒã¿ã¯ãåäœãããããã®æå°å¿
èŠæ°ã決å®ããŸãã MongoDB ãããã® XNUMX ã€ãåäœããªããªã£ãŠããããšãããããPodDisruptionBudget ã MongoDB ã«èšå®ãããŠããããšã確èªããŸãã minAvailable: 2
, Kubernetes ã§ã¯ããããåé€ããããšã¯ã§ããŸããã
çµè«: ã¯ã©ã¹ã¿ãŒã解æŸããããšãã«ãããã®ç§»å (å®éã«ã¯åäœæ) ãæ£ããæ©èœããã«ã¯ãPodDisruptionBudget ãæ§æããå¿ èŠããããŸãã
æ°Žå¹³ã¹ã±ãŒãªã³ã°
å¥ã®ç¶æ³ãèããŠã¿ãŸãããã Kubernetes ã§ãããã€ã¡ã³ããšããŠå®è¡ãããŠããã¢ããªã±ãŒã·ã§ã³ããããŸãã ãŠãŒã¶ãŒ ãã©ãã£ãã¯ã¯ããã (ããšãã°ããããã XNUMX ã€ãããŸã) ã«å°çãããããå ã®ç¹å®ã®ææš (CPU è² è·ãªã©) ã枬å®ããŸãã è² è·ãå¢å ããå Žåã¯ãã¹ã±ãžã¥ãŒã«ã«èšé²ãããªã¯ãšã¹ããåæ£ãããããã®æ°ãå¢ãããŸãã
çŸåšã® Kubernetes ã§ã¯ããããæåã§è¡ãå¿ èŠã¯ãããŸããããããæ°ã®èªåå¢æžã¯ã枬å®ãããè² è·ã€ã³ãžã±ãŒã¿ãŒã®å€ã«å¿ããŠæ§æãããŸãã
ããã§ã®äž»ãªè³ªåã¯æ¬¡ã®ãšããã§ãã æ£ç¢ºã«äœã枬å®ããã О ã©ã解éããã ååŸããå€ (ãããã®æ°ã®å€æŽã決å®ãããã)ã å€ãã®ããšã枬å®ã§ããŸãã
ãããæè¡çã«è¡ãæ¹æ³ - ã¡ããªã¯ã¹ã®åéãªã©ã ââã¬ããŒãã§ã詳ããã話ããŸãããã
ãã
代ããã«ãçµè«ã®
ãã®ã¬ããŒãã«ã¯ãåçŽæ¹åã®ã¹ã±ãŒãªã³ã°ãšé©åãªãªãœãŒã¹ã®éžææ¹æ³ã«ã€ããŠã®ç¶ãããããŸãã ããã«ã€ããŠã¯ä»åŸã®ãããªã§ã話ããŸã
ãããªãšã¹ã©ã€ã
ããã©ãŒãã³ã¹ã®ãã㪠(44 å):
å ±åæžã®ãã¬ãŒã³ããŒã·ã§ã³:
PS
Kubernetes ã«é¢ãããã®ä»ã®ã¬ããŒãã¯ããã°ã«ãããŸãã
- «
Kubernetesã®æ¡åŒµãšè£å® » (Andrey Polovovã8 幎 2019 æ XNUMX æ¥ãSaint HighLoad++); - «
ããŒã¿ããŒã¹ãšKubernetes » (Dmitry Stolyarovã8 幎 2018 æ XNUMX æ¥ HighLoad++); - «
ã¢ãã¿ãªã³ã°ãšKubernetes » (ããããªãŒã»ã¹ããªã£ããã28 幎 2018 æ XNUMX æ¥ãRootConf ã«ãŠ); - «
Kubernetes ãš GitLab ã䜿çšãã CI/CD ã®ãã¹ã ãã©ã¯ãã£ã¹ » (Dmitry Stolyarovã7 幎 2017 æ XNUMX æ¥ HighLoad++); - «
å°èŠæš¡ãããžã§ã¯ãã«ããã Kubernetes ã®çµéš » (ããããªãŒã»ã¹ããªã£ããã6 幎 2017 æ XNUMX æ¥ãRootConf ã«ãŠ).
åºæïŒ habr.com