
ç§ã¯37æ³ã§ãããã°ã©ãã³ã°æšæºã§ã¯99æ³ã«çžåœããŸãã ç§ã¯ããããªãã¯ã€ã³ã¿ãŒãããã®æåã®æ¥ãšæåã®ã€ã³ã¿ãŒããããããã€ããŒãæãåºãã®ã«ååãªå¹Žéœ¢ã§ãã ç§ã¯æåã«ãã€ã³ã¿ãŒãããã¢ã¯ã»ã¹ã·ã³ã·ããã£ïŒIACïŒãšãããããã€ããŒãä»ããŠãªã³ã©ã€ã³ã«ãªããŸããã Sun SparcStation 10ãµãŒããŒãžã®ãã€ã€ã«ã¢ããã¢ã¯ã»ã¹ãæäŸãããŠãŒã¶ãŒã¯elmïŒé»åã¡ãŒã«ã¯ã©ã€ã¢ã³ãïŒãemacsãlynxïŒããã¹ãããŒã¹ã®Webãã©ãŠã¶ãŒïŒããããŠãã¡ããIRCãªã©ã®å€ãããã®ã¿ãŒããã«ã¢ããªã±ãŒã·ã§ã³ãå®è¡ã§ããŸãã
ãã®åŸãCSLIPã¿ãŒããã«ãµãŒããŒïŒPPPã®å身ïŒãåŒã³åºããŠãå®éã®IPã¢ãã¬ã¹ã§ç¬èªã®LinuxãŸãã¯Windowsã³ã³ãã¥ãŒã¿ãŒïŒ
ãã©ã³ãããWinSockãå©çšå¯èœãªå Žå ïŒããã€ã³ã¿ãŒãããã«çŽæ¥æ¥ç¶ããæ©èœãè¿œå ããŸããã
ãããããã®SparcStationã«æ»ããŸãã ãã·ã³ã«ã¯
2ã€ã®CPUãè£
åãããŠãã
ã33 MââHzã®å·šå€§ãªåšæ³¢æ°ã§åäœããæ倧512 MBã®ã¡ã¢ãªãå容ã§ããŸããããã¹ããããæ倧ã«è©°ã蟌ãŸããŠãããšã¯æããŸããã åœæã®RAMã¯éåžžã«é«äŸ¡ã§ããã ãã®ãããªæ§ãããªãªãœãŒã¹ãåãããµãŒããŒã¯ãåæã«50ã100人ã®ã¢ã¯ãã£ããŠãŒã¶ãŒã«ãµãŒãã¹ãæäŸããæ°äžä»¶ã®ã¡ãŒã«ãåŠçããIRCãã£ãããç¶æããNCSA HTTPdãä»ããŠåæHTTP 1.0ããµããŒãããSlackware Linuxã®FTPãã©ãŒãšããŠèªäž»çã«ãµãŒãã¹ãæäŸããŸããã äžè¬çã«ã圌ã¯è² è·ã«ããŸã察åŠãã1ã2ãæéã¢ããã¿ã€ã ã瀺ããŸããã
ç§ãã¡ã®æ代ã«ããã°ã©ã ãã©ã®ããã«èšãäžãã£ãã®ãã«ã€ããŠããªãã¯æŽèšãæã£ãŠãããšç¢ºä¿¡ããŠããŸãã ãããããªããããªãã¯æ£ããã ãããããã®ã¹ããŒããšä»ã®åæ§ã®ã¹ããŒãã®éãã¯
ããã®è
«ãã®
äž»ãªçç±ã説æã§ããè«çç仮説ãæ瀺ããŠããããšã§ãã ç§ã®æèŠã§ã¯ããããã¯éå»ã®éåžžã«åçŽãªèšèšãªãã·ã§ã³ãééã£ãæ¹åã«é²ãã ãšããäºå®ã®çµæã§ãã
SparcStationãæãåºããã®ã¯ãéåžžã«æããªè³ªåããå§ãããããã§ãã
ãªãä»®æ³åãå¿
èŠãªã®ã§ããããïŒ ãããšãã³ã³ããïŒ ãã«ããŠãŒã¶ãŒãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã®åçŽãã§ã¯ãªããOS-> VM->ã³ã³ãããŒ-> ...ãžã®æè³ã®è€éãã®ççºã«ã©ããã£ãŠæ¥ãã®ã§ããããïŒ
ä»®æ³åã¯é«äŸ¡ã§ã
ç§ã®ã¹ã¿ãŒãã¢ãã
ZeroTier ïŒåºåã¯ç³ãèš³ãããŸããïŒã¯ãå€ãã®ããŒã¿ã»ã³ã¿ãŒããããã€ããŒã倧éžã«æ£åšããã¯ã©ãŠãã€ã³ãã©ã¹ãã©ã¯ãã£ã§åäœããŸãã ã¯ã©ãŠããã¬ãŒã³ã¹ãæ§æããã»ãšãã©ã®ããŒãã¯ãã€ã³ã¿ãŒãããäžã®å®å®ããåç
§ãã€ã³ããšææ°ã®ãªã¬ãŒã§ãã ãã±ãããéåä¿¡ããŸãã ã¹ããªãããšå°ãã®CPUãå¿
èŠã§ãããã¡ã¢ãªããã£ã¹ã¯ã¹ããŒã¹ã¯ã»ãšãã©å¿
èŠãããŸããã ããšãã°ãããã¯ã¢ããTCPãªã¬ãŒïŒTCPãã©ãŒã«ããã¯ãªã¬ãŒïŒã®1ã€ãåãäžããŸããéåžžã5ã10ã¡ã¬ããã/ç§ã®ãã©ãã£ãã¯ã転éããŸããããœãããŠã§ã¢ã¯10 MBã®ã¡ã¢ãªãš1ã¡ã¬ãã€ãïŒ!!!ïŒæªæºã®ãã£ã¹ã¯ã¹ããŒã¹ããå¿
èŠãšããŸããã ãŸããCPUãªãœãŒã¹ã®1ïŒ
æªæºãã䜿çšããŸããã
ãã ãããã®ä»®æ³ãã·ã³ã¯8 GBã®ãã£ã¹ã¯é åãšå°ãªããšã768 MBã®ã¡ã¢ãªãå æããŸãã ããã¯ãã¹ãŠãCentOS Linuxã®å®å
šãªåºæ¬ã€ã³ã¹ããŒã«ãæšæºã¢ããªã±ãŒã·ã§ã³ãšããŒã«ã®å®å
šãªã»ãããsystemdãcronãªã©ã®ã·ã¹ãã ãµãŒãã¹ãããã³ãªã¢ãŒãã¢ã¯ã»ã¹çšã®OpenSSHãµãŒããŒãä¿åããããã«å¿
èŠã§ãã RAMã®å€§éæ¶è²»ã¯ãä»®æ³åã®çŽæ¥çãªçµæã§ãããäžçš®ã®ãã«ãŒãã«ãç¬èªã®ããŒããŠã§ã¢ã§å®è¡ãããŠãããã®ããã«hackãããã¯ãã®ãããªãã®ã§ãã ã«ãŒãã«ã¯ç¬èªã®ããŒã«ã«ã¡ã¢ãªãåããå¥ã
ã®ãã·ã³ã§åäœããããã«èŠããããããã€ããŒãã€ã¶ãŒã¯åŸãããšãäœåãªããããããããã®ã¡ã¢ãªã¯ãã¹ãŠVMããã¢ã¯ã»ã¹ã§ããå¿
èŠããããŸãã ïŒææ°ã®ãã€ããŒãã€ã¶ãŒã¯ããçšåºŠã¡ã¢ãªãäºçŽã§ããŸãããé床ã®åé·æ§ã«ããè² è·ãæ¥æ¿ã«å¢å ããŠããã©ãŒãã³ã¹ãäœäžãããªã¹ã¯ãé«ãŸããŸãïŒã
ã³ã³ããã¯ããã€ããŒãã€ã¶ãŒããããããã«å¹ççã§ãã ç¬èªã®Linuxã«ãŒãã«ã䜿çšããããã€ããŒãã€ã¶ãŒã«äœåãªã¡ã¢ãªãè²»ãããŸãããã1ã€ãŸãã¯è€æ°ã®ããã°ã©ã ã®Linuxãã£ã¹ããªãã¥ãŒã·ã§ã³å
šäœã®å°ãªããšãäžéšãä¿æããŸãã 10ã¡ã¬ãã€ãã®ããã°ã©ã ãå®è¡ããã³ã³ããã¯æ°ã®ã¬ãã€ãã®éãããããã³ã³ããã管çããã«ã¯ç¬èªã®ã¢ããªã±ãŒã·ã§ã³ã»ãããå¿
èŠã§ãã
ãªããããå¿
èŠãªã®ãã誰ã«ã§ãå°ããŠãã ããã 圌ã¯ã»ãã¥ãªãã£ãåé¢ãæ¡åŒµæ§ã«ã€ããŠè©±ããŸã-ãããŠåœŒã¯æ£ããã§ãããã
æãä»®æ³åãšã³ã³ããã®åã«ãZeroTierã®ãããªäŒæ¥ã¯ãããŒã¿ã»ã³ã¿ãŒã«ç¬èªã®æ©åšãå±éããå¿
èŠããããŸããã ããã¯äžäŸ¿ã§ãããããŸãæçã§ã¯ãããŸããã ä»®æ³åã«ããã1å°ã®éåžžã«åŒ·åãªãµãŒããŒããæ°çŸäººã®ãŠãŒã¶ãŒã«ãµãŒãã¹ãæäŸã§ããŸãïŒç§ã®768 MBã®ä»®æ³ãã·ã³ã¯ããããã256 GB以äžã®ã¡ã¢ãªãæèŒãã16-24ã³ã¢Xeonã¢ã³ã¹ã¿ãŒã§å®è¡ãããŸãïŒã
äœçŸäººãã®ãŠãŒã¶ãŒã...ããŒã...ãã®å€ã33 MHz SparcStation ...ïŒ
ä»æ¥ã®ãœãããŠã§ã¢ã¯ãå€ãIACãµãŒããŒã§åäœããããã°ã©ã ãããã¯ããã«é¢åã§è€éã§ããããã¯ãæœè±¡ã¬ãã«ã®å¢å ãšäžå¿
èŠãªèšåŒµã®çµæããããŸãããæ©èœã®å®éã®å¢å ãšåŠçãããããŒã¿ã®å€§å¹
ãªå¢å ã«æ³šæããããšã¯ééããããŸããã æ°çŸäººã®å
žåçãªçŸä»£ãŠãŒã¶ãŒããã®è² è·ãã³ãŒããŒã¡ãŒã«ãŒã«æŒã蟌ãå¿
èŠããããšèšã£ãŠããã®ã§ã¯ãããŸããã ããããå°ãªããšãããã€ãã®Wordpressãµã€ãïŒããã¯éåžžä»®æ³ãã·ã³ã§ãã¹ããããã¿ã¹ã¯ã®å
žåçãªäŸã§ãïŒãRaspberry Pi-CPU容éãå€ããµãŒããŒãããçŽ100åéãã³ã³ãã¥ãŒã¿ãŒã§ãã¹ãã§ããå¿
èŠããããšæããŸãRAMããã³èªã¿åãå°çšã¡ã¢ãªã®10ã20åã®ããªã¥ãŒã ã
RPiã®äŸ¡æ Œã¯30ãã«ã§ãæ¶è²»é»åã¯15ã¯ããæªæºã§ãã 1ã€ã®å·šå€§ãªVMã®ã³ã¹ããšæ¶è²»éãèšãå¿
èŠããããŸããïŒ
Piã®æéïŒ
Wordpressããã°ãå®è¡ããããŠãŒã¶ãŒã®ã°ã«ãŒãçšã«ãRPiãã¿ãŒããã«ãµãŒããŒãšããŠã€ã³ã¹ããŒã«ããããšãããã¡ãã£ãšããå®éšãããŠã¿ãŸãããã WebãµãŒããŒãšå°ããªããŒã¿ããŒã¹ãåãããŠçŽ10ã20 MBã®ã¡ã¢ãªãå æããRPiã«ã¯1024 MBããããããå°ãªããšã50ã®å°èŠæš¡ãŸãã¯äžèŠæš¡ã®ãµã€ãããã¹ãã§ããŸãã ïŒå®éã«ã¯ãRAMã®ã»ãšãã©ã¯åé·ãŸãã¯éã¢ã¯ãã£ãã§ãããããã¹ã¯ãããŸãã¯
KSMã䜿çšãããš ãRPiã¯æ°çŸã®ãµã€ãããã¹ãããŸãããä¿å®çã«ãªããŸãïŒã
æåã«Linuxãã€ã³ã¹ããŒã«ããŸãã ããã¯ããã«ããŠãŒã¶ãŒãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã§ããUnixã®åŸç¶ããŒãžã§ã³ã§ãïŒå³ïŒïŒã®ã§ã50åã®ã¢ã«ãŠã³ããäœæããŸãããã ãããã®åãŠãŒã¶ãŒã¯ãã°ã€ã³ã§ããããã«ãªããŸããã çä¿¡SSHã»ãã·ã§ã³ãšã·ã§ã«ã¯ã¡ã¢ãªå
ã§1ã¡ã¬ãã€ããŸãã¯2ã¡ã¬ãã€ãããå æãããRPiã«ã¯1,000ãè¶
ããã¡ã¢ãªããããããçŸæç¹ã§ã¯ãã¹ãŠãã¹ã ãŒãºã«é²ãã¯ãã§ãã
ã¯ããã¯ããã»ãã¥ãªãã£ãç¡èŠããŸãã ãã®åé¡ã¯åŸã§å¯ŸåŠããŸãã ããããç§ãã¡ã®ãŠãŒã¶ãŒã®ã©ãããæªãæ¯ãèããããªããã°ããã¹ãŠã®ãŠãŒã¶ãŒã¯çŸåšãWordpressãããŠã³ããŒãããŠè§£åããŠããŸãã ãã¹ãŠãé 調ã§ãã ã€ã³ã¹ããŒã«ãéå§ãããšåé¡ãå§ãŸããŸãã
ã¹ããã1ïŒMySQLããŒã¿ããŒã¹ãã€ã³ã¹ããŒã«ããŸãã
ãããããã¯ãšãŠãç°¡åã§ãïŒ ãsudo apt-get install ...ããšå
¥åããŸã
åŸ
ã£ãŠ... sudoïŒ sudoæš©éãä»äžãããšããããšã¯ããŠãŒã¶ãŒçšã«åå¥ã®ã¢ã«ãŠã³ããæããªãããšãæå³ããŸãã
ç¬èªã®ããŒã ãã£ã¬ã¯ããªã«MySQLãã€ã³ã¹ããŒã«
ã§ããããšãããããŸããã ã³ã³ãã€ã«ããããDebianããã±ãŒãžãæåã§ã¢ã³ããã¯ããŠããã€ãã®èšå®ãã¡ã€ã«ãç·šéããå Žåã¯ãç¹å¥ãªæš©éãªãã§ãããå®è¡ã§ããŸãã 圌ã¯/ home / yourname / ...ãã©ã«ããŒã䜿çšããå¿
èŠããããŸãããæçµçã«ã¯ç¬èªã®ããŒã«ã«ãŠãŒã¶ãŒã¹ããŒã¹ã§å®è¡ãããç¬èªã®ããŒã«ã«MySQLãµãŒããŒãååŸããŸãã
ã¹ããã2ïŒWebãµãŒããŒãPHPçšã«æ§æããŸãã
äžå¹³ãèšããªãããã«...ããäžåºŠããsudo apt-get installãã䜿çšããŠå¿
èŠãªãã¹ãŠã®ã³ã³ããŒãã³ããããŠã³ããŒããããããããŸãšããŠå®è¡ããŸãã ãããè¡ãããšãã§ã
ãã€ã¯ãåã£ãåŸ
[å®éã«ã¯å¿
èŠãªäžèŠç¡é§ãªã¢ã¯ã·ã§ã³ïŒããšãã°ãããã€ãã®ååž°ã¬ãã«ã§åãçµãã§ããå®éã®åé¡ã解決ããå¥ã®åé¡ã解決ããåé¡ã解決ããŸããããµãã¥ãŒã»ããå·¥ç§å€§åŠ-çŽ] ãPHPã䜿çšããç¬èªã®WebãµãŒããŒã¯ããã«äœ¿çšã§ããŸãã
次ã«ãããã€ã³ãïŒèš±å¯ãæåŠãããŸããããªã©ã®åé¡ã«ééããŸãã ãïŒ å°ãæãäžããåŸãããŒã80ãã€ãŸãããã©ã«ãã®WebããŒãã
åªå
ããŒãã§ããããšãããã
ãŸã ã æ·»ä»ããã«ã¯ã«ãŒãæš©éãå¿
èŠã§ãã
é¢ä¿ãããŸããã ããŒããå€æŽããã ãã§ãã ããããããã¯ãéæšæºããŒãã«æ¥ç¶ããããã«ããã¹ãã®æåŸã«æããª###ãä»ããŠãµã€ãã®URLãå
¥åããå¿
èŠãããããšãæå³ããŸãã
åµïŒ
ããã§ãç¹æš©ããŒãã®å¶éãªã
ã«ãUnixã·ã¹ãã ã§éèŠãªãã®ãæ®ããŠã¯ãªããªãããšã«æ°ä»ããã®ã§ãå°ãªããšãã·ã¹ãã ãµãŒãã¹ã®ã»ãã¥ãªãã£ãåäžãããããšãã§ããŸãã ããããã ãããã®ã»ã¯ã·ã§ã³ããåµããšåŒãã ããã§ã¯ãããŸããã ç¹æš©ããŒãã®å¶éã®ããåºãæå³ãç解ããããã«ãã¡ãã£ãšæ°ãåãããŠåµã«ã€ããŠè©±ãå¿
èŠãããããã§ãã
testäžžã¯éèŠãªåšå®ã§ãã å¥åŠãªå€èŠ³ã¯èšããŸã§ããªããç·æ§ã®äœã®
å€åŽã®å°ããªè¢ã«ãããã眮ãããšã¯æãã§ããã ç§ãã¡ã®çš®ã®å¥³æ§ã¯ãããè«ççã«èšèšãããŠããŸãã圌ãã®åµå·£ã¯è
¹éšã®å¥¥æ·±ãã«é ãããŠããããã³ããããã¯ãå£ããã§ã³ã¹ãå€ãåæ¯ããã¯ããã«ä¿è·ãããŠããŸãã
ããšããšéžã°ããéãžã®äŸå -çµæžçè«ãšé²åçç©åŠããã®æŠå¿µ-ã¯ããã®ãããªå¥åŠãªæ§é ãã©ãããæ¥ãã®ãã説æããããšããŠããŸãã èå¿ãªã®ã¯ãéå»ã«ãªããã決å®ããçŸåšã§ã¯
容æã«è¡ãã決å®ãå¶éãããšããããšã§ãã
ç·æ§ã®ç²Ÿåã®ç¹å®ã®é
µçŽ ã¯äœæž©ã®ããäžã®æž©åºŠã§ããããæ©èœãããããç·æ§ã®ç²Ÿå·£ã¯äœå€ã«ãããŸãã ãã®ã決å®ãã¯ãç§ãã¡ãæž©è¡ã§ãªãã£ãããäœæž©ãäœãã£ããšãã«ãããããïŒæãåçŽã§æãå¯èœæ§ã®é«ã仮説ã«åŸã£ãŠïŒããªãåã«è¡ãããŸããã çæ®åšå®-ããã¯çç©åŠè
ã
éåžžã«ä¿å®çãªã·ã¹ãã ãšåŒãã§ãããã®ã§ããã€ãŸããçæ®ã·ã¹ãã ã®çªç¶å€ç°ã¯éºäŒããŒã«ããåäœãæ¶ãå¯èœæ§ãé«ããããé »ç¹ã«å€ããããšã¯ãããŸããã ãã®çµæãç·æ§ã®ç²Ÿå·£ãèã®éã®ãã¯ã¢ã³ãã«èŠããããŒãã«å
¥ããæ¹ããããé«ã枩床ã§ç²Ÿåãå¹ççã«åŠçããããããç°¡åãã§ãïŒé²å確çã°ã©ããè¶ãããšããæå³ã§ïŒã
ããé«ã枩床ã§æ©èœãã粟åã®çªç¶å€ç°ãä¿èªããã³ã°ãã®åºçŸã«ã€ãªãã£ãçªç¶å€ç°ãšåããããããããã§ãã£ããšããŠãããããèµ·ãããšããäºå®ã§ã¯ãããŸããã ãã¶ãããããã®ç¹å®ã®çªç¶å€ç°ã¯ã...ãããš...倱æ以å€ã®éžæè¢ããªãé²åçèªå·±åŠç¿ã·ã¹ãã ãé¢ããããšãªããå¶ç¶ã«èµ·ãããªãã£ãã ããã ããã£ããããã£ããçµãã£ãã
æè¡ã®é²åã¯ã€ã³ããªãžã§ã³ããªïŒå°ãªããšãç§ãã¡ã®èãã§ã¯ïŒãšãŒãžã§ã³ãã«ãã£ãŠæšé²ãããŸãããå€ãã®ç¹ã§çç©åŠçãªé²åã«äŒŒãŠããŸãã 決å®ãäžããããšãå°æ¥ã®æ±ºå®ã®ããã®ãã¹ã確ç«ãããã·ã¹ãã ã¯beatå°ã«æ²¿ã£ãŠç§»åããå¯èœæ§ãé«ããªããŸãã å€ã決å®ãå€æŽããããšã¯ãåãå
¥ãããããè²»çšããããå ŽåããããŸãããŸããåã«inertiaæ§ã§ãã
ãããã®å¥åŠãªäžžã12ãã«ãã®ãã©ã°ãè»ã«ä¹ããŠãã ããã åœåããããã¯ã·ã¬ãŒã©ã€ã¿ãŒçšã§ããã ããŸããŸãªããŒã¿ãã«é»åæ©åšãæ®åãããšãããšã³ãžãã¢ã¯ããããè»ã«æ¥ç¶ããæ¹æ³ãèããŸããã èªåè»ã¡ãŒã«ãŒãã³ã³ã»ã³ããèšçœ®ããããšã«åæããããšãããŠãŒã¶ãŒã«ã³ã³ã»ã³ããæ©æ¢°çã«èšçœ®ããããã«èª¬åŸããããšãã§ããŸããã§ãããããã¹ãŠã®è»ã«ã¯ã·ã¬ãŒã©ã€ã¿ãŒãä»ããŠããã®ã§...ãã®çãã¯æããã§ãã ã·ã¬ãŒã©ã€ã¿ãŒãœã±ããã«åãŸããœã±ãããäœããŸãããã çŸåšãè»ã¯ã·ã¬ã¬ããã©ã€ã¿ãŒãæèŒããŠããŠãçºå£²ãããŠããªãããšããããããŸãããã·ã¬ãŒã©ã€ã¿ãŒã³ãã¯ã¿ãŒã«ãã®ã³ã³ã»ã³ãããããŸããããã¯ãã¹ããŒããã©ã³ãã©ãã«æ¥ç¶ã§ããã®ã§ããããã
ïŒUSBã¯ã·ã¬ãŒã©ã€ã¿ãŒãåŸã
ã«çœ®ãæããŠããŸãããã»ãšãã©ã®ãã·ã³ã«ã¯ãŸã ã€ã³ã¹ããŒã«ãããŠããŸãïŒã
éžæãããŠããªããã¹
ãã®æç¹ã§ãç§ãã¡ãäœã«ã€ãªãã£ãŠããã®ããç解ããŠããã¯ãã§ãã Unixã¯å
ã
ãã¿ã€ã ã·ã§ã¢ãªã³ã°ãåãããã«ããŠãŒã¶ãŒã·ã¹ãã ãšããŠèšèšãããŠããããã®ç®çã®ããã«ã·ã¹ãã ãªãœãŒã¹ãå
±æã§ããããã«å€ãã®æ©èœãè¿œå ãããŸããã ãŠãŒã¶ãŒãšã°ã«ãŒãã§ãã¡ã€ã«ã«ã¢ã¯ã»ã¹ããããã®èš±å¯ã·ã¹ãã ããããæ°ããã·ã¹ãã ã§ã¯ã¢ã¯ã»ã¹å¶åŸ¡ãªã¹ãã培åºçã«èª¿æŽãããŠããŸãã 1人ã®ãŠãŒã¶ãŒããã¹ãŠã®ã·ã¹ãã ãªãœãŒã¹ããã£ããã£ããªãããã«ãã¡ã¢ãªããã£ã¹ã¯ãããã³CPUã®äœ¿çšçã«ã¯åãŠãŒã¶ãŒã®ã¯ã©ãŒã¿ããããŸãã ããã»ã¹ã®åé¢ãã¡ã¢ãªä¿è·ãªã©ããããŸãã ããããäœããã®çç±ã§ã
ãã®ãããã¯ãŒã¯å±€ããã«ãããã³ã·ãŒïŒãã«ãããã³ãïŒãããã¯ãŒã¯ãµãŒãã¹ã«é©å¿ãããããšãèãã人ããããŸããã§ãã ã åœæãç¹æš©ããŒãã¯ãŸã æå³ããªããŠããŠé©åã ã£ããããããŸããã ãŸãã¯ã誰ãããã«ã€ããŠèããŸããã§ããã
ç¹æš©ããŒãã¯ããšããšã»ãã¥ãªãã£æ©èœã§ããã åœæããã¹ãŠã®ã³ã³ãã¥ãŒã¿ãŒã¯çµç¹ã«å±ããéåžžã®ã·ã¹ãã 管çè
ã«ãã£ãŠç®¡çãããŠããŸããããŸãããããã¯ãŒã¯ã¯ç¡é¢ä¿ãªããã€ã¹ã«éããããŠããŸããïŒãã®ãããªããã€ã¹ãååšããå ŽåïŒã ã«ãŒã
ã®ã¿ãã¢ã¯ã»ã¹ã§ããããŒãã®ãªã¹ãã«ãããã·ã¹ãã 管çè
ã®èš±å¯ãåŸãŠãããã°ã©ã ãäœããã®çä¿¡æ¥ç¶ãéå§ããããšãã·ã¹ãã ãµãŒãã¹ãç¥ãããšãã§ããŸããã
ã€ã³ã¿ãŒãããããããªãã¯ãããã¯ãŒã¯ã«ãªãå§ãã90幎代ååãå€ãã®ã·ã¹ãã ãšãããã¯ãŒã¯ã¯äŸç¶ãšããŠãã®ããã«æ©èœããéèŠãªèªèšŒã¡ã«ããºã ãšããŠç¹æš©ããŒãã«äŸåããŠããŸããã ãã®ãããWebãµã€ããåºããå§ãã誰ããç¬èªã®IPã¢ãã¬ã¹ã«ç¬èªã®WebãµãŒããŒãæã¡ãããšæã£ããšãããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã®ä»®æ³åãå®è£
ããã¹ã¿ãã¯ã®æ®ãããã®ãŸãŸã«ããŠããæ¹ãæŠå¿µçã«æçœã§ãé¢åã§ã¯ãªãããã«èŠããŸããã
OSã®ä»®æ³åã¯ä»ã®ç®çã«ã圹ç«ã¡ãŸããã³ãŒãã®ãã¹ããšãããã°ãå€ãïŒãŸãã¯ä»ã®ïŒãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ãŸãã¯ã«ãŒãã«ããŒãžã§ã³ã§åäœããã¯ãã®å€ä»£ã®ãœãããŠã§ã¢ã®ãµããŒãããããŠããã¯ç«ã«çæãè¿œå ããŸãã æçµçã«
ãUnixãããã¯ãŒã¯ã¹ã¿ãã¯ããã«ãããã³ã·ãŒã®ããŒãºã«é©åããã代ããã«ãããã¯ã¹ãããã¯ã¹å
ã«æŸã蟌ãã§ç¶è¡ããŸãã ã
ããã¯ãã¹ãŠãéãšãšãã«ã®ãŒã®éå°æ¶è²»ã®ããã«è¡ãããŸãã çŽ256 GBã®RAMãæèŒããåã16-24ã³ã¢XeonïŒãããã768ã¡ã¬ãã€ãæªæºã®VMããã¹ãããïŒã¯ãåãã³ã¢ã§çŽæ¥äœæ¥ããã®ã§ã¯ãªãã
æ°åã®ãŠãŒã¶ãŒã¿ã¹ã¯ããã¹ãã§ããããšãææ¡ããããšæããŸãããã€ããŒãã€ã¶ãŒãšãµãããã§ãã容åšã§ã€ãäžããããŸããã åããŒã¿ã»ã³ã¿ãŒã10åã®1ã«åæžãããå Žåã倧æ°äžã«æåºãããCO
2ã¯ã©ãã ãå°ãªããªããŸããïŒ
Dockerã®ãããªã³ã³ããã¯åé¡ãéšåçã«è§£æ±ºããŸãã ã³ã³ãããŒåã¯ã
ã·ã¹ãã ã€ã¡ãŒãžã巚倧ãªéçãªã³ã¯ãã€ããªãŒãšããŠèªèã ãä»®æ³åã®ã¬ã¬ã·ãŒã«éšåçã«æºæ ããŠããªãéãããŸãã«ç§ãç®æããŠããçš®é¡ã®ãã«ãããã³ã·ãŒã§ãããšèšããŸãã ãŸãã䜿ããããã®åŸéã§ããããŸãã ã³ã³ãããèµ·åããã«ã¯ãŸã ã«ãŒãæš©éãå¿
èŠã§ãã åçŽãªUnixãã«ãããã³ããã·ã³äžã®ããã»ã¹ã®ããã«ã1ã€ã®ã³ã³ããã«ãã°ã€ã³ããŠå¥ã®ã³ã³ãããèµ·åããããšã¯ïŒç°¡åã«ïŒã§ããŸããã 代ããã«ã倧èŠæš¡ãªäžå€®ç®¡çã³ã³ãœãŒã«ãšãªãŒã±ã¹ãã¬ãŒã·ã§ã³ããŒã«ãæ§ç¯ããå¿
èŠããããŸãã
ããã§äœãã§ããã®ã§ããããïŒ ç§ãã¡ããšããªãã£ãéã¯äœã§ããããïŒ
ãã«ãããã³ããããã¯ãŒãã³ã°
å Žåã«ãã£ãŠã¯ãéžæããããã¹ãžã®äŸåæ§ãçŸããŸããããã¯ãå€ã決å®ã«åºã¥ããŠéåžžã«å€ãã®æ°ãã決å®ãè¡ããããããæ»ã£ãŠå€ã決å®ãå€æŽããã«ã¯è²»çšãããããããããã§ãã ãã®å Žåãããã€ãã®ç°¡åãªå€æŽã«ãããDevOpsã®20幎ã®æŽå²ãå·»ãæ»ãããå¥ã®éçããã©ããããã·ã³ãã«ã§
æ ¹æ¬çã«å¹ççãªã¢ãŒããã¯ãã£ã«å°ãããããã«æããŸãã ããã¯ãã¹ãŠã®åé¡ã解決ããããã§ã¯ãããŸããããã»ãšãã©ã®å
žåçãªã·ããªãªã§ã®è€éãã®äžéšãæé€ããŸãã
ã¹ããã1ïŒç¹æš©ããŒããåé€ããŸãã ãã®å€æŽã¯1ã2è¡ã ãšæããŸãã ãããã
if
åé€ããã ã
if
ååã§ãã ã»ãã¥ãªãã£ã®ããã®ããŒãçªå·ãªã©ãæå·åãããŠããªãä¿è·ã«äŸåããŠãããã®ã¯ãã¹ãŠå£ããŸãã
ã¹ããã2ïŒããã€ã¹ãšIPã¢ãã¬ã¹ã®èªã¿åã/æžã蟌ã¿/ãã€ã³ãïŒå®è¡ã®ä»£ããã«ãã€ã³ãïŒã«UID / GIDæš©éãå°å
¥ããããšã«ããããŠãŒã¶ãŒãšã°ã«ãŒãã®æš©éãããã³ãããã¯ãŒã¯ãªãœãŒã¹ã®æææš©ãæ¡åŒµããŸãã ããã©ã«ãã§ã¯ã
bind()
åŒã³åºããŠããã¢ãã¬ã¹ïŒ0.0.0.0ãŸãã¯:: 0ïŒããçŸåšã®ãŠãŒã¶ãŒãé©åãªãã€ã³ãèš±å¯ãæã€ãã¹ãŠã®ã€ã³ã¿ãŒãã§ã€ã¹ã§ãã±ãããŸãã¯æ¥ç¶ããªãã¹ã³ããããšã瀺ããŠããããçºä¿¡æ¥ç¶ã¯ããã©ã«ãã§æåã®ã€ã³ã¿ãŒãã§ã€ã¹ã«ã«ãŒãã£ã³ã°ãããŸãããŠãŒã¶ãŒãææããŠããŸãã
ã¹ããã3ïŒãŠãŒã¶ãŒãç¬èªã®ããã»ã¹ããã¡ã€ã«ãäœæã§ããã®ãšåãçç±ã§ããŠãŒã¶ãŒç©ºéã«ä»®æ³ãããã¯ãŒã¯ããã€ã¹ïŒtun / tapïŒãäœæã§ããããã«ããããšããå§ãããŸãã ããã¯éèŠã§ã¯ãããŸããããè¯ãã§ãããã tcpdump / pcapãªã©ã®ããã°ã©ã ã®ã¢ã¯ã»ã¹èš±å¯ãããããã¯ãŒã¯ãªãœãŒã¹ã®æ°ããã¢ã¯ã»ã¹èš±å¯ã¢ãã«ã«åŸã£ãŠå€æŽããå¿
èŠããããŸãã
ããã§ããã¹ãŠã®ãµãŒãã¹ãéåžžã®ãŠãŒã¶ãŒãšããŠå®è¡ã§ããŸãã ã«ãŒãã¢ã¯ã»ã¹ã¯ãã·ã¹ãã ã«ãŒãã«ã®æŽæ°ãããŒããŠã§ã¢ãŸãã¯ãã©ã€ããŒã®å€æŽãããã³ãŠãŒã¶ãŒç®¡çã«ã®ã¿å¿
èŠã§ãã
éžæãããŠããªãéè·¯ã¯ãã§ã«çãèã£ãŠããŸã
ä»®æ³åãšã³ã³ããåã®ãã¹ãéžæãããããUnixã®ãã«ãããã³ã·ãŒæ©èœã®èçž®ãèš±å¯ããŸããã ããããå
ã®ç¶æ
ã«æ»ãã«ã¯ãããã€ãã®äœæ¥ãå¿
èŠã§ãã ããããç§ã«ãšã£ãŠã¯äŸ¡å€ããããšæãããŸã-ç°¡åã«ãããããšããªãœãŒã¹ã®éå°ãªæ¶è²»ãæé€ããããã§ãã
æ»ã£ãŠããŠãŒã¶ãŒã¢ãŒãä¿è·ã匷åããå¿
èŠããããŸãã é£ãããšã¯æããŸããã ä»®æ³åã¯å€ãã®äººãèããä¿è·ãæäŸããŸãã
ãRowhammerã®ãããªæ»æã¯ãVMãäžèœè¬ã§ã¯ãªãããšã蚌æããŠããŸãã ã³ã³ãããšã³ã·ã¹ãã ã®äœæã«ã©ãã ãã®è²»çšãããã£ãã®ãã¯èšããŸã§ããªãã匷åã§å®å
šãªä»®æ³åã®éçºãšãã®ããã®ããŒã«ãã§ãŒã³ã®éçºã«èšå€§ãªå·¥æ°ãè²»ãããŸããã ãããã®åãçµã¿ã®äžéšã¯ãæå°éã®Linuxãã¹ãäžã®ãŠãŒã¶ãŒç©ºéãç¹æš©ã®ææ ŒãæŒæŽ©æ»æããä¿è·ããã®ã«ååã ãšæããŸãã
åé¢ã®ä»ã®åŽé¢ãåŒãåºãããŠãŒã¶ãŒã
psã
netstatãªã©ã®ã³ãã³ãã§è¡šç€ºã§ãããã®ãå¶éãããªãã·ã§ã³ãå®è£
ããå¿
èŠããããŸããæ
å ±ã¯ãŠãŒã¶ãŒãªãœãŒã¹ã®ã¿ã«å¶éããå¿
èŠããããŸãã ããã±ãŒãžãããŒãžã£ãŒãå€æŽããŠãã«ãŒããªã©ã§ã¯ãªãå ŽåããŠãŒã¶ãŒã®ããŒã ãã£ã¬ã¯ããªã®ãµããã£ã¬ã¯ããªã«ããã±ãŒãžãã€ã³ã¹ããŒã«ã§ããããã«ããå¿
èŠããããŸãããããããåçãªã³ã«ãŒãªã©ã®ã·ã¹ãã èŠçŽ ã«ãå€æŽãå¿
èŠã«ãªãããããŠãŒã¶ãŒãã€ããªãå
±éã©ã€ãã©ãªãéžæãããããªããŸãç¬èªã®ããŒã«ã«ãšãªã¢ã§ãããã·ã¹ãã ã©ã€ãã©ãªãããå Žåã¯ãããæ¯æããŸããã initã·ã¹ãã ãµãŒãã¹ããŠãŒã¶ãŒèšå®ãµãŒãã¹ããµããŒãããŠããã°ããŠãŒã¶ãŒã¯ãŠã©ããã£ãŒã¹ã¯ãªãããcronãžã§ããäœæããããä»ã®ãããã³ã°ã«é Œã£ããããå¿
èŠããããŸããã
æçµçµæã¯ã³ã³ããåã«å°ã䌌ãŠããŸãããäžåšçšããè¥å€§åãèªè»¢è»ã®çºæãäžäŸ¿ãã¯ãããŸããã ã¢ããªã±ãŒã·ã§ã³ã
gitã«ãããã€ãã
ssh ãä»ããŠ
git checkoutãš
git pullãå®è¡ãããšãããŒã«ã«ãŸãã¯P2Pã®æ¹æ³ã§ãªãŒã±ã¹ãã¬ãŒã·ã§ã³ãå®è¡ãããè€éãªã³ã³ãããŒç®¡çã€ã³ãã©ã¹ãã©ã¯ãã£ãä»ããããšãªãããã·ã³ã«ãã°ã€ã³ããŠäœããå®è¡ã§ããŸãã ã©ã€ãã©ãªã®äºææ§ã«é¢ããåé¡ãªã©ãä¹ãè¶ããããªãå¶éããªãå Žåãã»ãšãã©ã®ããã°ã©ã ã¯ã·ã¹ãã å
ã«ååãªå
±éæšæºã©ã€ãã©ãªïŒlibcãstdc ++ãªã©ïŒãšæšæºããŒã«ãåããŠãããããã¢ããªã±ãŒã·ã§ã³ã¯ç°¡åã«ãªããŸãã
ãããã«
ãããããããããã¹ãŠã¯éãå»ã£ãæ¥ã§ãã å®éã«ã¯ãçã®å®å
šãªã³ã³ãããã«ãããã³ã·ãŒãéçºããããã«ãã¹ãéžæãããå¯èœæ§ãæãé«ããããã³ã³ããã®å©ããåããŠãUnixèš±å¯ã¢ãã«ããŠãŒã¶ãŒç©ºéã®ãããã¯ãŒã¯ãµãã·ã¹ãã ã«æ¡åŒµããããšã§è§£æ±ºãã¹ãåé¡ã解決ãããŸãã
ãã®èšäºã®ç®çã¯ã誰ãèããªãã£ãå°ããªãœãªã¥ãŒã·ã§ã³ãããã¯ãããžãŒïŒããã³ç€ŸäŒïŒã®å°æ¥ã®é²åã«åçãªçµæãããããå¯èœæ§ãããããšã瀺ãããšã§ãã ã·ã¹ãã éã®ã»ãã¥ãªãã£ããã§ãã¯ããããã®çµã¿èŸŒã¿ã®ã·ã°ããªã³ã°ã¡ã«ããºã ãšããŠããŒãçªå·ã䜿çšãããšãã1970幎代ã®æ±ºå®ã¯ãã¯ããã«è€éã§ã³ã¹ãã®é«ããªãœãŒã¹æ¶è²»ã®ãã¹ã«æ²¿ã£ãŠUnixãã©ãããã©ãŒã ã®é²åãå°ã1å
ãã«ã®ãšã©ãŒã«ãªãããšããããŸããã
ããããã¡ãã£ãšããŸã 決ãŸã£ãŠããªããããããŸããã å€æ°ã®Linuxãã£ã¹ããªãã¥ãŒã·ã§ã³ãããããããã®ã»ãšãã©ã¯ã»ãŒåãããã«åäœããŸãã æ°ãããã©ãã€ã ãžã®ç§»è¡ã¯ããããã®ãã£ã¹ããªãã¥ãŒã·ã§ã³ã®1ã€ãéç«ãããèå³æ·±ãæ¹æ³ã§ãã ãŸããäžèšã®ãããªãããã¯ãŒã¯æš©éãå®è£
ããå¿
èŠããããŸã-ã«ãŒãã«ã®ããããæäŸããŸãã äžäœäºææ§ã®ããã«ãããšãã°ãsysctlæ§æãä»ããŠèš±å¯ãã¢ã¯ãã£ãã«ããããã«ããããã¢ãžã¥ãŒã«ãçºè¡ãããããããšãã§ããŸãïŒã¢ãžã¥ãŒã«ããã®ãããªå€§å¹
ãªå€æŽãè¡ããå ŽåïŒã