Shumokuãšã¯ïŒ ãããã¯ãŒã¯å³ãã³ãŒãã§ç®¡çããã
ãããã¯ãŒã¯å³ãäœæããéãVisioã®ãããªããŒã«ã䜿ã£ãŠããŸãããïŒ Shumokuã¯ãYAMLãã¡ã€ã«ã§ãããã¯ãŒã¯æ§æãå®çŸ©ããã ãã§ãçŸããSVGãã€ã¢ã°ã©ã ãèªåçæããŠãããããŸãã«ããããã¯ãŒã¯å³ãã³ãŒãã§ç®¡çãããããã®ã¢ãã³ãªããŒã«ã§ããGitãšé£æºããã°ãæ§æã®å€æŽå±¥æŽã远跡ããããCI/CDãã€ãã©ã€ã³ã«çµã¿èŸŒãã ãããããšãå¯èœã«ãªããããããŸããããããã¯ãŒã¯ãšã³ãžãã¢ã®çããã«ãšã£ãŠãäœæ¥å¹çãå€§å¹ ã«åäžãããå¯èœæ§ãç§ããŠããŸãã
ãããã«Shumokuã§çæããããããã¯ãŒã¯å³ã®ã€ã¡ãŒãžåçã
ãªãShumokuãæ³šç®ãããŠããã®ãïŒ
åŸæ¥ã®ãããã¯ãŒã¯å³äœæããŒã«ã§ã¯ãæäœæ¥ã§ã®ä¿®æ£ãããŒãžã§ã³ç®¡çãç ©éã«ãªããã¡ã§ãããShumokuã¯ãYAMLãšããã·ã³ãã«ã§äººéãèªã¿ããã圢åŒã§æ§æãèšè¿°ãããããã³ãŒãã¬ãã¥ãŒã®ããã«å³ã®å€æŽã確èªã»æ¿èªã§ããŸãããŸããGitãªã©ã®ããŒãžã§ã³ç®¡çã·ã¹ãã ãšã®èŠªåæ§ãé«ããã€ã³ãã©æ§æç®¡çã®ææ³ãšããŠæ³šç®ãããŠããŸãã
Shumokuã®äž»ãªæ©èœãšã¡ãªãã
Shumokuã«ã¯ããããã¯ãŒã¯å³äœæã匷åã«ãµããŒãããæ©èœãæºèŒã§ããå ·äœçã«ã©ã®ãããªããšãã§ããã®ããèŠãŠãããŸãããã
YAMLã§å®çŸ©ïŒã·ã³ãã«ã§ç®¡çãããã
ãããã¯ãŒã¯æ§æãYAML圢åŒã§èšè¿°ããŸããã€ã³ãã³ããªã©ã§æ§é ãåããããããGitã§ã®ç®¡çãå·®å確èªã容æã§ããææžãã®å³ãšã¯ç°ãªããã³ãŒããšããŠã®å€æŽç®¡çãå¯èœã§ãã
900+ ãã³ããŒã¢ã€ã³ã³ïŒäž»èŠæ©åšãç¶²çŸ
YAMAHAãArubaãJuniperãAWSãšãã£ãäž»èŠãªãããã¯ãŒã¯æ©åšãã³ããŒã®ã¢ã€ã³ã³ã900çš®é¡ä»¥äžãµããŒãããŠããŸããããã«ãããå®éã®ç°å¢ã«è¿ããèŠèªæ§ã®é«ãå³ãäœæã§ããŸãã
ãããã«æ§ã ãªãã³ããŒã¢ã€ã³ã³ã䞊ãã æ§åã®ã¹ã¯ãªãŒã³ã·ã§ããã
èªåã¬ã€ã¢ãŠãïŒé çœ®ã®æéãåæž
ELK.js ãšããã©ã€ãã©ãªãå©çšããéå±€çãªèªåã¬ã€ã¢ãŠãæ©èœããããŸããããã«ãããããŒãã®é 眮ãæåã§è¡ãæéãçããå¹ççã«å³ãäœæã§ããŸãããã¡ãããå¿ èŠã«å¿ããŠèª¿æŽããããšãå¯èœãããããŸããã
SVGãšã¯ã¹ããŒãïŒé«å質ãªãã¯ã¿ãŒåœ¢åŒ
çæããããã€ã¢ã°ã©ã ã¯ãé«å質ãªSVGïŒScalable Vector GraphicsïŒåœ¢åŒã§ãšã¯ã¹ããŒããããŸããããã«ãããæ¡å€§ã»çž®å°ããŠãç»è³ªãå£åãããããã¥ã¡ã³ãããã¬ãŒã³ããŒã·ã§ã³è³æã«ã綺éºã«å©çšã§ããŸãã
TypeScript察å¿ïŒåå®å šæ§ãšè£å®æ©èœ
Shumokuã¯TypeScriptã§æžãããŠãããå®å šãªåå®çŸ©ãæäŸãããŠããŸããããã«ãããIDEïŒçµ±åéçºç°å¢ïŒã§ã®ã³ãŒãè£å®æ©èœã匷åã«åããå ¥åãã¹ãé²ãããããªããŸããéçºäœéšãåäžããã§ãããã
NetBox飿ºïŒæ¢åè³ç£ã®æŽ»çš
IPã¢ãã¬ã¹ç®¡çããŒã«ãšããŠæåãªNetBoxãšã®é£æºæ©èœãçšæãããŠããŸããNetBoxã«ç»é²ãããŠããæ å ±ãå ã«ãèªåã§ãããã¯ãŒã¯ãã€ã¢ã°ã©ã ãçæã§ãããããæ¢åã®è³ç£ç®¡çæ å ±ãæå¹æŽ»çšã§ããŸãã
Shumokuã®å§ãæ¹
ãé¢çœããïŒãã䜿ã£ãŠã¿ããïŒããšæã£ãæ¹ã¯ããŸãã¯ä»¥äžã®æ¹æ³ã§Shumokuã詊ããŠã¿ãŠã¯ãããã§ããããã
Playgroundã§è©ŠããŠã¿ã
Webãã©ãŠã¶äžã§Shumokuã®æ©èœãæ°è»œã«è©ŠãããPlaygroundããçšæãããŠããŸããã€ã³ã¹ããŒã«äžèŠã§ãããã«YAMLãæžããŠãã€ã¢ã°ã©ã ãçæãããæ§åã確èªã§ããŸãã
ãããã«Playgroundã®ç»é¢ã€ã¡ãŒãžåçã
ããŒã«ã«ç°å¢ã«ã€ã³ã¹ããŒã«ãã
Node.jsãšnpmïŒãŸãã¯yarnïŒãã€ã³ã¹ããŒã«ãããŠããã°ã以äžã®ã³ãã³ãã§Shumokuãã€ã³ã¹ããŒã«ã§ããŸããããŒã«ã«ç°å¢ã§æ¬æ Œçã«äœ¿ãããå ŽåããCI/CDã«çµã¿èŸŒã¿ããå Žåã«å¿ èŠã«ãªããŸãã
ããã¥ã¡ã³ããèªã
ããè©³çŽ°ãªæ å ±ããé«åºŠãªäœ¿ãæ¹ã«ã€ããŠã¯ãå ¬åŒããã¥ã¡ã³ããåç §ããã®ãããããã§ããYAMLã®èšæ³ããªãã·ã§ã³ã«ã€ããŠè©³ãã解説ãããŠããŸãã
ãããããªããããããã¯ãŒã¯å³ãã³ãŒãã§ç®¡çãããæ°ããæä»£ãäœéšããŠã¿ãŸãããïŒ