ã¢ããããŒãïŒã ã³ã¡ã³ãã§ãèªè
ã®äžäººãè©ŠããŠã¿ãããšãææ¡ããŸãã
æ£çŽãè«ŠããŠããŸããŸãã
ããã§ãããKubernetes ã¹ã¿ãã¯ã®åè£ãè©äŸ¡ãããšãã«ãã©ã®ã¹ãã¬ãŒãžãéžæãããã決ããã®ã«å€ãã®æéãè²»ãããŸããã ç§ã¯äŸ¡æ Œã®çç±ã ãã§ãªãããªãŒãã³ãœãŒã¹ ãœãªã¥ãŒã·ã§ã³ã奜ã¿ãŸãããå¶éä»ãã®ç¡æããŒãžã§ã³ãããããã奜å¥å¿ããããã€ãã®ææãªãã·ã§ã³ã調ã¹ãŸããã ããŸããŸãªãªãã·ã§ã³ãæ¯èŒããæè¿ã®ãã¹ãããããã€ãã®æ°å€ãæžãçããŸãããKubernetes ã¹ãã¬ãŒãžã«ã€ããŠåŠç¿ããŠãã人ã«ãšã£ãŠã¯èå³æ·±ããããããŸããã ç§å人ãšããŠã¯ãä»ã®ãšãã Kubernetes ãšã¯å¥ããåããŠããŸããã ç§ãèšåããããšæããŸã
6 ïœ 7 åã®ã¹ãã¬ãŒãž ãœãªã¥ãŒã·ã§ã³ããã¹ãããŸããã
OpenEBS
ãã§ã«èšã£ãããã«
äžèšã§èšãã°ãJiva ã¯è¥å¹²é«éã§ãããLocalPV ã¯äžè¬çã«é«éã§ããããã£ã¹ã¯ ãã³ãããŒã¯ãšçŽæ¥æ¯ã¹ãŠãå£ããŸããã LocalPV ã®åé¡ã¯ãããªã¥ãŒã ãäœæãããããŒãäžã§ã®ã¿ããªã¥ãŒã ã«ã¢ã¯ã»ã¹ã§ããã¬ããªã±ãŒã·ã§ã³ããŸã£ããè¡ãããªãããšã§ãã ããã¯ã¢ããã埩å
ããéã«åé¡ãçºçããŸãã
ã«ãŒã¯
Rook ããªãŒãã³ãœãŒã¹ã§ããããªã¹ãã®ä»ã®ãªãã·ã§ã³ãšç°ãªãç¹ã¯ãããŸããŸãªããã¯ãšã³ãã§è€éãªã¹ãã¬ãŒãžç®¡çã¿ã¹ã¯ãåŠçããã¹ãã¬ãŒãž ãªãŒã±ã¹ãã¬ãŒã¿ãŒã§ããããšã§ãã
Ceph ã«ã¯ã¹ãããã·ã§ããããããŸãããç§ã®ç¥ãéãããããã Rook/Kubernetes ã§çŽæ¥äœ¿çšããããšã¯ã§ããŸããã 確ãã«ãç§ã¯ããã«ã€ããŠã¯æ·±ãæãäžããŸããã§ããã ãã ãããªããµã€ãã®ããã¯ã¢ããã¯ãªããããVelero/Restic ã䜿çšããå¿
èŠããããŸãããååšããã®ã¯ãã¡ã€ã«ã¬ãã«ã®ããã¯ã¢ããã®ã¿ã§ããã€ã³ãã€ã³ã¿ã€ã ã®ã¹ãããã·ã§ããã¯ãããŸããã ç§ã Rook ã§æ¬åœã«æ°ã«å
¥ã£ãã®ã¯ãCeph ãšã®é£æºãããã«ç°¡åããšããããšã§ãããRook ã¯ãã»ãšãã©ãã¹ãŠã®è€éãªèŠçŽ ãé ãããã©ãã«ã·ã¥ãŒãã£ã³ã°ã®ããã« Ceph ãšçŽæ¥éä¿¡ããããã®ããŒã«ãæäŸããŸãã æ®å¿µãªãããCeph ããªã¥ãŒã ã®ã¹ãã¬ã¹ ãã¹ãäžã次ã®åé¡ãåŒãç¶ãçºçããŸããã
ã©ã³ãã£ãŒ ãã³ã°ããŒã³
ãã³ã°ããŒã³ãæ¬åœã«å¥œãã§ãã ç§ã®æèŠã§ã¯ãããã¯ææãªè§£æ±ºçã§ãã 確ãã«ãéçºè èªèº« (Rancher Labs) ã¯ããŸã äœæ¥ç°å¢ã«é©ããŠããªãããšãèªããŠãããããã瀺ããŠããŸãã ããã¯ãªãŒãã³ãœãŒã¹ã§ãããé©åãªããã©ãŒãã³ã¹ãåããŠããŸãã (ãŸã æé©åãããŠããŸããã)ãããªã¥ãŒã ããããã«æ¥ç¶ããã®ã«éåžžã«æéãããããææªã®å Žåãç¹ã«å€§èŠæš¡ãªããã¯ã¢ãããããŒã¿ã埩å ããåŸã¯ 15 ïœ 16 åããããŸããã¯ãŒã¯ããŒãã®ã¢ããã°ã¬ãŒãã ã¹ãããã·ã§ãããšãããã®ã¹ãããã·ã§ããã®ãªããµã€ã ããã¯ã¢ããããããŸããããããã¯ããªã¥ãŒã ã«ã®ã¿é©çšããããããä»ã®ãªãœãŒã¹ãããã¯ã¢ããããã«ã¯åŒãç¶ã Velero ã®ãããªãã®ãå¿ èŠã§ãã ããã¯ã¢ãããšåŸ©å ã¯éåžžã«ä¿¡é Œæ§ããããŸãããéåžžã«é ãã§ãã çå£ã«ãä¿¡ããããªãã»ã©é ãã§ãã Longhorn ã§äžéã®ããŒã¿ãæäœãããšãCPU 䜿çšçãšã·ã¹ãã è² è·ãæ¥å¢ããããšããããããŸãã Longhorn ã管çããããã®äŸ¿å©ãªããã·ã¥ããŒãããããŸãã ç§ã¯ Longhorn ã奜ãã ãšãã§ã«è¿°ã¹ãŸããããããã«ã¯ããå°ãåªåãå¿ èŠã§ãã
ã¹ãã¬ãŒãžOS
StorageOS ã¯ããªã¹ãã®æåã®ææ補åã§ãã éçºè ããŒãžã§ã³ã«ã¯ç®¡çã¹ãã¬ãŒãž ãµã€ãºã 500GB ã«å¶éãããŠããŸãããããŒãæ°ã«å¶éã¯ãªããšæããŸãã å¶æ¥éšéã«ãããšãç§ã®èšæ¶ãæ£ãããã°ãæé㯠125 TB ã§æé¡ 1 ãã«ããã ãšèšãããŸããã åºæ¬çãªããã·ã¥ããŒããšäŸ¿å©ãª CLI ããããŸãããããã©ãŒãã³ã¹ã«å¥åŠãªããšãèµ·ãã£ãŠããŸããããã€ãã®ãã³ãããŒã¯ã§ã¯ããªããŸãšãã§ãããããªã¥ãŒã ã¹ãã¬ã¹ ãã¹ãã§ã¯é床ããŸã£ããæ°ã«å ¥ããŸããã§ããã äžè¬çã«ãäœãèšãã°ããã®ãåãããŸããã ãªã®ã§ãããŸãç解ã§ããŸããã§ããã ããã«ã¯ãªããµã€ã ããã¯ã¢ããã¯ãªããããªã¥ãŒã ãããã¯ã¢ããããã«ã¯ Velero ãš Restic ã䜿çšããå¿ èŠããããŸãã ææã®ååãªã®ã§äžæè°ã§ããã ãããŠãéçºè 㯠Slack ã§ã®ã³ãã¥ãã±ãŒã·ã§ã³ã«ç±å¿ã§ã¯ãããŸããã§ããã
ããã³
Robin ã«ã€ããŠã¯ãReddit ã®ãã¯ãã«ã« ãã£ã¬ã¯ã¿ãŒããç¥ããŸããã ç§ã¯ãããŸã§åœŒã®ããšãèããããšããããŸããã§ããã ããããç§ã¯ç¡æã®ãœãªã¥ãŒã·ã§ã³ãæ¢ããŠããã®ã§ãããRobin ã¯ææã ã£ãã®ã§ã¯ãªãã§ããããã 10TBã®ã¹ãã¬ãŒãžãšXNUMXã€ã®ããŒããåããããªãå¯å€§ãªç¡æããŒãžã§ã³ããããŸãã å šäœãšããŠããã®è£œåã¯éåžžã«ãŸãšãã§ãåªããæ©èœãåããŠããŸãã åªãã CLI ããããŸãããæãåªããŠããç¹ã¯ãããªã¥ãŒã ããã®ä»ã®ãªãœãŒã¹ãå«ãã¢ããªã±ãŒã·ã§ã³å šäœ (ãªãœãŒã¹ ã»ã¬ã¯ã¿ãŒã§ã¯ãããã Helm ãªãªãŒã¹ãŸãã¯ããã¬ãã¯ã¹ ã¢ããªããšåŒã³ãŸã) ã®ã¹ãããã·ã§ãããšããã¯ã¢ãããã§ãããããVelero ããªããŠãå®è¡ã§ããããšã§ãã ãããŠãXNUMX ã€ã®å°ããªç¹ãããªããã°ããã¹ãŠãçŽ æŽãããã§ããããããšãã°ãçœå®³ããã®å埩ã®å Žåãªã©ãæ°ããã¯ã©ã¹ã¿ãŒäžã§ã¢ããªã±ãŒã·ã§ã³ã埩å (ãŸã㯠Robin ã§ãã€ã³ããŒãããšåŒã°ãã) ããå Žåã埩å ããã¡ããåäœããŸãããã¢ããªã±ãŒã·ã§ã³ã®ããã¯ã¢ãããç¶ããããšã¯çŠæ¢ãããŠããŸãã éçºè ã確èªããããã«ããã®ãªãªãŒã¹ã§ã¯ããã¯äžå¯èœã§ãã ããã¯ãç¹ã«ä»ã®å©ç¹ (ããšãã°ãä¿¡ããããªãã»ã©é«éãªããã¯ã¢ãããšåŸ©å ) ãèæ ®ãããšãæ§ããã«èšã£ãŠãå¥åŠã§ãã éçºè ã¯æ¬¡ã®ãªãªãŒã¹ãŸã§ã«ãã¹ãŠãä¿®æ£ãããšçŽæããŠããŸãã ããã©ãŒãã³ã¹ã¯å šäœçã«è¯å¥œã§ãããå¥åŠãªç¹ã«æ°ã¥ããŸããããã¹ãã«æ¥ç¶ãããããªã¥ãŒã ã§çŽæ¥ãã³ãããŒã¯ãå®è¡ãããšããããå ããåãããªã¥ãŒã ãå®è¡ãããããèªã¿åãé床ãã¯ããã«éããªããŸãã ä»ã®çµæã¯ãã¹ãŠåãã§ãããçè«çã«ã¯éãã¯ãªãã¯ãã§ãã 圌ãã¯ããã«åãçµãã§ããŸãããç§ã¯åŸ©å ãšããã¯ã¢ããã®åé¡ã«è ¹ãç«ãŠãŠããŸãããã€ãã«é©åãªè§£æ±ºçãèŠã€ãããšæããŸããããããŠãããå€ãã®ã¹ããŒã¹ããµãŒããŒãå¿ èŠãªãšãã¯ãåãã§ãéãæãã€ããã§ããã
portworx
ããã§èšãããšã¯ããŸããããŸããã ããã¯ææã®è£œåã§ãããåæ§ã«ã¯ãŒã«ã§é«äŸ¡ã§ãã ããã©ãŒãã³ã¹ã¯ãã ãã çŽ æŽãããã§ãã ããã¯ãããŸã§ã§æé«ã®ææšã§ãã Slack ã¯ãGoogle ã® GKE Marketplace ã«èšèŒãããŠããããã«ãæéã¯ããŒããããæé¡ 205 ãã«ããã§ãããšæããŠãããŸããã çŽæ¥è³Œå ¥ããæ¹ãå®ããã©ããã¯ããããŸããã ãšã«ãããããªäœè£ã¯ãªãã®ã§ãéçããããžã§ãã³ã°ã«æºè¶³ããªãéããéçºè ã©ã€ã»ã³ã¹ (æ倧 1 TB ããã³ 3 ããŒã) ã Kubernetes ã§ã¯å®è³ªçã«åœ¹ã«ç«ããªãããšã«éåžžã«æ®å¿µã«æããŸããã è©Šçšæéã®çµäºæã«ããªã¥ãŒã ã©ã€ã»ã³ã¹ãèªåçã«éçºè ã«ããŠã³ã°ã¬ãŒããããããšãæåŸ ããŠããŸããããããã¯èµ·ãããŸããã§ããã éçºè ã©ã€ã»ã³ã¹ã¯ Docker ã§ã®ã¿çŽæ¥äœ¿çšã§ããKubernetes ã§ã®æ§æã¯éåžžã«é¢åã§å¶éãããŸãã ãã¡ãããç§ã¯ãªãŒãã³ãœãŒã¹ã®æ¹ã奜ãã§ããããéãããã°ééããªã Portworx ãéžæããã§ãããã ãããŸã§ã®ãšããããã®ããã©ãŒãã³ã¹ã¯ä»ã®ãªãã·ã§ã³ãšæ¯èŒã§ããŸããã
ãªã³ã¹ã¿ãŒ
ãã®ã»ã¯ã·ã§ã³ã¯ãæçš¿ã®å ¬éåŸã«ãããèªè ã Linstor ãè©ŠããŠã¿ãããšãææ¡ããããè¿œå ããŸããã è©ŠããŠã¿ããæ°ã«å ¥ããŸããïŒ ããããããã«æ·±ãæãäžããå¿ èŠããããŸãã ããã§ãããã©ãŒãã³ã¹ã¯æªããªããšèšããŸã (以äžã«ãã³ãããŒã¯çµæãè¿œå ããŸãã)ã åºæ¬çã«ããªãŒããŒããããªãã§çŽæ¥ãã£ã¹ã¯ãšåãããã©ãŒãã³ã¹ãåŸãããŸããã (ãªã Portworx ã®æ°å€ããã©ã€ã ãã³ãããŒã¯ãããåªããŠããã®ããçŽæ¥å°ããªãã§ãã ãããç§ã«ã¯ããããŸãããããžãã¯ã ãšæããŸãã) ãããã£ãŠãLinstor ã¯ä»ã®ãšããéåžžã«å¹æçã§ããããã«èŠããŸãã åãä»ãã¯ããã»ã©é£ãããããŸããããä»ã®ãªãã·ã§ã³ã»ã©ç°¡åã§ã¯ãããŸããã ãŸããLinstor (ã«ãŒãã« ã¢ãžã¥ãŒã«ãšããŒã«/ãµãŒãã¹) ãã€ã³ã¹ããŒã«ããKubernetes ã®å€éšã§ãã¹ãäžã§çŽæ¥ã·ã³ ããããžã§ãã³ã°ãšã¹ãããã·ã§ããããµããŒãããããã« LVM ãæ§æãã次㫠Kubernetes ããã¹ãã¬ãŒãžã䜿çšããããã«å¿ èŠãªãªãœãŒã¹ãäœæããå¿ èŠããããŸããã CentOS ã§ã¯åäœããªãã®ãæ°ã«å ¥ãããUbuntu ã䜿çšããªããã°ãªããŸããã§ããã ãã¡ããã²ã©ãããšã§ã¯ãããŸããããããã¥ã¡ã³ã (ã¡ãªã¿ã«ãããã¯åªããŠããŸã) ã«ã¯ãæå®ããã Epel ãªããžããªã§èŠã€ãããªãããã±ãŒãžãããã€ãèšèŒãããŠãããããå°ãé¢åã§ãã Linstor ã«ã¯ã¹ãããã·ã§ããããããŸããããªããµã€ã ããã¯ã¢ããã¯ãªããããããã§ã Velero ãš Restic ã䜿çšããŠããªã¥ãŒã ãããã¯ã¢ããããå¿ èŠããããŸããã ãã¡ã€ã«ã¬ãã«ã®ããã¯ã¢ããã§ã¯ãªãã¹ãããã·ã§ããã䜿çšããããšèããŠããŸããããœãªã¥ãŒã·ã§ã³ã®ããã©ãŒãã³ã¹ãšä¿¡é Œæ§ãé«ããã°ãããã蚱容ã§ããŸãã Linstor ã¯ãªãŒãã³ãœãŒã¹ã§ãããææãµããŒãããããŸãã ç§ã®ç解ãæ£ãããã°ããµããŒãå¥çŽãçµãã§ããªããŠãå¶éãªã䜿çšã§ããããšã«ãªããŸããããããæ確ã«ããå¿ èŠããããŸãã Linstor ã Kubernetes ã«å¯ŸããŠã©ã®çšåºŠãã¹ããããŠãããã¯ããããŸããããã¹ãã¬ãŒãžå±€èªäœã¯ Kubernetes ã®å€éšã«ãããã©ããããã®ãœãªã¥ãŒã·ã§ã³ã¯æšæ¥å ¬éããããã®ã§ã¯ãªããããå®éã®ç¶æ³ã§ã¯ãã§ã«ãã¹ããããŠããå¯èœæ§ããããŸãã èããå€ã㊠Kubernetes ã«æ»ããããªè§£æ±ºçã¯ãããŸãã? ç§ã¯ç¥ããªãã ç§ãã¡ã¯ããã«æ·±ãæãäžããŠè€è£œãç 究ããå¿ èŠããããŸãã èŠãŠã¿ãŸãããã ã§ã第äžå°è±¡ã¯è¯ãã§ãã ãã£ãšèªç±ã«ãæ°ããããšãåŠã¶ããã«ãç§ã¯ Heroku ã§ã¯ãªãç¬èªã® Kubernetes ã¯ã©ã¹ã¿ãŒã䜿çšããããšãééããªã奜ã¿ãŸãã Linstor ã¯ä»ã®ãã®ã»ã©ã€ã³ã¹ããŒã«ãç°¡åã§ã¯ãªãã®ã§ãããã«ã€ããŠã¯ããã«èšäºãæžããŸãã
ãã³ãããŒã¯
æ®å¿µãªãããæ¯èŒã«ã€ããŠã¯æžãããšæã£ãŠããªãã£ãã®ã§ãããŸãã¡ã¢ãæ®ããŠããŸããã§ããã åºæ¬ç㪠fio ãã³ãããŒã¯ã®çµæã ãããããåäžããŒã ã¯ã©ã¹ã¿ãŒã®çµæãããªããããã¬ããªã±ãŒããããæ§æã®æ°å€ã¯ãŸã ãããŸããã ãã ãããããã®çµæãããåãªãã·ã§ã³ã§äœãæåŸ ã§ãããã®å€§ãŸããªã¢ã€ãã¢ãåŸãããšãã§ããŸãããªããªããåãã¯ã©ãŠã ãµãŒããŒã4 ã³ã¢ã16 GB ã® RAMãããã³ãã¹ããããããªã¥ãŒã çšã®è¿œå ã® 100 GB ãã£ã¹ã¯äžã§ããããæ¯èŒããããã§ãã åãœãªã¥ãŒã·ã§ã³ã«å¯ŸããŠãã³ãããŒã¯ã 38 åå®è¡ããŠå¹³åçµæãèšç®ããããã«å補åã®ãµãŒããŒèšå®ããªã»ããããŸããã ããã¯ãã¹ãŠå®å šã«éç§åŠçã§ãããäžè¬çãªã¢ã€ãã¢ã瀺ããŠããã ãã§ãã ä»ã®ãã¹ãã§ã¯ãããªã¥ãŒã ãã XNUMX GB ã®åçãšãããªãã³ããŒããèªã¿åããšæžã蟌ã¿ããã¹ãããŸããããæ®å¿µãªããšã«ãæ°å€ã¯ä¿åãããŸããã§ããã ã€ãŸããPortworkx ã¯ã¯ããã«é«éã§ããã
ããªã¥ãŒã ãã³ãããŒã¯ã«ã¯ã次ã®ãããã§ã¹ãã䜿çšããŸããã
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: dbench
spec:
storageClassName: ...
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 5Gi
---
apiVersion: batch/v1
kind: Job
metadata:
name: dbench
spec:
template:
spec:
containers:
- name: dbench
image: sotoaster/dbench:latest
imagePullPolicy: IfNotPresent
env:
- name: DBENCH_MOUNTPOINT
value: /data
- name: FIO_SIZE
value: 1G
volumeMounts:
- name: dbench-pv
mountPath: /data
restartPolicy: Never
volumes:
- name: dbench-pv
persistentVolumeClaim:
claimName: dbench
backoffLimit: 4
ãŸããé©åãªã¹ãã¬ãŒãž ã¯ã©ã¹ã§ããªã¥ãŒã ãäœæãããã®åŸãããã¯ã°ã©ãŠã³ã㧠fio ã䜿çšããŠãžã§ããå®è¡ããŸããã ããŸãé·ãåŸ ããã«ããã©ãŒãã³ã¹ãèŠç©ããããã« 1 GB ã䜿çšããŸããã çµæã¯æ¬¡ã®ãšããã§ãã
åã¡ããªã¯ã¹ã®æè¯ã®å€ãç·è²ã§ãææªã®å€ãèµ€è²ã§åŒ·èª¿è¡šç€ºããŸããã
ãŸãšã
ã芧ã®ãšãããã»ãšãã©ã®å ŽåãPortworx ã¯ä»ã®ãã®ãããåªããããã©ãŒãã³ã¹ãçºæ®ããŸããã ããããç§ã«ãšã£ãŠããã¯é«äŸ¡ã§ãã Robin ã®äŸ¡æ Œã¯ããããŸããããçŽ æŽãããç¡æçãããã®ã§ãææ補åãå¿ èŠãªå Žåã¯ããããè©ŠããŠã¿ãŠãã ãã (埩å ãšããã¯ã¢ããã®åé¡ãããã«è§£æ±ºãããããšãé¡ã£ãŠããŸã)ã XNUMX ã€ã®ç¡æã®ãã®ã®äžã§ãOpenEBS ã¯æãåé¡ãå°ãªãã£ãã®ã§ããããã®ããã©ãŒãã³ã¹ã¯ã²ã©ããã®ã§ããã çµæãããã«ä¿åã§ããªãã£ãã®ã¯æ®å¿µã§ãããæ°å€ãšç§ã®ã³ã¡ã³ããã圹ã«ç«ãŠã°å¹žãã§ãã
åºæïŒ habr.com