Mirantisããã°ã§ãOpenStackãããžã§ã¯ãã®æè¡ãããŒãžã£ãŒãšã®äžé£ã®ã€ã³ã¿ãã¥ãŒã®8çªç®ã玹ä»ããŸãã ç§ãã¡ã®ç®æšã¯ãæè¡å°é家ã®å¹
åºãã³ãã¥ããã£ãæè²ãã人ã
ãOpenStackãããžã§ã¯ãã«ã©ã®ããã«è²¢ç®ããå©çãããããããç解ã§ããããã«ããããšã§ãã åœç¶ã®ããšãªãããMirantisã§ã¯ãªãã€ã³ã¿ãã¥ãŒå¯Ÿè±¡è
ã®èŠç¹ã以äžã«ç€ºããŸãã
以äžã¯ãOpenStack Troveã®ãã¯ãã«ã«ãããžã§ã¯ããããŒãžã£ãŒã§ããMichael Basnightãžã®ã€ã³ã¿ãã¥ãŒã§ãã
MirantisïŒèªåã«ã€ããŠæããŠãã ãããMichael BusnightïŒç§ã¯Rackspaceã®ãªãŒããšã³ãžãã¢ã§ãOpenStackãããžã§ã¯ãã«24æé幎äžç¡äŒã§åãçµãã§ããŸãã Rackspaceã«ã¯7幎以äžæºãã£ãŠããŸãã 圌ã¯ããŒã¿åæãã¯ã©ãŠãWebãµã€ããã¹ãã£ã³ã°ã倧èŠæš¡ãªããããžã§ãã³ã°ã·ã¹ãã ãæ
åœããçŸåšã¯Troveã«åãçµãã§ããŸãã Rackspaceã®ãããã§ãä»ã§ã¯100ïŒ
ã®ãšãã«ã®ãŒããªãŒãã³ãœãŒã¹ããŒã¿ããŒã¹ã«æäŸã§ããŸãã ç§ã¯ã«ãªãã©ã«ãã¢å·ããŒã¯ã¬ãŒã«äœãã§ããŸãã家ã®ãã©ã³ãã§ã³ãŒããŒã飲ãã ãã劻ãšçåŸ10ã¶æã®æ¯åã¢ã¬ã¯ãµã³ããŒã®é£ã§åããŠããŸãã
質åïŒOpenStackãšã®é¢ä¿ã®æŽå²ã¯äœã§ããïŒ ãªããããžã§ã¯ãã«åå ããŠããã®ã§ããïŒåçïŒRackspaceã§Troveãäœæãããšããç§ãä»ã®éçºè
ãOpenStackã«ã€ããŠèããŸããã§ããã JavaãOSGIãZookeeperãªã©ã®å®å
šãªã¹ã¿ãã¯ãæäœãå§ããŸããã ...æšæºJavaããã°ã©ã ã ãã®æãRackspaceã¯OpenStackã«è³ããããšã«ããŸããã ç§ãã¡ã®å°æ¥ãOpenStackã«é¢ä¿ããŠããããšãèŠãŠãç§ã¯ïŒåœæã®äž»èŠãªéçºè
ããã³ãªãŒããŒã§ããïŒã³ã³ã»ããããã¹ãããNovaã³ã³ãããŒã©ãŒãããããžã§ãã³ã°ã¡ã«ããºã ãšããŠäœ¿çšãå§ãããã¹ããåæžããããšã«ããŸããã OpenStackã€ãã·ã¢ããã¯ãŸã éçºãå§ãŸã£ãã°ããã§ãã£ããããéäžã§ããã€ãã®å°é£ã«çŽé¢ããŸããã ããããç§ã¯éçºã®éçšã§ã»ãšãã©ãã¹ãŠã®OpenStackãããžã§ã¯ãã«å€æŽãæ瀺ããæ©äŒããããŸãããçŸåšãæ¢åã®OpenStackããŒã¹ã®ã€ã³ã¹ããŒã«ã«çµã¿èŸŒãããšãã§ããOpenStackã®äžã«æ·±å»ãªãããžã§ã¯ãããããŸãã
質åïŒTroveãããžã§ã¯ãã®ãã¯ãã«ã«ãããŒãžã£ãŒãšããŠã®ããªãã®è²¬ä»»ã¯äœã§ããïŒåçïŒãžãããã質åã§ãã ããã¯ã»ãšãã©ã¬ã·ãã§ãã ãããžã§ã¯ãã®ã³ã³ã»ãããã³ãã¥ããã£ã«ãšã£ãŠæé©ãªæ¹åã«é²åããããã«ã補åã®æææš©ãšç®¡çã®åºæ¬ããå§ããŸãã ãããžã§ã¯ã管çã®ãã³ããè¿œå ãã詳现ãªèšç»ãäœæãã誰ãäœã«åãçµãã§ãããã远跡ããŸãã 人ã
ã®ç®¡çãã·ã£ããã«ãããã£ãããšè¿œå ããŠãçŽæã«åŸã£ãŠçã«çŸ©åãæããããã«ããŸãã ã³ãŒãæ€èšŒã®å¯å€§ãªéšåãã-1ãã³ãŒãã®ãã³ããè¿œå ããLUCKYã®å Žåããã¹ãŠã®æºåãã§ããããèªåã§éçºãããã®ã§å°ãglããŸãã
質åïŒOpenStackã§ã®Troveã®åœ¹å²ã¯äœã§ããïŒ Troveãããžã§ã¯ããéèŠãªã®ã¯ãªãã§ããïŒåçïŒããŒã¿ã¹ãã¬ãŒãžã¯éèŠã§ãããããTroveãããžã§ã¯ãã¯éèŠã§ãã ããŒã¿ãä¿åãŸãã¯ãã£ãã·ã¥ããå¿
èŠã®ãªãåäžã®ãããžã§ã¯ãã«ååãä»ããããšã¯ã§ããŸããã Troveã¯ã¯ã³ã¹ãããã¹ãã¬ãŒãžãœãªã¥ãŒã·ã§ã³ã§ãã Redisãé«åºŠãªå¯çšæ§ãåãããªã¢ã«ã¿ã€ã ããŒã¿ãŠã§ã¢ããŠã¹ããããã¹ãã¢ã«é¢ãããã¹ãŠã®æ
å ±ãä¿åããMySQLããŸãã¯Marconié»ä¿¡ã¡ãã»ãŒãžãä¿åããMongoDBãªã©ã Troveã®æŠå¿µã¯ãããããã¹ãŠãæäŸããã¯ã©ã¹ã¿ãŒãæ§æããããªã³ã©ã€ã³ã§åäœããããšãä¿èšŒããããšã§ãã Troveã¯ããã®å©ããåããŠå®è£
ããããµãŒãã¹ã®ããã¯ã¢ãããšãªã«ããªãæäŸããç¹å®ã®æç¹ã§ã®èªåããã¯ã¢ãã/埩å
ãªã©ã®æ©èœã¯çŸåšéçºäžã§ãã
質åïŒTroveãããžã§ã¯ãã§æ¬åœã«ãŠããŒã¯ã§ç»æçãªãã®ã¯äœã§ããïŒåçïŒããŒã¿ã¹ãã¬ãŒãžã·ã¹ãã ã®åéã®èšå€§ãªæ°ã®å°é家ãTroveã§åããŠããŸãã å€ãã®ãããžã§ã¯ããšãµãŒãã¹ãå®è£
ããããã«ãã³ãã¥ããã£ããäž»èŠãªäººã
ãéããŸããã ããã«ã¯ãããŒãžã§ã³3.23以éã®MySQLã管çããéçºè
ãå«ãŸããŸãã MySQLã§ã¯ã©ã¹ã¿ãŒãå®è£
ããããã®ãããžã§ã¯ããæžãã人ãåéããŠããŸãã å®è£
ããã»ã¹ã§Redisã®å°é家ãšçžè«ããŸãã ç§ãã¡ã¯ãããŒã¿ã¹ãã¬ãŒãžãšåŠçã®åéã ãã§ãªããéçºã®åéã®å°é家ã§ããããŸãã ãããè¡ãæ¹æ³ãããããªãå Žåã¯ããããç¥ã£ãŠãã人ãç¥ã£ãŠããŸãã
質åïŒTroveã³ãã¥ããã£ã«ã€ããŠæããŠãã ãã-ããªããšååããŠããã®ã¯èª°ã§ããïŒåçïŒRackspaceã®äœäººãã®é«çŽéçºè
ããã®èµ·æºã«ç«ã¡ãHPã¯ã©ãŠããµãŒãã¹ã®éçºè
ããã®ã¢ã€ãã¢ãæ¡çšããŸããã 圌ãã¯éçºã«åŒŸã¿ãã€ããã®ãæ¬åœã«å©ããŸããã ãã§ã«ãã€ã³ãã¥ããŒã·ã§ã³æéãã«ç§»è¡ããŠãããããMirantisãéçºã«é¢äžãããŸããã ãã®ãããžã§ã¯ãã«ã¯ãUnitedStackãšãã¥ãŒãžãŒã©ã³ãã®éçºè
ãåå ããŠããŸãã ããã«ãã¯ã©ã¹ã¿ãªã³ã°ã®è€éãã«èå³ããã人ãããŸãã ãŸããGalera ClusterãšTungsten Replicatorã«éåžžã«èå³ããã人ãã¡ãšçŽ æŽãããäŒè©±ãããŸããã 2ã€ã®ã¿ã€ã ãŸãŒã³ããå§ããŠããããæ°ãæã§å
šäžçãåžå·»ããŸããïŒ
質åïŒä»æ¥ã®Troveã³ãã¥ããã£ã®ææã¯äœã§ããïŒåçïŒRackspaceã§ãã°ããæ©èœããŠãããµãŒãã¹ããããŸãã ããŒã¿ããŒã¹ããããžã§ãã³ã°ãç§åŠã«å€ããŸããïŒ MySQLãµãŒãã¹ã®æäœã«é¢ãããã¹ãŠãç¥ã£ãŠããŸãã ããã«ãã³ãã¥ããã£ã«å¯Ÿãã圹å²ãããªã¬ãŒã·ã§ãã«ããŒã¿ããŒã¹ãšéãªã¬ãŒã·ã§ãã«ããŒã¿ããŒã¹ãããããžã§ãã³ã°ããã¡ã«ããºã ãšããŠå®çŸ©ããŸããã äŒæ¥ãšã®é¢ä¿ã確ç«ãã補åãä¿é²ããããã«å€ãã®ããšãè¡ã£ãŠããŸããã IcehouseãªãªãŒã¹ã®ãªãªãŒã¹ãã6ãæåŸã«Troveã«äœãèµ·ããããç¥ãããã ã¯ã©ã¹ã¿ãªã³ã°ãæ§æãå€æŽããæ©èœãçµã¿èŸŒã¿ã®RedisããŒã¿ãŠã§ã¢ããŠã¹ãªã©ã®æ©èœãæåŸ
ããŠããŸãã
質åïŒOpenStack HavanaãªãªãŒã¹ã§TroveãæäŸããæ©èœã¯äœã§ããïŒåçïŒTroveã³ã³ããŒãã³ãã¯MySQLã§åäœããŸãã ã€ã³ã¹ã¿ã³ã¹ãã»ãã¥ãªãã£ã°ã«ãŒããããã³ããŒã¿ããŒã¹ãŠãŒã¶ãŒã®äœæãšå€æŽã®ããããžã§ãã³ã°ãæäŸããŸãã ããã¯ãµã€ãºå€æŽããµããŒããããã®åŸãéåžžã¢ãŒãã§æ§æãšãµãŒãã¹ãæ©èœããããã«å¶åŸ¡ããŸãã ããã¯ã¢ãããšåŸ©å
ãå¯èœã§ãã å®éã«ã¯ãMySQLãµãŒãã¹ã§èŠãããã¹ãŠã®ãã®ã1ã€ã®ã€ã³ã¹ã¿ã³ã¹ãã管çãããŠããŸãã
Troveããã®ã€ãã¬ãŒã·ã§ã³ã®ã»ããã¢ããã§ããæè»ã«ãªãããã«å€ãã®æéãè²»ãããçµ±åã®å¯èœæ§ã«å¿
èŠãªãã¹ãŠãå®è¡ããããšã«çŠç¹ãåœãŠãŸããã RHELãšçµ±åããŠãã³ãã¬ãŒãæ§æãã¡ã€ã«ãäœæããæ©èœãè¿œå ãããªã©ãèç©ãããå€æ°ã®æè¡çè² åµãæé€ããŸããã æåŸã«ãªããŸããããHeatãšçµ±åããæ©èœãè¿œå ãããŸãããããã¯ãHavanaãªãªãŒã¹ã§ã¯ãªãã·ã§ã³ã«ãªããŸãã
質åïŒãã®ãããžã§ã¯ãã«ã€ããŠäººã
ã«äœãç¥ã£ãŠã»ããã§ããïŒåçïŒç§ãã¡ã¯åãªããµãŒãã¹ãšããŠã®MySQL以äžã®ãã®ã§ããããšã人ã
ã«ç¥ã£ãŠãããããã§ãã IcehouseãªãªãŒã¹ã§ã¯ãCassandraãšMongoDBã®ã¯ã©ã¹ã¿ãªã³ã°ãšMySQLã¯ã©ã¹ã¿ãªã³ã°ãå®å
šã«ãµããŒãããäºå®ã§ãã ããã«ã¯ããã¹ã¿ãŒãã©ãã¯ãŒè€è£œãšGalera / Tungsten察称è€è£œããã³ã¯ã©ã¹ã¿ãªã³ã°ãå«ãŸããŸãã
質åïŒTroveã«é¢ããŠãããã誀解ã¯ãããŸããïŒåçïŒç¹°ãè¿ããŸãããç§ãã¡ã¯åã«ããµãŒãã¹ãšããŠã®MySQLããŸãã¯ããµãŒãã¹ãšããŠã®SQLãã§ãããšãã誀解ã«ã€ããŠç¹°ãè¿ããŸãã ç§ãã¡ã¯ãã以äžã§ãã SQLããã³NoSQLããŒã¿ãŠã§ã¢ããŠã¹ã®ããããžã§ãã³ã°ãšã¡ã³ããã³ã¹ãæäŸããããšèããŠããŸãã ãé«åºŠã«å°éåããããããžã§ã¯ãããšããŠã©ãã«ä»ããããããšã¯æãŸãããããŸããã
質åïŒããªãã¯Troveã®ã³ã³ã»ããã«ã€ããŠèšåããŸããã ããã«ã€ããŠè©³ããæããŠãã ãããåçïŒã¯ã©ã¹ã¿ãŒã ã¯ã©ã¹ã¿ãŒ ã¯ã©ã¹ã¿ãŒ Troveã®æãææãªéçºã®æ¹åæ§ã¯ãããŒã¿ãŠã§ã¢ããŠã¹ã®ããããžã§ãã³ã°/ã¯ã©ã¹ã¿ãªã³ã°çšã®APIãžã®å€æã§ãã 人ã
ã¯èªåã®ã¯ã©ã¹ã¿ãŒã䜿çšããããªãã 圌ãã¯è£œåãæ©èœããããšãæãã§ããŸãã Troveã¯ããããã®ã¯ã©ã¹ã¿ãŒã®ã€ã³ã¹ããŒã«ãæ§æãããã³ã¡ã³ããã³ã¹ãç°¡åã«ããããšèããŠããŸãã
質åïŒããªãã®ã¿ãŒã²ããã°ã«ãŒãã¯èª°ã§ããïŒåçïŒã¯ã©ã¹ã¿ãŒãå¿
èŠãªäººã¯...ç§ãçãããšæšæž¬ã§ãããšæããŸãïŒ æªæ¥ã¯ããŒã¿ã®ããã¯ã¢ããã§ãã ã¯ã©ã¹ã¿ãªã³ã°ã«ã€ããŠãåãããšãèšããŸãã 顧客ã¯ããŒã¿ãå¿
èŠãšããå¿
èŠãªãšãã«å©çšã§ããããšãä¿èšŒããŸãã ããã¯ã¯ã©ã¹ã¿ãªã³ã°ã®ãµããŒãã«åœ¹ç«ã¡ãŸãã
質åïŒçŸåšïŒå°æ¥ïŒTroveãèµ·åããŠé©åã«æäœããããã«å¿
èŠãªåææ¡ä»¶ã¯äœã§ããïŒåçïŒä»åŸ6ãæã§æãæ·±å»ãªå€åã¯ãHeatãããžã§ã¯ãã§ãã Heatãã¯ã©ã¹ã¿ãŒã®ã€ã³ã¹ããŒã«ããµããŒãããããšãé¡ã£ãŠããŸãã ããã¯HeatããŒã ã«åå ããããšãæå³ããå Žåãããã圌ãã¯éåžžã«è¯ã人ãªã®ã§ãå°é£ã¯ãããŸããïŒ ãã以å€ã¯ãOpenStackã®æšæºèŠä»¶ã«åŸãã ãã§ãã ããã«éå§ãããDevStackãšã®çµ±åãæ¹åãããããDevStackãèµ·åããŠTroveã䜿çšããã ãã§ãã
質åïŒTroveãããžã§ã¯ãã®åå è
ã®äžã§èª°ã«äŒãããã§ããïŒåçïŒãããžã§ã¯ãã«ã¯2çš®é¡ã®äººãããŸãã ããŒã¿ã«æ
ç±ãåŸãã人ã
ã Galera ClusterãCassandraããŸãã¯ãã®ä»ã®ã¹ãã¬ãŒãžæè¡ãç¥ã£ãŠãã人ã ãããŠãããã«éèŠãªã®ã¯ãã·ã¹ãã ãå¶åŸ¡ããã人ã
ã§ãã ãªãã¬ãŒã¿ãŒã¯ãã·ã¹ãã å
šäœãæãããç解ããŠããŸãããªããªãã圌ãã¯ãã¹ãŠã®ãèµ°è¡ã®ã¢ããç¥ãå¿
èŠãããããã§ãã ç§ã¯ãšã³ãžãã¢ããªãã¬ãŒã¿ãŒãšèšå€§ãªç¥çäŒè©±ã亀ãããTrove補åãæ¹åããããšãã§ããŸããã
質åïŒã©ã®æ©èœãæ¹åããã³ãã¹ãããå¿
èŠããããŸããïŒåçïŒHeatã³ã³ããŒãã³ãã®æ°èŠæ§ã®ããã«ãHeatã³ã³ããŒãã³ãã®ãµããŒããæ¹åããå¿
èŠããããšæããŸãã Troveã¯å°æ¥çã«Heatã§å€ãã®ããšãã§ãããšæããŸãã RHEL / CentOSã®ãµããŒãããã¹ããã人ããã£ãšèŠããã§ãã MirantisããŒã ã¯ãRHEL / CentOSãå®å
šã«ã»ããã¢ããããéã«å€å€§ãªå©ããæäŸããŠãããŸãããæè¬ããŠããŸãã RHEL / CentOSã®ãµããŒãã«é¢ããŠãä»ã®äŒæ¥ã«ãåå ããŠããããããšæããŸãã
質åïŒäººã
ã¯ã©ã®ãããæ£ç¢ºã«å§ããããšãã§ããŸããïŒåçïŒé¢çœãã Troveã®äœæ¥ã¢ãŒããžã®çµè«ãåçŽåããããã«äœæ¥äžã§ãã ç§ãã¡ã¯å€ãã®éæšæºã®æ¹æ³ã䜿çšããŠããŸãããæè¡ãããžã§ã¯ããããŒãžã£ãŒãšããŠã®ç§ã®è²¬ä»»ã®1ã€ã¯æšæºåã§ãã DevStackã®ãµããŒããæäŸããäœæ¥ãçµäºããŸãããããã§ã«é²è¡äžã§ãïŒ ãããšãDevStackã§è¿æ¥äžã«å©çšå¯èœã«ãªãä»ã®æ©èœã«ãããè¿œå ã®èšå®ãªãã§Troveã䜿çšã§ããŸãã ãã ããçŸæç¹ã§ã¯ãdiskimage-builderãå±éãããã£ã¹ã¯ã€ã¡ãŒãžãäœæããŠGlanceã«ã¢ããããŒãããå¿
èŠããããŸãã ãã®åŸã¯ãTroveã¯ã©ã€ã¢ã³ãã¢ããªã±ãŒã·ã§ã³ã䜿çšããŠã€ã³ã¹ã¿ã³ã¹ãããããžã§ãã³ã°ããã®ãšåããããç°¡åã§ãã ããã«ãããã€ãã®è£å©ã¹ã¯ãªãããTroveãšçµ±åããããã®ãªããžããªã§å©çšå¯èœã§ããããã¯ãDevStackãšã®æ°ããçµ±åã§æ©èœããå¯èœæ§ã確ä¿ããããã«ãä»åŸæ°æ¥éæŽæ°ããŸãã æ°é±éã®ãã¡ã«æ
ç±ãèœã¡çããšãéæ¹ããªãç°¡åã«Troveã䜿ãå§ããããšãã§ããŸãã ãããŠèª°ãã質åãããå Žåãopenstack-troveã«ã¯è³¢ã人ã
ã®è»éãš1ã€ãŸãã¯2ã€ã®ããããããããŸãã
質åïŒãã€ã±ã«ãããããšãããããŸããïŒåçïŒãŸã£ãããããŸããïŒ