CoreOSã«ã€ããŠåããŠèããã®ã¯ ã2013幎9æã®Yandex Road to Cloud Conferenceã§Peter Lemenkovããã§ããã ãããããç§ã¯ãã®OSã®éçºã«åå ããããšããèããããŸããã§ããã
2014幎10æã«CoreOSã2åç®ã«æãåºãããšããRubyã§æžããããã€ã¯ããµãŒãã¹ïŒå¥åŠãªããšã«ãç°ãªãããŒãžã§ã³ã®Rubyã䜿çšããŠããŸããïŒãç¶ç¶ççµ±åã«é©ããç°å¢ã«ç§»è¡ããã¿ã¹ã¯ãåãåããŸããã ãã®åŸãåããŠCoreOSãèµ·åããŸãããã䜿çšããã®ã¯éåžžã«äžäŸ¿ã«æããŸããã ãã®ããã¥ã¡ã³ãã¯è¡šé¢çãªãã®ã§ããã CoreOSãã¯ã©ã¹ã¿ãŒåãããOSã«å€ãããµãŒãã¹ã«ã¯å€ãã®æ¬ é¥ãããã絶ãéãªããšã©ãŒã®ããã«è¿·æãªæããåŒãèµ·ãããŸããã ã€ã³ãã©ã¹ãã©ã¯ãã£ã®äžéšã§ããCoreOSã«ç§»è¡ããããšã«çåã®äœå°ã¯ãããŸããã§ããã
2015幎3æã«ãCoreOSã®ã³ãã¥ããã£ãµããŒãã®äžéšãšããŠãµããŒããµãŒãã¹ãæäŸãããšããã¿ã¹ã¯ã3åç®ã«åããããŸããã ç§ãã©ã®ããã«å¯ŸåŠãããã«ã€ããŠãè°è«ããããŸãã
ç¥äºº
æåã®ã¿ã¹ã¯ã¯ãç§ãåããŠãã顧客ã®1人ã®å®çšŒåã·ã¹ãã ã«è¿ãæ©èœãå®è¡ããã¯ã©ã¹ã¿ãŒãæ§ç¯ããããšã§ããã ç§ã¯ããããã®Kafka-Storm-Cassandraã§å®éšããªããã°ãªããŸããã§ããã æŠå¿µå®èšŒã®å®è¡äžã«ãããã¥ã¡ã³ããšã³ãŒãetcdããã³fleetã®ãã¹ãŠã®åãæ¬ é¥ã«ééããŸãã ã ããã§ããetcdããã§ã«ã·ã¹ãã äžã«ãããšãã«Zookeeperã¯ã©ã¹ã¿ãŒãäžããããšã¯éè«ççã§ããã æ®å¿µãªããããããŸã§ã®ãšãããREST API etcdã§Zookeeper Juteãããã³ã«ã®ãã©ã³ã¹ã¬ãŒã¿ãŒãäœæããããšããåžæã¯ãããŸããã æ倧ã®å°é£ã¯ãApache Stormã®ããããžãŒã®äœæãåŒãèµ·ãããŸããã https://github.com/Yelp/pyleusãããžã§ã¯ãã®ãããã§ãJava / ClojureããããžãŒã®èª¬æãé¿ããããšãã§ããŸããã å®çšçãªæŠå¿µå®èšŒã¯ãå®è£ ã®æœåšçãªé¡§å®¢ã®1人ã«ããæåè£ã«å®èšŒãããŸããããæ®å¿µãªããããããžã§ã¯ãã¯è³éã®åé¡ã®ããã«å®è£ ã§ããŸããã§ããã
ç·Žç¿ãã
åŸãããçµéšãšCoreOSãåŠç¿ããéçšã§ã®ãã³ãã䜿çšããŠãæ¹åãéå§ããŸããã å ¬åŒIRCãã£ã³ãã«#coreosããã質åã«åçããããã¥ã¡ã³ããäœæããŸããã æãéèŠãªããšã¯ãå ¥ã£ãŠãããã¹ãŠã®è³ªåãçå£ã«åãæ¢ããæãæããªè³ªåã«ãçããããšããããšã§ãã ç§ããµããŒããæäŸããæ°ãããã¯ãããžãŒã¯ããããã«ã€ããŠè³ªåãããŠãŒã¶ãŒã«ãšã£ãŠã¯æªç¥ã§ãã£ãããšã¯æ³šç®ã«å€ããŸãã ãŠãŒã¶ãŒã質åãããŠãããšãããŠãŒã¶ãŒç°å¢ãåçŸãã詳现ãèªåã§ç解ãããœãŒã¹ã³ãŒãã«ã¢ã¯ã»ã¹ããå Žåã«ãã£ãŠã¯ãšã©ãŒãä¿®æ£ããå¿ èŠããããŸããã ãã®ãããªç«ã®æŽç€Œã«ãããsystemdãLinuxã«ãŒãã«ãCã®ç·Žç¿ãGoã§ã®èšè¿°ã®åŠç¿ã®ãã¥ã¢ã³ã¹ã®å€ããç 究ããããšãã§ããŸããã
ããã¥ã¡ã³ã
systemdã«é¢é£ãããŠãŒã¶ãŒã®è³ªåã¯éåžžã«é »ç¹ã«ãããŸãã systemdã®å ¬åŒããã¥ã¡ã³ãã«ã¯ãã¹ãŠã®è©³çŽ°ãèšèŒãããŠããŸããããŠãŒã¶ãŒã¯äŸãå¿ èŠãšããŸãããèªãæéã¯ãããŸããïŒèšããŸã§ããããŸãããããŠãŒã¶ãŒã®å¿ãã€ããã«ã¯ãæ¢è£œã®ãµã³ãã«ãªã©ãå¿ èŠã§ãïŒã CoreOSããµããŒãããããã«ãsystemdã«é¢ããå€ãã®äŸãšè¿œå ã®ããã¥ã¡ã³ããæžããŸããã ãã®ãã¡ã®ããã€ãã«ã€ããŠã¯ãGoogleã¯CoreOSããã¥ã¡ã³ãã®ããŒãžãžã®æåã®ãªã³ã¯ãçºè¡ããŸããã ãã®åŸããã£ã³ããªã³ã·ãããWiki ArchlinuxãåŒãç¶ããŸããã äŸãšèª¬æã¯ããŠãŒã¶ãŒãééã£ãæ¹æ³ã§æ å ±ã解éã§ããããããå Žæã«ããã¹ãã§ããã ç§ã®èãã§çããããã¥ã¡ã³ããŸãã¯è³ªåãwhat ifïŒãã«é¢ãããŠãŒã¶ãŒã®èª€è§£ã®ã»ãšãã©ã¯ãgithubã§ã®ãã«ãªã¯ãšã¹ãã«å€ãããŸããã ãŠãŒã¶ãŒã®è³ªåã«å¯Ÿããåçãããã¥ã¡ã³ãã«ãªãå Žåã¯ãä¿®æ£ããŠãã ããã
éã¶
åçãæçš¿ããåã«ãå¯èœãªéãCoreOSã®å®å®çãããŒã¿çãããã³ã¢ã«ãã¡çã§ç¢ºèªããå¿ èŠããããŸãã ãããè¡ãã«ã¯ãlibvirtã®å©ããåããŠãUbuntuã®æ¢è£œã®ã¯ã©ãŠãVMã€ã¡ãŒãžã䜿çšããŠãå éšã€ã³ãã©ã¹ãã©ã¯ãã£ã®ä»®æ³ãã·ã³ãæã¡äžããbashã¹ã¯ãªãããé©å¿ãããå¿ èŠããããŸããïŒããã«ã€ããŠã¯å¥ã®æçš¿ãæžããããããŸããïŒã å¿ èŠã«å¿ããŠãã¹ã¯ãªããã¯ç¹å®ã®ãªãªãŒã¹ã®å ¬åŒCoreOSã€ã¡ãŒãžïŒ https://stable.release.core-os.net/amd64-usr/current/ ïŒãããŠã³ããŒãããããã«åºã¥ããŠã¹ãããã·ã§ãããäœæãã cloud-configãããŠã³ããããä»®æ³ãã·ã³ãèµ·åããŸãã ã·ã§ããã·ã§ããã䜿çšããå Žåããã¯ãªãŒã³ããªä»®æ³ãã·ã³ãäœæããããã»ã¹ã¯20ç§ããããããŸããïŒSSDãããã«é«éã«äœ¿çšããå ŽåïŒã ä»®æ³ãã·ã³ã®ã¯ã©ã¹ã¿ãŒãäœæãããšãããã£ã¹ã¯ã®æéãšã¹ããŒã¹ãç¯çŽãã1ã€ã®åºæ¬ã€ã¡ãŒãžã䜿çšãããŸãã ããšãã°ã3ã€ã®ä»®æ³ãã·ã³ã®ã¯ã©ã¹ã¿ãŒã¯ããã30ç§ã§ç«ã¡äžãããŸãã Vagrantãšæ¯èŒããlibvirt-qemuãœãªã¥ãŒã·ã§ã³ã®å©ç¹ã Vagrantã®libvirtãããã€ããŒã§ããããã®ãããªé床ãæäŸããŸããã§ããã åœæ¥ã¯ããŠãŒã¶ãŒç°å¢ãç¹°ãè¿ãã¯ã©ã¹ã¿ãŒãæ°ååäœæããã³åé€ããå¿ èŠããããŸããã ã¯ã©ã¹ã¿ãŒå šäœããã£ã1ã€ã®cloud-configã§æ§æãããŸããã çŸåšãcloudinitã®ä»£ããã«ã Ignitionãã¢ã¯ãã£ãã«å®è£ ãããŠãããã·ã¹ãã ã®åæããŒã段éã§å®è¡ãããŸãã
ãã«ã ãºãã³
CoreOS補åãšå¯æ¥ã«äœ¿çšãããŠããKubernetesãããžã§ã¯ããå¿ããªãã§ãã ããã KubernetesãåŠç¿ããããã«ãCloud-configãäœæããŸãããããã¯ãCoreOSã®KubernetesããŒã ãäœæããå ¬åŒããã¥ã¡ã³ãã«èšèŒãããŠããæ§æãæ£ç¢ºã«åçŸããŸãã ãŸãããŠãŒã¶ãŒãæ±ããŠããåé¡ãæ°åã§åçŸãã解決çãææ¡ããããšãå¯èœã«ãªããŸããã
解決ç
ãŠãŒã¶ãŒããã®è³ªåã«å¯ŸããŠã解決çããŸãã¯å°ãªããšãåé¿çãçºè¡ããããšããŸããã CoreOSã®ãµã€ãã©ã€ã³ãžã®ã¢ã¯ã»ã¹ã§ãããããŸãå©ãã«ã¯ãªããŸããã§ããããªããªãã äžçã®ãšãŒãããå°åã§ãµããŒããæäŸããCoreOSããŒã å šäœã倪平æŽæé垯ã§åããŠããŸããã ç§ã®ååãå°çã®å察åŽã§ç®èŠãããŸã§åŸ ããªãããã«ãç§ã¯ãã°ãã°ãœãããŠã§ã¢ã®ããã»ã¹ãç解ããããã«ãœãŒã¹ã³ãŒããç 究ããæã«ã¯ã³ãŒãã®ãšã©ãŒãããã«ä¿®æ£ããŸããã
ãæèŠ
ãããŸã§ãå€ãã®äººãã³ã³ããåã«æççãã€æå®çã«ç®ãåããŠããŸãã DockerãŸãã¯CoreOSã«èšåãã䟡å€ãããã ããªã®ã§ã** ** ** vnaã泚ãã§ãã ããã åã¿ã¹ã¯ã«ã¯ç¬èªã®ãœãªã¥ãŒã·ã§ã³ããŒã«ããããšããäºå®ã«åžžã«æ³šæãæã£ãŠããŸãã ãããŠãåããŒã«ã«ã¯é·æãšçæããããŸãã ã·ã¹ãã ããã§ã«ä»®æ³ãã·ã³äžã§å®è¡ãããŠãããäœããå€æŽãããå°ç¡ãã«ãããããå¿ èŠããªãå Žåã¯ãããã«æ©èœãããŸãã ã³ã³ããã«ãã¹ãŠã匷å¶çã«è»¢éããããšã¯ãããŸããã ãã ããã¿ã¹ã¯ãæ¢ã«èšå®ãããŠããå ŽåããŸãã¯ã³ã³ããã§éã¶èªç±æéãããã°ã誀解ãçããŸãã ä»®æ³ãã·ã³ãããã¯ã¹ã¿ãŒããããã³æ§æ管çã·ã¹ãã ã§ã®äœæ¥ã«æ £ããŠãã人ã ã¯ãã³ã³ããã«å¯Ÿããå€ãã¢ãããŒããæ¡çšãããã®åŸãã³ã³ãããæ©èœããªãããšã蚎ããŸãã ç§ã¯çãç¹æ®ãããŸãããããäžåºŠhttp://12factor.net/ãžã®ãªã³ã¯ãæäŸããŸããã»ãšãã©ã®å Žåãã³ã³ããã¯æ§æå ã«æ ŒçŽããããã¹ãã«äŸåããªãããšãæãåºããŠãã ããã
å®ç§ã
å®ç§ã«å¶éã¯ãããŸããã ä»äºã¯åžžã«ãããŠããŸãã ç©ãããªæ¥ã«ã¯ãTODOãªã¹ãã§æéãç¡é§ã«ããŸããã ãªã¹ãå ã®å°ããªã¢ã€ãã¢ãæ¬ ç¹ããã¹ãŠæžãçããŸãããããã®ãªã¹ãã¯æ±ºããŠçµãããŸããã§ããã
ã³ã³ããã¹ã
æãå°é£ãªããšã¯ã念é ã«çœ®ããŠããã€ãã®ã¿ã¹ã¯ã«åãçµãããšã§ããã IRCãã£ã³ãã«ã§åæã«5人ã®ãŠãŒã¶ãŒãšããåãããããšããããŸããã ããã¯è³ãéåžžã«ããèšç·ŽããŸãããé·æéã®ã³ã³ããã¹ãåãæ¿ãã¯éåžžã«ç²ããŸãã
èŠé
ãµããŒããªã¯ãšã¹ãã®æ°ãæžãå§ãããšããã«ã ããªãŒããããžã§ã¯ãã«åãçµãã§ããå°ããªããŒã ã«åå ããŸããã åœæããããžã§ã¯ãã¯æŸæ£ãããŸããããªããªã ãã¹ãŠã®æ³šæã¯Kubernetesã«åããããŸããã ããããsystemdãã¯ã©ã¹ã¿ãŒãšããŠäœ¿çšããå¿ èŠããããŠãŒã¶ãŒãããŸããã 3ãæéãçŽ15ã®æ°ããæ©èœãã¹ããäœæãã httpsïŒ//semaphoreci.comã§èªåæ€èšŒãå®è£ ããŸããã ããŒãžã§ã³v0.12.0ã®ãªãªãŒã¹ãŸã§ã«ã36ã®åé¡ã解決ããã³ãŒãã«20ã®å€æŽãå ããŸããã ããŒãžã§ã³v0.13.0ãŸã§ã«ãçŽ20ã®åé¡ãã¯ããŒãºããã³ãŒãã«16ã®å€æŽãå ããäºå®ã§ãã
ããã
ãããŸã§ãCoreOSãµããŒãããŒã ã¯ãµã³ãã©ã³ã·ã¹ã³ã§çµæãããç§ã¯ä»ã®ãããžã§ã¯ãã§ã®äœæ¥ã«åãæ¿ããŸããã äžå¹Žã®éã«ãç§ã¯å¹žéã«ããã·ã¥ãŒã»ã®ã£ã¬ãã ã ãã©ã€ã¢ã³ãèµ€ã²ããããªã³ãã³ ã ã¬ããŒãã»ããšã¿ãªã³ã° ã ã±ã«ã·ãŒã»ãã€ã¿ã¯ãŒãªã©ã®äººã ãšãããã¹ãã§ããŸããã
PSåçšãµããŒãã®æäŸã®ããã«åå ¥ãå°ãæãªã£ããšæããŸãã
nalumïŒCoreOSãããŒãžãLinuxãµãŒãã¹ã䜿çšããŠãã人ã¯ããŸããïŒ
ãã«ãã¢ïŒããããç§ãã¡ã¯ãã ã«ã€ã©ã¹ã«å°ããŸã:)
nalumïŒã«ã€ã«ã¹ãšã¯èª°ã§ããïŒ
ãã«ãã¢ïŒéåžžããã¹ãŠã®è³ªåã«çããç·
PPS CoreOS Festã«ã³ãã¡ã¬ã³ã¹ã¯æ¥é±ãã«ãªã³ã§éå¬ãããŸãã åå ããã人ã¯ãŸã ãã±ãããè³Œå ¥ããæéãããïŒ https : //coreos.com/fest/