倧èŠæš¡ãªãããžã§ã¯ãã¯ãå¿
ã XNUMX å°ã®ãµãŒããŒããå§ãŸããŸãã æå㯠DB ãµãŒããŒã XNUMX ã€ããããã®åŸãèªã¿åãå€ãã¹ã±ãŒã«ããããã«ããã«ã¹ã¬ãŒããè¿œå ãããŸããã ãããŠãã㊠- ãããŠïŒ ãã¹ã¿ãŒã¯ XNUMX 人ã§ãããã¹ã¬ãŒãã¯å€æ°ããŸãã ã¹ã¬ãŒãã® XNUMX ã€ãé¢ãããšãã¹ãŠãããŸããããŸããããã¹ã¿ãŒãé¢ãããšç¶æ³ã¯æªããªããŸããããŠã³ã¿ã€ã ãçºçãã管çè
ã¯ãµãŒããŒãäžããããšããŠããŸãã äœããããïŒ ãã¹ã¿ãŒãäºçŽããŸãã ç§ã®ååã®Pavelã¯ãã§ã«ãã®ããšã«ã€ããŠæžããŠããŸã
äž»èŠãªè³ªåããå§ããŸããã: ããã¹ã¿ãŒãå»ã£ããšãã«ã³ãŒããæ°ãããã·ã³ã«ã©ã®ããã«åãæ¿ããã?ã
- ç§ã¯ VIP (ä»®æ³ IP) ã䜿çšããã¹ããŒã ãæãæ°ã«å ¥ã£ãŠããŸããããã«ã€ããŠã¯ä»¥äžã§èª¬æããŸãã ããã¯æãåçŽã§æçœã§ãããæãããªå¶éããããŸããäºçŽãããã¹ã¿ãŒã¯æ°ãããã·ã³ã® L2 ã»ã°ã¡ã³ãã«ååšããå¿ èŠããããŸããã€ãŸãã2 çªç®ã® DC ã«ã€ããŠã¯ç¡èŠã§ããŸãã ãããŠãå奜çãªæ¹æ³ã§ã倧èŠæš¡ãª L2 ã¯æªã§ãããšããã«ãŒã«ã«åŸãå ŽåãL3 ã¯ã©ãã¯ããšã«ã®ã¿ååšããLXNUMX ã¯ã©ãã¯éã«ååšãããã®ãããªã¹ããŒã ã«ã¯ããã«å€ãã®å¶éãããããã§ãã
- ã³ãŒãã« DNS åãèšè¿°ãã/etc/hosts ãéããŠè§£æ±ºã§ããŸãã å®éã«ã¯ã解決çã¯äœããªãã§ãããã ãã®æ¹åŒã®å©ç¹: æåã®æ¹æ³ã«ç¹æã®å¶éããªããã€ãŸããã¯ãã¹ DC ãæ§æããããšãå¯èœã§ãã ããããæãããªçåãçããŸããPuppet-Ansible ãä»ã㊠/etc/hosts ã«å€æŽãã©ããããæ©ãé ä¿¡ã§ããã§ãããã?
- 60 çªç®ã®æ¹æ³ãå°ãå€æŽããããšãã§ããŸãããã¹ãŠã® Web ãµãŒããŒã«ãã£ãã·ã¥ DNS ãã€ã³ã¹ããŒã«ãããããéããŠã³ãŒãããã¹ã¿ãŒ ããŒã¿ããŒã¹ã«éä¿¡ãããŸãã DNS ã§ãã®ãšã³ããªã« TTL XNUMX ãèšå®ã§ããŸãã æ£ããå®è£ ã§ããã°ããã®æ¹æ³ã¯åªããŠããããã§ãã
- ãµãŒãã¹æ€åºã䌎ãã¹ããŒã ãConsul ããã³ etcd ã®äœ¿çšãæå³ããŸãã
- èå³æ·±ããªãã·ã§ã³
ãããã·SQL ã ãã¹ãŠã®ãã©ãã£ãã¯ã ProxySQL çµç±ã§ MySQL ã«ã«ãŒãã£ã³ã°ããå¿ èŠããããŸããProxySQL èªäœã誰ããã¹ã¿ãŒã§ãããã決å®ã§ããŸãã ã¡ãªã¿ã«ããã®è£œåã䜿çšããããã®ãªãã·ã§ã³ã® XNUMX ã€ã«ã€ããŠã¯ãç§ã®èšäºã§èªãããšãã§ããŸããÑÑаÑÑе .
Orchestrator ã®äœæè 㯠Github ã§äœæ¥ããŠãããæåã« VIP ã䜿çšããŠæåã®ã¹ããŒã ãå®è£ ãã次ã«ããã consul ã䜿çšããã¹ããŒã ã«å€æããŸããã
äžè¬çãªã€ã³ãã©ã¹ãã©ã¯ãã£ã®ã¬ã€ã¢ãŠã:
èæ
®ããå¿
èŠãããæãããªç¶æ³ã«ã€ããŠããã«èª¬æããŸãã
- VIP ã¢ãã¬ã¹ã¯ãã©ã®ãµãŒããŒã®æ§æã«ãç»é²ããªãã§ãã ããã ç¶æ³ãæ³åããŠã¿ãŸãããããã¹ã¿ãŒãåèµ·åããããŒãäžã« Orchestrator ããã§ã€ã«ãªãŒã㌠ã¢ãŒãã«ãªããã¹ã¬ãŒãã® XNUMX ã€ããã¹ã¿ãŒã«ãªããŸããã ãã®åŸãå€ããã¹ã¿ãŒãç«ã¡äžãã£ãŠãä»ã§ã¯VIPãXNUMXå°ã®è»ã«ä¹ã£ãŠããŸãã ããã¯æªãã§ãã
- ãªãŒã±ã¹ãã¬ãŒã¿ãŒã®å Žåã¯ãå€ããã¹ã¿ãŒãšæ°ãããã¹ã¿ãŒãåŒã³åºãããã®ã¹ã¯ãªãããäœæããå¿ èŠããããŸãã å€ããã¹ã¿ãŒã§ã¯ ifdown ãå®è¡ããå¿ èŠããããæ°ãããã¹ã¿ãŒã§ã¯ ifup vip ãå®è¡ããå¿ èŠããããŸãã ãã®ã¹ã¯ãªããã«ã¯ããã§ãŒã«ãªãŒããŒãçºçããå Žåãã¹ããªãããã¬ã€ã³ãåé¿ããããã«å€ããã¹ã¿ãŒã®ã¹ã€ããã®ããŒããåã«ãªãã«ãªãããšãå«ãããšããã§ãããã
- Orchestrator ãã¹ã¯ãªãããåŒã³åºããŠæåã« VIP ãåé€ããããã¹ã€ããäžã®ããŒããæ¶æ» ããããããåŸãæ°ãããã¹ã¿ãŒäžã§ VIP ãäžããã¹ã¯ãªãããåŒã³åºããåŸãarping ã³ãã³ãã䜿çšããŠæ°ãã VIP ãéå§ãããããšãå šå¡ã«éç¥ããããšãå¿ããªãã§ãã ãããããã
- ãã¹ãŠã®ã¹ã¬ãŒã㯠read_only=1 ã§ããå¿ èŠããããã¹ã¬ãŒãããã¹ã¿ãŒã«ææ Œãããšããã« read_only=0 ã«ãªãã¯ãã§ãã
- ãã®ããã«éžæããã¹ã¬ãŒãã¯ã©ãããã¹ã¿ãŒã«ãªããããšãå¿ããªãã§ãã ãã (ãªãŒã±ã¹ãã¬ãŒã¿ãŒã«ã¯ãæåã«ã©ã®ã¹ã¬ãŒããæ°ãããã¹ã¿ãŒã®åè£ãšããŠèæ ®ãããã次ã«ã©ã®ã¹ã¬ãŒããæ€èšããããã©ã®ã¹ã¬ãŒããéžæãããã«ã€ããŠã®å šäœçãªåªå ã¡ã«ããºã ããããŸã)ãããªãç¶æ³ã«ãããŠãéžæãããããšã¯ãããŸãããã¹ã¿ãŒïŒã ã¹ã¬ãŒãããã¹ã¿ãŒã«ãªããšãã¹ã¬ãŒãã®è² è·ãã¹ã¬ãŒãã«æ®ãããã¹ã¿ãŒã®è² è·ãè¿œå ãããããããããèæ ®ããå¿ èŠããããŸãã
Orchestrator ããæã¡ã§ãªãã®ã«ããªã Orchestrator ãå¿ èŠãªã®ã§ãããã?
- Orchestrator ã«ã¯ãããããžå šäœã衚瀺ããéåžžã«äœ¿ããããã°ã©ãã£ã«ã« ã€ã³ã¿ãŒãã§ã€ã¹ãåãã£ãŠããŸã (äžã®ã¹ã¯ãªãŒã³ã·ã§ãããåç §)ã
- Orchestrator ã¯ãã©ã®ã¹ã¬ãŒããé ããŠããããããã³ã¬ããªã±ãŒã·ã§ã³ãäžè¬çã«å€±æããŠããå Žæã远跡ã§ããŸã (SMS ãéä¿¡ããããã®ã¹ã¯ãªããã Orchestrator ã«æ·»ä»ãããŠããŸã)ã
- Orchestrator ã¯ãGTID ã«èª€ããããã¹ã¬ãŒããéç¥ããŸãã
ãªãŒã±ã¹ãã¬ãŒã¿ãŒ ã€ã³ã¿ãŒãã§ã€ã¹:
GTID ãšã©ãŒãšã¯äœã§ãã?
Orchestrator ãåäœããã«ã¯ã䞻㫠XNUMX ã€ã®èŠä»¶ããããŸãã
- MySQL ã¯ã©ã¹ã¿ãŒå ã®ãã¹ãŠã®ãã·ã³ã§æ¬äŒŒ GTID ãæå¹ã«ãªã£ãŠããå¿ èŠããããŸããGTID ã¯æå¹ã«ãªã£ãŠããŸãã
- ã©ãã«ã§ã XNUMX çš®é¡ã® binlog ãååšããå¿ èŠããããã¹ããŒãã¡ã³ãã䜿çšã§ããŸãã ãã¹ã¿ãŒãšã»ãšãã©ã®ã¹ã¬ãŒãã« Row ããããæŽå²çã« XNUMX ã€ãæ··åã¢ãŒãã®ãŸãŸã§ããæ§æããããŸããã ãã®çµæãOrchestrator ã¯åã«ãããã®ã¹ã¬ãŒããæ°ãããã¹ã¿ãŒã«æ¥ç¶ããããããŸããã§ããã
æ¬çªã¹ã¬ãŒãã§æãéèŠãªããšã¯ããã¹ã¿ãŒãšã®äžè²«æ§ã§ããããšãå¿ããªãã§ãã ããã ãã¹ã¿ãŒãšã¹ã¬ãŒãã®äž¡æ¹ã§ã°ããŒãã« ãã©ã³ã¶ã¯ã·ã§ã³ ID (GTID) ãæå¹ã«ãªã£ãŠããå Žåã¯ãgtid_subset é¢æ°ã䜿çšããŠãåãããŒã¿å€æŽãªã¯ãšã¹ãããããã®ãã·ã³ã§å®éã«å®è¡ããããã©ããã確èªã§ããŸãã ããã«ã€ããŠè©³ããèªãããšãã§ããŸã
ãããã£ãŠãOrchestrator 㯠GTID ãšã©ãŒãéããŠããã¹ã¿ãŒäžã«ãªããã©ã³ã¶ã¯ã·ã§ã³ãã¹ã¬ãŒãäžã«ååšããããšã瀺ããŸãã ãªããããªã£ãïŒ
- Read_only=1 ã¯ã¹ã¬ãŒãã§æå¹ã«ãªã£ãŠããŸããã誰ããæ¥ç¶ããŠããŒã¿å€æŽãªã¯ãšã¹ããå®äºããŸããã
- Super_read_only=1 ãã¹ã¬ãŒãã§æå¹ã«ãªã£ãŠããªãããã管çè ã¯ãµãŒããŒãæ··ä¹±ãããŠãããã§ãªã¯ãšã¹ããå®è¡ããŸããã
- åè¿°ã®äž¡æ¹ã®ç¹ãèæ
®ããå Žåããã 5.7.25 ã€ã®ããªãã¯ããããŸããMySQL ã§ã¯ããã€ã㪠ãã°ããã©ãã·ã¥ãããªã¯ãšã¹ãããã€ã㪠ãã°ã«éä¿¡ããããããæåã®ãã©ãã·ã¥æã«ãã¹ã¿ãŒãšãã¹ãŠã®ã¹ã¬ãŒã㧠GTID ãšã©ãŒã衚瀺ãããŸãã ãããåé¿ããã«ã¯ã©ãããã°ããã§ãããã? Perona-28-1 ã§ã¯ãbinlog_skip_flush_commands=XNUMX èšå®ãå°å
¥ãããbinlog ãžã®ãã©ãã·ã¥ã®æžã蟌ã¿ãçŠæ¢ãããŸãã mysql.com Web ãµã€ãã«ç¢ºç«ããããã®ããããŸãã
è« .
以äžããŸãšããŠã¿ãŸãããã Orchestrator ããŸã ãã§ãŒã«ãªãŒã㌠ã¢ãŒãã§äœ¿çšããããªãå Žåã¯ãç£èŠã¢ãŒãã«ããŸãã ããããã°ãMySQL ãã·ã³ã®çžäºäœçšã®ããããšãåãã·ã³ã§ã®ã¬ããªã±ãŒã·ã§ã³ã®çš®é¡ãã¹ã¬ãŒãã®é ãã®æç¡ããããŠæãéèŠãªããšã«ããã¹ã¿ãŒãšã®äžè²«æ§ã®çšåºŠã«é¢ããèŠèŠçãªæ å ±ãåžžã«ç®ã®åã«è¡šç€ºãããŸãã
æãããªçåã¯ããOrchestrator ã¯ã©ã®ããã«æ©èœããã¹ãã§ãã?ããšããããšã§ãã çŸåšã®ã¹ã¬ãŒãããæ°ãããã¹ã¿ãŒãéžæãããã¹ãŠã®ã¹ã¬ãŒããããã«åæ¥ç¶ããå¿ èŠããããŸã (ããã«ã¯ GTID ãå¿ èŠã§ããbinlog_name ãš binlog_pos ã§å€ãã¡ã«ããºã ã䜿çšããŠããå Žåã¯ãã¹ã¬ãŒããçŸåšã®ãã¹ã¿ãŒããæ°ãããã¹ã¿ãŒã«åãæ¿ããå¿ èŠããããŸã)ãŸã£ããäžå¯èœã§ã!)ã Orchestrator ãç»å Žããåã¯ãããããã¹ãŠãæåã§è¡ããªããã°ãªããªãã£ãããšããããŸãã å€ããã¹ã¿ãŒã¯ãã°ã®ãã Adaptec ã³ã³ãããŒã©ãŒãåå ã§ãã³ã°ããŠãããçŽ 10 åã®ã¹ã¬ãŒãããããŸããã VIP ããã¹ã¿ãŒããã¹ã¬ãŒãã® 3 ã€ã«è»¢éããä»ã®ãã¹ãŠã®ã¹ã¬ãŒããããã«åæ¥ç¶ããå¿ èŠããããŸããã ã³ã³ãœãŒã«ãäœå°éããªããã°ãªããªãã£ãã®ããåæã«ããã€ã®ã³ãã³ããå ¥åããã®ã...ååXNUMXæãŸã§åŸ ããªããã°ãªãããXNUMXå°ãé€ããã¹ãŠã®ã¹ã¬ãŒãããè² è·ãåãé€ããXNUMXå°ã®ãã·ã³ã®ãã¡æåã®ãã·ã³ããã¹ã¿ãŒã«ããããã«XNUMXå°ç®ã®ãã·ã³ãæ¥ç¶ããªããã°ãªããŸããã§ããããããã£ãŠãä»ã®ãã¹ãŠã®ã¹ã¬ãŒããæ°ãããã¹ã¿ãŒã«æ¥ç¶ããè² è·ãè¿ããŸãã å šäœçã«ã²ã©ã...
Orchestrator ããã§ãŒã«ãªãŒã㌠ã¢ãŒãã«ãªããšã©ã®ããã«åäœããŸãã? ããã¯ããã¹ã¿ãŒãçŸåšããã匷åã§ææ°ã®ãã·ã³ã«ãããç¶æ³ã®äŸã§æãç°¡åã«èª¬æã§ããŸãã
å³ã¯ããã»ã¹ã®éäžã瀺ããŠããŸãã ãããŸã§ã«äœãè¡ãããŠããã®ã§ãããã? äžéšã®ã¹ã¬ãŒããæ°ãããã¹ã¿ãŒã«ããããšèšããšãOrchestrator ã¯åçŽã«ä»ã®ãã¹ãŠã®ã¹ã¬ãŒãããã®ã¹ã¬ãŒãã«åæ¥ç¶ãå§ããæ°ãããã¹ã¿ãŒã¯äžç¶ãã·ã³ãšããŠæ©èœããŸãã ãã®ã¹ããŒã ã§ã¯ããšã©ãŒã¯çºçããããã¹ãŠã®ã¹ã¬ãŒããæ©èœããOrchestrator ã¯å€ããã¹ã¿ãŒãã VIP ãåé€ããŠæ°ãããã¹ã¿ãŒã«è»¢éããread_only=0 ã«ããŠå€ããã¹ã¿ãŒã®ããšãå¿ããŸãã å
šãŠïŒ åœç€Ÿã®ãµãŒãã¹ã®ããŠã³ã¿ã€ã 㯠VIP 転éæéã§ã2 ïœ 3 ç§ã§ãã
ä»æ¥ã¯ãããŸã§ã§ããçããããããšãããããŸããã Orchestrator ã«é¢ãã XNUMX çªç®ã®èšäºãè¿ã
å
¬éãããäºå®ã§ãã æåãªãœé£ã®æ ç»ãã¬ã¬ãŒãžãã§ã¯ãããç»å Žäººç©ããç§ãªã圌ãšäžç·ã«åµå¯ã«ã¯è¡ããªãïŒããšèšããŸããã ããã§ããªãŒã±ã¹ãã¬ãŒã¿ãŒãç§ãåµå¯ã«åè¡ããŸãïŒ
åºæïŒ habr.com