ãã€ã¯ããµãŒãã¹ ã¢ãŒããã¯ãã£ã®ã³ã³ããã¹ãã§ã¯ãService Discovery ã¯ãããŸããŸãªãã€ã¯ããµãŒãã¹éã®ã·ãŒã ã¬ã¹ãªéä¿¡ãšå¯Ÿè©±ãå¯èœã«ããéèŠãã€äžå¯æ¬ ãªã¡ã«ããºã ã§ãããµãŒãã¹ ãã£ã¹ã«ããªã¯ãæåæ§æããµãŒãã¹ã®å Žæã®ããŒãã³ãŒãã£ã³ã°ãå¿ èŠãšããã«ã忣ã¢ããªã±ãŒã·ã§ã³å ã®ãã€ã¯ããµãŒãã¹ãå¹ççã«æ€çŽ¢ãèå¥ãçžäºéä¿¡ã§ããåçãã€èªåããã»ã¹ã§ãã Service Discovery ã®äž»ãªç®æšã¯ãé«å¯çšæ§ããã©ãŒã«ã ãã¬ã©ã³ã¹ãè² è·åæ£ã確ä¿ããªããã忣ã·ã¹ãã ã®éçºãå±éã管çã«ãããŠã¢ãžã¥ãŒã«æ§ãæè»æ§ãæ¡åŒµæ§ãé©å¿æ§ãåäžãããããšã§ãã
ææ°ã®ãã€ã¯ããµãŒãã¹ããŒã¹ã®ã¢ããªã±ãŒã·ã§ã³ã¯éåžžã倿°ã®ç¬ç«ããççµåãµãŒãã¹ã§æ§æãããŠãããå€ãã®å Žåãã³ã³ãããŒããµãŒããŒã¬ã¹ ãã©ãããã©ãŒã ãªã©ã®åæ£ç°å¢ãäžæçãªç°å¢ã§å®è¡ãããŸãããããã®ã¢ããªã±ãŒã·ã§ã³ãæéã®çµéãšãšãã«æé·ãé²åããã«ã€ããŠããµãŒãã¹ã远å ãåé€ããŸãã¯æŽæ°ãããå¯èœæ§ãããããã®çµæããµãŒãã¹ã®æ§æãå Žæãããã³ãã®ä»ã®é¢é£ã¡ã¿ããŒã¿ãç¶ç¶çã«å€æŽãããããšã«ãªããŸãããããã®ãµãŒãã¹ãæåã§è¿œè·¡ããæ§æãæŽæ°ããããšã¯æéããããããšã©ãŒãçºçããããã ãã§ãªããã¢ããªã±ãŒã·ã§ã³å šäœã®é©å¿æ§ãšæ¡åŒµæ§ãå¶éãããŸãã Service Discovery ã¯ããã€ã¯ããµãŒãã¹ ã¢ãŒããã¯ãã£ã®åçãªã©ã³ãã¹ã±ãŒãå ã§ãµãŒãã¹ãèŠã€ããŠæ¥ç¶ããããã»ã¹ãèªååããããšã§ããããã®èª²é¡ã«å¯ŸåŠããããšãç®çãšããŠããŸãã
ãµãŒãã¹ ãã£ã¹ã«ããªã«ã¯ãã¯ã©ã€ã¢ã³ãåŽãµãŒãã¹ ãã£ã¹ã«ããªãšãµãŒããŒåŽãµãŒãã¹ ãã£ã¹ã«ããªã® 2 ã€ã®äž»ãªãã¿ãŒã³ããããŸããã¯ã©ã€ã¢ã³ãåŽãµãŒãã¹æ€åºã§ã¯ãã¯ã©ã€ã¢ã³ããŸãã¯ãµãŒãã¹ã¯éäžã¬ãžã¹ããªã«ã¯ãšãªãå®è¡ããŠä»ã®ãµãŒãã¹ã®å Žæãšã¡ã¿ããŒã¿ãååŸãããããã®ãµãŒãã¹ãšçŽæ¥éä¿¡ããŸãããã®ã¢ãããŒãã«ãããã¯ã©ã€ã¢ã³ã ã¬ãã«ã§ã®è² è·åæ£ãšãã©ãŒã«ã ãã¬ã©ã³ã¹ããã詳现ã«å¶åŸ¡ã§ããããã«ãªããŸãããè€éããå¢ããäžå€®ã¬ãžã¹ããªãžã®äŸåãé«ãŸãå¯èœæ§ããããŸãããµãŒããŒåŽãµãŒãã¹æ€åºã§ã¯ãã¯ã©ã€ã¢ã³ãã¯ããµãŒãã¹ ã¬ãžã¹ããªãç §äŒãããªã¯ãšã¹ããé©åãªãµãŒãã¹ ã€ã³ã¹ã¿ã³ã¹ã«è»¢éãã仲ä»ãŸãã¯ããŒã ãã©ã³ãµãä»ããŠãªã¯ãšã¹ããã«ãŒãã£ã³ã°ããŸãããã®ã¢ãããŒãã«ãããã¯ã©ã€ã¢ã³ã ããžãã¯ãç°¡çŽ åãããããŒã ãã©ã³ã·ã³ã°ãšãã©ãŒã«ã ãã¬ã©ã³ã¹ã®è²¬ä»»ãããŒã ãã©ã³ãµãŒã«ãªãããŒããããŸãããã ãã远å ã®é å»¶ãçºçããã·ã¹ãã ã«åäžé害ç¹ãçºçããå¯èœæ§ããããŸãã
广çãªãµãŒãã¹æ€åºã¡ã«ããºã ã¯ãå©çšå¯èœãªãµãŒãã¹ãšãã®ã¡ã¿ããŒã¿ã®æ£ç¢ºãã€ææ°ã®ã¬ãžã¹ããªãäžè²«ããŠç¶æã§ããªããã°ãªããŸããããµãŒãã¹ã远å ãåé€ããŸãã¯æŽæ°ããããšãã¬ãžã¹ããªã¯ãããã®å€æŽãèªåçã«æ€åºãããªã¢ã«ã¿ã€ã ã§åæ ããå¿ èŠããããŸãããã®ããã»ã¹ã¯éåžžããã«ã¹ ãã§ãã¯ãšããŒãããŒãã䜿çšããŠå®è¡ãããŸãããµãŒãã¹ã¯å®æçã« Service Discovery ã·ã¹ãã ã«ä¿¡å·ãéä¿¡ããŠããµãŒãã¹ã®å¯çšæ§ã瀺ããã¡ã¿ããŒã¿ãæŽæ°ããŸãããµãŒãã¹ãæå®ã®æéæ å ã«ãããã®ã·ã°ãã«ãæäŸã§ããªãå Žåããã®ãµãŒãã¹ã¯å©çšã§ããªããšã¿ãªãããããã«å¿ããŠã¬ãžã¹ããªãæŽæ°ãããŸãã
ããã¯ãšã³ããWebãããã³ã¢ãã€ã« ã¢ããªã±ãŒã·ã§ã³ãäœæããããã®åŒ·åãªno-codeãã©ãããã©ãŒã ã§ããAppMasterã¯ããã®ã¢ãŒããã¯ãã£ã§ Service Discovery ã®æ©èœãå©çšããŠãã¢ããªã±ãŒã·ã§ã³éçºã®å¹çãæè»æ§ãã¹ã±ãŒã©ããªãã£ãåäžãããŸãããã®ãã©ãããã©ãŒã ã䜿çšãããšããŠãŒã¶ãŒã¯ããŒã¿ããŒã¹ ã¹ããŒããããžãã¹ ããžãã¯ãAPI endpointsã®çŽæçãªdrag-and-dropã€ã³ã¿ãŒãã§ã€ã¹ã䜿çšããŠããã€ã¯ããµãŒãã¹ ããŒã¹ã®ã¢ããªã±ãŒã·ã§ã³ãèŠèŠçã«èšèšããã³ã¢ãã«åã§ããŸãã AppMasterã¢ããªã±ãŒã·ã§ã³ã Docker ã³ã³ãããšããŠèªåçã«çæããã³ãããã€ããŸããããã¯ãã¯ã©ãŠãããŒã¹ãŸãã¯ãªã³ãã¬ãã¹ã®ç°å¢ã§ç°¡åã«ç®¡çããã³æ¡åŒµã§ããŸãã AppMaster ãKubernetes ãªã©ã®ã³ã³ãã ãªãŒã±ã¹ãã¬ãŒã·ã§ã³ ãã©ãããã©ãŒã ã«çµã¿èŸŒãŸãã Service Discovery æ©èœã掻çšããããšã§ããµãŒãã¹éã®éä¿¡ãšèª¿æŽãåçã§ããã忣ã·ã¹ãã å ã®ãã€ã¯ããµãŒãã¹ã®å»ã ãšå€åããç¶æ ã«é©å¿ã§ããããã«ããŸãã
åºãæ¡çšãããŠãã Service Discovery ãœãªã¥ãŒã·ã§ã³ã®æ³šç®ãã¹ãäŸã® 1 ã€ã¯ãHashiCorp ãéçºãããªãŒãã³ãœãŒã¹ã®åæ£ãµãŒãã¹ ã¡ãã·ã¥ ã·ã¹ãã ã§ãã Consul ã§ãã Consul ã¯ãäžå åããããµãŒãã¹ ã¬ãžã¹ããªãããŒ/å€ã¹ãã¢ãæ§æå¯èœãªãã«ã¹ ãã§ãã¯ãæäŸãã忣ç°å¢ã§ã®åçãªãµãŒãã¹æ€åºãšæ§æç®¡çãå¯èœã«ããŸãã Consul ã¯ãã¯ã©ã€ã¢ã³ãåŽãšãµãŒããŒåŽã®äž¡æ¹ã®ãµãŒãã¹æ€åºãã¿ãŒã³ããµããŒãããŠãããæ¢åã®ã¢ããªã±ãŒã·ã§ã³ããã©ãããã©ãŒã ãšç°¡åã«çµ±åã§ãããããææ°ã®ãã€ã¯ããµãŒãã¹ããŒã¹ã®éçºã«ãããŠè²ŽéãªããŒã«ã«ãªããŸãã
äŒæ¥ãçµç¹ãã¢ããªã±ãŒã·ã§ã³ã®éçºãšå±éã®ããŒãºã«åãããŠãã€ã¯ããµãŒãã¹ ã¢ãŒããã¯ãã£ãæ¡çšãç¶ããäžãService Discovery ã¯ãã¢ãžã¥ãŒã«æ§ãæè»æ§ãæ¡åŒµæ§ãããã³é©å¿æ§ã®æãŸããã¬ãã«ãéæããäžã§ãåºæ¬çãã€äžå¯æ¬ ãªã³ã³ããŒãã³ãã§ããç¶ããŠããŸãã AppMasterã Consul ãªã©ã® Service Discovery ãã¯ãããžãŒãšãã©ãããã©ãŒã ãæŽ»çšããããšã§ãéçºè ãäŒæ¥ã¯è€éãã軜æžããå¹çãåäžããã忣ã·ã¹ãã ã®é«å¯çšæ§ãšãã©ãŒã«ã ãã¬ã©ã³ã¹ãç¶æã§ããŸãã