ç§ã®åå㯠Viktor Yagofarov ã§ããDomClick 㧠Ops (éçš) ããŒã ã®æè¡éçºãããŒãžã£ãŒãšã㊠Kubernetes ãã©ãããã©ãŒã ãéçºããŠããŸãã ç§ãã¡ã® Dev <-> Ops ããã»ã¹ã®æ§é ããã·ã¢æ倧㮠k8s ã¯ã©ã¹ã¿ãŒã® XNUMX ã€ãéçšããç¹åŸŽããããŠç§ãã¡ã®ããŒã ãé©çšããŠãã DevOps/SRE ã®å®è·µã«ã€ããŠã話ããããšæããŸãã
äœæŠããŒã
éçšããŒã ã«ã¯çŸåš 15 人ãããŸãã ãã®ãã¡ XNUMX 人ã¯ãªãã£ã¹ãæ åœããŠãããXNUMX 人ã¯å¥ã®æé垯ã§å€åããŠãããå€éãå«ããŠå€åå¯èœã§ãã ãããã£ãŠãéçšéšéã®èª°ããåžžã«ç£èŠããŠãããããããè€éãªã€ã³ã·ãã³ãã«å¯Ÿå¿ããæºåãã§ããŠããŸãã ç§ãã¡ã«ã¯å€å€ããªãã®ã§ã粟ç¥ãä¿ããã誰ããååãªç¡ç ããšããã³ã³ãã¥ãŒã¿ãŒã«åããã ãã§ãªãäœæãéããæ©äŒãäžããããŸãã
ãããã¯ãŒã«ãŒãDBAãELK ã¹ã¿ã㯠ã¹ãã·ã£ãªã¹ããKubernetes 管çè
/éçºè
ãã¢ãã¿ãªã³ã°ãä»®æ³åãããŒããŠã§ã¢ ã¹ãã·ã£ãªã¹ããªã©ã誰ããç°ãªãèœåãæã£ãŠããŸãã 8 ã€ã®ããšãå
šå¡ãå£çµãããŸã - 誰ããããçšåºŠç§ãã¡ã®èª°ãã眮ãæããããšãã§ããŸããããšãã°ãkXNUMXs ã¯ã©ã¹ã¿ãŒã«æ°ããããŒããå°å
¥ããPostgreSQL ãæŽæ°ããCI/CD + Ansible ãã€ãã©ã€ã³ãäœæããPython/Bash/Go ã§äœããèªååããããŒããŠã§ã¢ãããŒã¿ã»ã³ã¿ãŒã ã©ã®åéã§ãåªããèœåãæã£ãŠããŠãã掻åã®æ¹åæ§ãå€ããŠä»ã®åéã§æ¹åãå§ããããšãã§ããŸãã ããšãã°ãç§ã¯ PostgreSQL ã¹ãã·ã£ãªã¹ããšããŠäŒç€Ÿã«å
¥ç€ŸããçŸåšã¯ Kubernetes ã¯ã©ã¹ã¿ãŒãäž»ã«æ
åœããŠããŸãã ããŒã ã§ã¯ã©ããªèº«é·ã§ãæè¿ããã圱é¿åã®æèŠãéåžžã«çºéããŠããŸãã
ã¡ãªã¿ã«ç§ãã¡ã¯ç©ããããŠããŸãã åè£è ã«å¯ŸããèŠä»¶ã¯éåžžã«æšæºçã§ãã ç§å人ã«ãšã£ãŠã¯ããã®äººãããŒã ã«é©å¿ãã察ç«ããªããèªåã®èŠç¹ãå®ãæ¹æ³ãç¥ã£ãŠãããæé·ããããšèããæ°ããããšãããããšãæãããã¢ã€ãã¢ãæäŸã§ããããšãéèŠã§ãã ãŸããã¹ã¯ãªããèšèªã®ããã°ã©ãã³ã°ã¹ãã«ãLinux ã®åºç€ãè±èªã®ç¥èãå¿ èŠã§ãã è±èªãå¿ èŠãªã®ã¯ãåã«ãã¡ã«ãããçºçãããšãã«ãGoogle ã§åé¡ã®è§£æ±ºçã 10 åã§ã¯ãªã 10 ç§ã§æ€çŽ¢ã§ããããã«ããããã§ãã çŸåšãLinux ã«ã€ããŠæ·±ãç¥èãæã€å°é家ãèŠã€ããã®ã¯éåžžã«å°é£ã§ããããããªè©±ã§ãããåè£è ã® XNUMX äººäž XNUMX 人ããè² è·å¹³åãšã¯äœã§ãã?ããšãã質åã«çããããšãã§ããŸããã ããã¯äœã§ã§ããŠããŸãã?ãããC ããã°ã©ã ããã³ã¢ ãã³ããã¢ã»ã³ãã«ããæ¹æ³ããšãã質åã¯ãã¹ãŒããŒãã³ãæç«ã®äžçã®ãã®ãšèããããŸãã éåžžã人ã ã¯ä»ã®èœåãé«åºŠã«çºéãããŠãããããããã¯ææ ¢ããªããã°ãªããŸããããç§ãã¡ã¯ Linux ãæããŸãã ãçŸä»£ã®ã¯ã©ãŠãã®äžçã«ãããŠããªã DevOps ãšã³ãžãã¢ãããããã¹ãŠãç¥ãå¿ èŠãããã®ãââããšãã質åã«å¯Ÿããçãã¯ããã®èšäºã®ç¯å²å€ã«çœ®ãå¿ èŠããããŸãããXNUMX ã€ã®èšèã§èšãã°ããããã¯ãã¹ãŠå¿ èŠã§ããã§ãã
ããŒã ããŒã«
ããŒã« ããŒã ã¯èªååã«ãããŠéèŠãªåœ¹å²ãæãããŸãã 圌ãã®äž»ãªä»»åã¯ãéçºè ã«ãšã£ãŠäŸ¿å©ãªã°ã©ãã£ã«ã« ããŒã«ã CLI ããŒã«ãäœæããããšã§ãã ããšãã°ã瀟å éçºã® Confer ã䜿çšãããšãããŠã¹ãæ°åã¯ãªãã¯ããã ãã§æåéãã¢ããªã±ãŒã·ã§ã³ã Kubernetes ã«ããŒã«ã¢ãŠããããã®ãªãœãŒã¹ãããŒã«ãããã®ããŒãªã©ãæ§æã§ããŸãã 以å㯠Jenkins + Helm 2 ããããŸããããã³ããŒïŒããŒã¹ããæé€ããŠãœãããŠã§ã¢ ã©ã€ããµã€ã¯ã«ã«çµ±äžæ§ãããããããã«ç¬èªã®ããŒã«ãéçºããå¿ èŠããããŸããã
Ops ããŒã ã¯éçºè åãã«ãã€ãã©ã€ã³ãäœæããŸããããäœæäžã®åé¡ã«ã€ããŠã¢ããã€ã¹ããããšã¯ã§ããŸã (ãŸã Helm 3 ã䜿çšããŠãã人ãããŸã)ã
DevOps
DevOps ã«ã€ããŠã¯ã次ã®ããã«ãªããŸãã
éçºããŒã ã¯ã³ãŒããäœæããéçº -> QA/ã¹ããŒãž -> 補åãžã®äŒè°ãéããŠå±éããŸãã ã³ãŒãã®é床ãäœäžããããšã©ãŒãå«ãŸããŠããªãããšã確èªãã責任ã¯ãéçºããŒã ãšéçšããŒã ã«ãããŸãã æ¥äžã¯ãéçšããŒã ã®æ åœè ããŸãã¢ããªã±ãŒã·ã§ã³ã®ã€ã³ã·ãã³ãã«å¯Ÿå¿ããå¿ èŠããããŸããå€æ¹ãšå€éã«ã¯ãåœçªã®ç®¡çè (Ops) ãæ°ã¥ããå Žåã¯å€åäžã®éçºè ãèµ·ããå¿ èŠããããŸããåé¡ãã€ã³ãã©ã¹ãã©ã¯ãã£ã«ããã®ã§ã¯ãªãããšã確èªããŠãã ããã ã¢ãã¿ãªã³ã°ã®ãã¹ãŠã®ã¡ããªã¯ã¹ãšã¢ã©ãŒãã¯ãèªåçãŸãã¯åèªåçã«è¡šç€ºãããŸãã
éçšéšéã®è²¬ä»»ç¯å²ã¯ãã¢ããªã±ãŒã·ã§ã³ãéçšç°å¢ã«å±éãããç¬éããå§ãŸããŸãããéçºè ã®è²¬ä»»ã¯ããã§çµãããŸãããç§ãã¡ã¯åãããšãè¡ããåãç«å Žã«ãããŸãã
éçºè ã¯ã管ççšãã€ã¯ããµãŒãã¹ (Go ããã¯ãšã³ã + HTML5 ãªã©) ã®äœæã«ãµããŒããå¿ èŠãªå Žåã«ç®¡çè ã«ã¢ããã€ã¹ãã管çè ã¯ã€ã³ãã©ã¹ãã©ã¯ãã£ã®åé¡ã k8s ã«é¢é£ããåé¡ã«ã€ããŠéçºè ã«ã¢ããã€ã¹ããŸãã
ã¡ãªã¿ã«ãç§ãã¡ã¯ã¢ããªã¹ããŸã£ããæã£ãŠãããããã€ã¯ããµãŒãã¹ã ããæã£ãŠããŸãã æ°ã§æž¬å®ãããšããããŸã§ã®ãšãããprod k900s ã¯ã©ã¹ã¿ãŒå ã®ãã®æ°ã¯ 1000 ãã 8 ã®éã§å€åããŠããŸãã é åã ãããã®æ°ã¯ 1700 ïœ 2000 ã®éã§å€åããŸããçŸåšãæ¬çªã¯ã©ã¹ã¿ãŒã«ã¯çŽ 2000 ã®ãããããããŸãã
äžèŠãªãã€ã¯ããµãŒãã¹ãç£èŠããåèªåçã«åé€ãããããæ£ç¢ºãªæ°åã¯èšããŸããã K8s ã¯äžèŠãªãšã³ãã£ãã£ã远跡ããã®ã«åœ¹ç«ã¡ãŸã
è³æºç®¡ç
ç£èŠ
é©åã«æ§é åãããæçãªç£èŠã¯ã倧èŠæš¡ã¯ã©ã¹ã¿ãŒã®éçšã®åºç€ãšãªããŸãã ãã¹ãŠã®ç£èŠããŒãºã 100% ã«ããŒããæ®éçãªãœãªã¥ãŒã·ã§ã³ã¯ãŸã èŠã€ãã£ãŠããªãããããã®ç°å¢ã§ã¯ããŸããŸãªã«ã¹ã¿ã ãœãªã¥ãŒã·ã§ã³ãå®æçã«äœæããŠããŸãã
- ã¶ããã¯ã¹ã å€ãè¯ãç£èŠãäž»ã«ã€ã³ãã©ã¹ãã©ã¯ãã£ã®å
šäœçãªç¶æ
ã远跡ããããšãç®çãšããŠããŸãã ããã¯ãåŠçãã¡ã¢ãªããã£ã¹ã¯ããããã¯ãŒã¯ãªã©ã®èŠ³ç¹ããããŒãããã€åæ¢ãããã瀺ããŸãã è¶
èªç¶çãªããšã¯äœããããŸãããããšãŒãžã§ã³ãã®åå¥ã® DaemonSet ãããããããå©çšããŠãããšãã°ã¯ã©ã¹ã¿ãŒå
ã® DNS ã®ç¶æ
ãç£èŠããŸããæã㪠coredns ããããæ¢ããå€éšãã¹ãã®å¯çšæ§ããã§ãã¯ããŸãã ãªããããããããè¡ãå¿
èŠãããã®ãââãšæããããããããŸãããã倧éã®ãã©ãã£ãã¯ãçºçãããšããã®ã³ã³ããŒãã³ãã¯é倧ãªé害ç¹ã«ãªããŸãã ç§ã¯ãã
説æããã ãã¯ã©ã¹ã¿ãŒå ã® DNS ããã©ãŒãã³ã¹ã«ã©ã®ããã«èŠåŽãããã - ããã¡ããŠã¹ãªãã¬ãŒã¿ãŒã ããŸããŸãªãšã¯ã¹ããŒã¿ãŒã®ã»ããã«ãããã¯ã©ã¹ã¿ãŒã®ãã¹ãŠã®ã³ã³ããŒãã³ãã®æŠèŠãããããŸãã 次ã«ãããããã¹ãŠã Grafana ã®å€§ããªããã·ã¥ããŒãã§èŠèŠåããã¢ã©ãŒãã«ã¢ã©ãŒããããŒãžã£ãŒã䜿çšããŸãã
ç§ãã¡ã«ãšã£ãŠãã XNUMX ã€ã®äŸ¿å©ãªããŒã«ã¯ã
ãã¥ãŒãå ã®ããŒã ãªãœãŒã¹
äŸã«å ¥ãåã«ããªãœãŒã¹ãã©ã®ããã«å²ãåœãŠããã説æãã䟡å€ããããŸãã ãã€ã¯ããµãŒãã¹.
ã©ã®ããŒã ãã©ã®ãããã®éã䜿çšããŠããããç解ãããã ÑеÑÑÑÑÑ (ããã»ããµãã¡ã¢ãªãããŒã«ã« SSD)ãåã³ãã³ããç¬èªã«å²ãåœãŠãŸãã åå空é ããŒã ã®ããŒãºãäºåã«è°è«ããäžã§ããCubeãã®ããã»ããµãã¡ã¢ãªããã£ã¹ã¯ã®æ倧èœåãå¶éããŸãã ãããã£ãŠãéåžžãXNUMX ã€ã®ã³ãã³ãã§ã¯ã©ã¹ã¿ãŒå šäœã®å±éããããã¯ããããæ°åã®ã³ã¢ãšãã©ãã€ãã®ã¡ã¢ãªãå²ãåœãŠãããŸãã åå空éãžã®ã¢ã¯ã»ã¹ã¯ AD ãéããŠèš±å¯ãããŸã (RBAC ã䜿çšããŸã)ã åå空éãšãã®å¶éã¯ããã« ãªã¯ãšã¹ããéã㊠GIT ãªããžããªã«è¿œå ããããã¹ãŠã Ansible ãã€ãã©ã€ã³ãéããŠèªåçã«ããŒã«ã¢ãŠããããŸãã
ããŒã ã«ãªãœãŒã¹ãå²ãåœãŠãäŸ:
namespaces:
chat-team:
pods: 23
limits:
cpu: 11
memory: 20Gi
requests:
cpu: 11
memory: 20Gi
ãªã¯ãšã¹ããšå¶é
ç«æ¹äœã ãªã¯ãšã¹ã ä¿èšŒãããŠããäºçŽãªãœãŒã¹ã®æ°ã§ãã ããã ã¯ã©ã¹ã¿ãŒå ã® (XNUMX ã€ä»¥äžã® Docker ã³ã³ãããŒ)ã å¶éå€ã¯ä¿èšŒãããŠããªãæ倧å€ã§ãã ã°ã©ããèŠããšãäžéšã®ããŒã ããã¹ãŠã®ã¢ããªã±ãŒã·ã§ã³ã«å¯ŸããŠå€ããããªã¯ãšã¹ããèšå®ããŠãããåå空éå ã®ãã¹ãŠã®ãªã¯ãšã¹ãããã§ã«ã䜿çšãããŠããããããã¢ããªã±ãŒã·ã§ã³ãããã¥ãŒããã«ãããã€ã§ããªãæ§åãããããããŸãã
ãã®ç¶æ³ããæãåºãæ£ããæ¹æ³ã¯ãå®éã®ãªãœãŒã¹æ¶è²»éã確èªãããããèŠæ±ãããé (ãªã¯ãšã¹ã) ãšæ¯èŒããããšã§ãã
äžã®ã¹ã¯ãªãŒã³ã·ã§ããã§ã¯ããèŠæ±ããããCPU ãå®éã®ã¹ã¬ããæ°ãšäžèŽããŠãããå¶éãå®éã® CPU ã¹ã¬ããæ°ãè¶
ããå¯èœæ§ãããããšãããããŸã =)
次ã«ãããã€ãã®åå空éã詳现ã«èŠãŠã¿ãŸããã (ç§ã¯åå空é kube-system ãéžæããŸãã - ãCubeãèªäœã®ã³ã³ããŒãã³ãã®ã·ã¹ãã åå空éã§ã)ãèŠæ±ããããã®ã«å¯Ÿããå®éã«äœ¿çšãããããã»ããµæéãšã¡ã¢ãªã®æ¯çã確èªããŠã¿ãŸãããã
å®éã«äœ¿çšããããããã¯ããã«å€ãã®ã¡ã¢ãªãš CPU ãã·ã¹ãã ãµãŒãã¹çšã«äºçŽãããŠããããšã¯æããã§ãã kube ã·ã¹ãã ã®å Žåãããã¯æ£åœåãããŸããããŸã㟠nginx ã€ã³ã°ã¬ã¹ ã³ã³ãããŒã©ãŒãŸãã¯ããŒãããŒã«ã« DNS ãããŒã¯æã« CPU ã«ã¢ã¯ã»ã¹ãã倧éã® RAM ãæ¶è²»ãããããããã§ã¯ãã®ãããªäºçŽãæ£åœåãããŸãã ããã«ãéå» 3 æéã®ãã£ãŒãã«äŸåããããšã¯ã§ããŸãããé·æéã«ãããå±¥æŽã¡ããªã¯ã¹ã確èªããããšãæãŸããã§ãã
ãæšèŠå¶åºŠããåµèšããŸããã ããšãã°ãããã§ã¯ããã¹ãããã«ããçºçããªãããã«ãå¶éãïŒèš±å®¹ãããäžéïŒãäžããã»ãããããªãœãŒã¹ã確èªã§ããŸããã€ãŸããå²ãåœãŠãããã¿ã€ã ã¹ã©ã€ã¹ã§ãªãœãŒã¹ããã§ã« CPU ãŸãã¯ã¡ã¢ãªãæ¶è²»ããç¬éãããã³ãåçµã解é€ãããããŸã§åŸ æ©ããŠããŸãã
ãããŠã圌ãã®é£æ¬²ãæããã¯ãã®ãµã€ã¯æ¬¡ã®ãšããã§ãã
ãªã³ ã¹ããããªã³ã° + ãªãœãŒã¹ç£èŠãè€æ°ã®èšäºãæžãããšãã§ããã®ã§ãã³ã¡ã³ãã§è³ªåããŠãã ããã äžèšã§èšãã°ããã®ãããªã¡ããªã¯ã¹ãèªååããã¿ã¹ã¯ã¯éåžžã«é£ãããå€ãã®æéãå¿
èŠãšããããŠã£ã³ããŠãæ©èœãšãCTEãPrometheus / VictoriaMetrics ãšã®ãã©ã³ã¹ããšãå¿
èŠããããšèšããŸã (ãããã®çšèªã¯åŒçšç¬Šã§å²ãŸããŠããŸãã PromQL ã§ã¯ãã®ãããªããšã¯ãªããæãããã¯ãšãªãããã¹ãã®ããã€ãã®ç»é¢ã«åå²ããŠæé©åããå¿
èŠããããŸã)ã
ãã®çµæãéçºè 㯠Cube ã®åå空éãç£èŠããããŒã«ãå©çšã§ããããã«ãªãããã€ãã©ãã§ã©ã®ã¢ããªã±ãŒã·ã§ã³ããªãœãŒã¹ããã«ãããã§ããããã©ã®ãµãŒããŒã«äžæ©äž CPU å šäœãå²ãåœãŠãŠãããããèªåã§éžæã§ããããã«ãªããŸããã
æ¹æ³è«
ä»ã®äŒç€Ÿã§ã¯ ãããããç§ãã¡ã¯ DevOps ã«æºæ ããŠããã SRE-å®è·µè äŒæ¥ã 1000 ã®ãã€ã¯ããµãŒãã¹ãã€ã³ãã©ã¹ãã©ã¯ãã£å šäœã«å¯ŸããŠçŽ 350 人ã®éçºè ãããã³ 15 人ã®ç®¡çè ãæ±ããŠããå Žåãããã¡ãã·ã§ããã«ã§ãããå¿ èŠããããŸããããããã¹ãŠã®ãåå£ãã®èåŸã«ã¯ããã¹ãŠãèªååããç·æ¥ã®å¿ èŠæ§ãããã管çè ãããã«ããã¯ã«ãªãã¹ãã§ã¯ãããŸãããããã»ã¹äžã
éçšéšéãšããŠããµãŒãã¹ã®å¿ççãšãšã©ãŒã«é¢é£ããããŸããŸãªã¡ããªã¯ã¹ãšããã·ã¥ããŒããéçºè ã«æäŸããŸãã
ç§ãã¡ã¯æ¬¡ã®ãããªæ¹æ³è«ã䜿çšããŸãã
ããäžã¶æãã°ã©ããæããŠããªãã ããã¯ããããè¯ãå åã§ããããã¯ããé¡æãã®ã»ãšãã©ããã§ã«å®çŸãããŠããããšãæå³ããŸãã å¶ç¶ã«ãããã®é±ã¯å°ãªããšã XNUMX æ¥ã« XNUMX åã¯æ°ããã°ã©ããæãããã«ãªããŸããã
çŸåšãéçºè
ã管çè
ã«ãããçš®ã®ã¡ããªã¯ã¹ãã©ãã§ç¢ºèªããã°ãããããšãã質åãããããšã¯ã»ãšãã©ãªããããçµæãšããŠåŸãããçµæã¯è²Žéã§ãã
å®è£ ãµãŒãã¹ ã¡ãã·ã¥ ã¯ãããããããŸã§æ¥ãŠããã誰ã«ãšã£ãŠãç掻ãã¯ããã«æ¥œã«ãªãã¯ãã§ããTools ã®ååã¯ãã§ã«æœè±¡çãªãå¥åº·ãªäººã® Istioãã®å®è£ ã«è¿ã¥ããŠããŸããå HTTP(s) ãªã¯ãšã¹ãã®ã©ã€ã ãµã€ã¯ã«ã¯ã¢ãã¿ãªã³ã°ã§å¯èŠåããããµãŒãã¹é (ã ãã§ã¯ãããŸãã) ã®å¯Ÿè©±äžã«ããã©ã®æ®µéã§ãã¹ãŠãå£ããã®ãããåžžã«ç解ã§ããããã«ãªããŸãã DomClick ãããããã¥ãŒã¹ã賌èªããŸãã =)
Kubernetes ã€ã³ãã©ã¹ãã©ã¯ãã£ã®ãµããŒã
ãããŸã§ããããé©çšæžã¿ã®ããŒãžã§ã³ã䜿çšããŠããŸãã ãã¥ãŒãã¹ãã¬ãŒ â Kubernetes ã®ãããã€ãæ¡åŒµãæŽæ°ã®ããã® Ansible ããŒã«ã ããæç¹ã§ãkubeadm 以å€ã®ã€ã³ã¹ããŒã«ã®ãµããŒããã¡ã€ã³ ãã©ã³ãããæã¡åãããkubeadm ã«åãæ¿ããããã»ã¹ã¯ææ¡ãããŸããã§ããã ãã®çµæãSouthbridge 瀟㯠(kubeadm ãµããŒããšé倧ãªåé¡ã®è¿ éãªä¿®æ£ãåãã) ç¬èªã®ãã©ãŒã¯ãäœæããŸããã
ãã¹ãŠã® k8s ã¯ã©ã¹ã¿ãŒãæŽæ°ããããã»ã¹ã¯æ¬¡ã®ããã«ãªããŸãã
- åã ãã¥ãŒãã¹ãã¬ãŒ ãµãŠã¹ããªããžããã®å Žåã¯ãã¹ã¬ãã Merjim ã§ç¢ºèªããŠãã ããã
- ã¢ããããŒããããŒã«ã¢ãŠãããŠããŸã ã¹ãã¬ã¹- ããã¥ãŒããã
- äžåºŠã« 1 ããŒããã€æŽæ°ãããŒã«ã¢ãŠãããŸã (Ansible ã§ã¯ãããã¯ãã·ãªã¢ã«: XNUMXãã§ã)ã ããããããŒ- ããã¥ãŒããã
- æŽæ°ããŸã çªã åææ¥ã®å€æ¹ã«äžåºŠã« XNUMX ã€ã®ããŒããã€å®è¡ããŸãã
å°æ¥çã«ã¯çœ®ãæããäºå®ã§ã ãã¥ãŒãã¹ãã¬ãŒ ãã£ãšæ©ãäœããããå Žåã¯ã次ã®å Žæã«ç§»åããŠãã ãã ã¯ããŒãº.
åèšã§ XNUMX ã€ã®ããã¥ãŒããããããŸã: StressãDevãProdã ä»ã«ãçºå£²ããäºå®ã§ã(ãããã¹ã¿ã³ãã€) XNUMX çªç®ã®ããŒã¿ã»ã³ã¿ãŒã®è£œåãCubeãã ã¹ãã¬ã¹ О ããããã㌠ãä»®æ³ãã·ã³ãïŒã¹ãã¬ã¹ã®å Žå㯠oVirtãéçºã®å Žå㯠VMWare ã¯ã©ãŠãïŒã«ååšããŸãã çªã- ãCubeãã¯ãã㢠ã¡ã¿ã«ãäžã«ååšããŸããããã㯠32 åã® CPU ã¹ã¬ããã64 ïœ 128 GB ã®ã¡ã¢ãªãããã³ 300 GB SSD RAID 10 ãåããåäžã®ããŒãã§ãããåèšã§ 50 åãããŸãã XNUMX ã€ã®ãã·ã³ãããŒãã¯ããã¹ã¿ãŒãå°çšã§ã çªã- ããã¥ãŒãã: 16 GB ã®ã¡ã¢ãªã12 CPU ã¹ã¬ããã
販売ã«é¢ããŠã¯ãããã¢ã¡ã¿ã«ãã䜿çšããããšã奜ã¿ã次ã®ãããªäžå¿ èŠãªã¬ã€ã€ãŒãé¿ããŸãã OpenStackã¯: ãããããé£äººããš CPU ã¯å¿ èŠãããŸãã æéãçãã ãŸãã瀟å OpenStack ã®å Žåã管çã®è€éãã¯çŽ XNUMX åã«ãªããŸãã
CI/CDãCubicãããã³ãã®ä»ã®ã€ã³ãã©ã¹ãã©ã¯ã㣠ã³ã³ããŒãã³ãã«ã¯ãå¥ã® GIT ãµãŒããŒã§ãã Helm 3 ã䜿çšããŸã (Helm 2 ããã®ç§»è¡ã¯ããªãèŠçã§ãããããªãã·ã§ã³ã«ã¯éåžžã«æºè¶³ããŠããŸã) ã¢ãããã¯)ããžã§ã³ãã³ã¹ãAnsibleãDockerã ç§ãã¡ã¯æ©èœãã©ã³ããš XNUMX ã€ã®ãªããžããªããããŸããŸãªç°å¢ãžã®ãããã€ã¡ã³ãã奜ã¿ãŸãã
ãŸãšã
ããã¯ãäžè¬çã«ãDomClick ã«ããã DevOps ããã»ã¹ããªãã¬ãŒã·ã§ã³ ãšã³ãžãã¢ã®èŠ³ç¹ããèŠããã®ã§ãã ãã®èšäºã¯ãç§ãäºæ³ããŠãããããæè¡çãªå
容ã§ã¯ãããŸããã§ããããããã£ãŠãHabré ã«é¢ãã DomClick ãã¥ãŒã¹ããã©ããŒããŠãã ãããKubernetes ãªã©ã«é¢ãããããŒãã³ã¢ãèšäºãããã«å¢ããäºå®ã§ãã
åºæïŒ habr.com