ã Noda ãã¯RabbitMQãµãŒããŒã§ãã
ã ã¯ã©ã¹ã¿ ããšã¯ã3ã€ã®å Žåãå šäœãšããŠåäœããRabbitMQããŒãã®çµã¿åããã§ãã
ã çé«ç· ã-RabbitMQã¯ã©ã¹ã¿ãŒã®ã»ãããäœæ¥ã®ã«ãŒã«ã¯ããããã®åã®ãã©ã³ãµãŒã§æ±ºå®ãããŸãã
ã ãã©ã³ãµãŒ ããã hap ã-Haproxy-ã«ãŒãå ã®ã¯ã©ã¹ã¿ãŒã®è² è·ãåãæ¿ããæ©èœãå®è¡ãããã©ã³ãµãŒã 䞊åã§å®è¡ãããHaproxyãµãŒããŒã®ãã¢ãåã«ãŒãã«äœ¿çšãããŸãã
ã ãµãã·ã¹ãã ã-ãŠãµã®ãä»ããŠéä¿¡ãããã¡ãã»ãŒãžã®çºè¡è ããã³/ãŸãã¯æ¶è²»è
ã SYSTEM ã-ãµãã·ã¹ãã ã®ã»ãããåœç€Ÿã䜿çšããåäžã®ãœãããŠã§ã¢ããã³ããŒããŠã§ã¢ãœãªã¥ãŒã·ã§ã³ã§ããããã·ã¢å šåã«ååžããŠããŸããããã¹ãŠã®æ å ±ãæµããäž»ãªèšç®ãšèšç®ãè¡ãããè€æ°ã®ã»ã³ã¿ãŒããããŸãã
SYSTEM-å°ççã«åæ£ããã·ã¹ãã -ããããã¹ã¯ãšãŠã©ãžãªã¹ãã¯ãããµã³ã¯ãããã«ãã«ã¯ãšã¯ã©ã¹ãããŒã«ãŸã§ã ã¢ãŒããã¯ãã£äžããããã¯æ¥ç¶ããããµãã·ã¹ãã ã®æ©èœã§åå²ãããããã€ãã®äžå€®ã®èŒªéã§ãã
ãã¬ã³ã ã®çŸå®ã«ããã茞éã®ã¿ã¹ã¯ã¯äœã§ããïŒ
ç°¡åã«èšããšããµãã¹ã¯ã©ã€ããŒã®ã¢ã¯ã·ã§ã³ããšã«ããµãã·ã¹ãã ã®åå¿ãç¶ããã€ãã³ãããã³åŸç¶ã®å€æŽã«ã€ããŠä»ã®ãµãã·ã¹ãã ã«éç¥ãããŸãã ã¡ãã»ãŒãžã¯ããµãã¹ã¯ã©ã€ããŒåŽã ãã§ãªããäŒç€Ÿã®åŸæ¥å¡åŽããã³ãµãã·ã¹ãã ãããSYSTEMã䜿çšããã¢ã¯ã·ã§ã³ã«ãã£ãŠçæãããŸãïŒéåžžã«å€ãã®ã¿ã¹ã¯ãèªåçã«å®è¡ãããŸãïŒã
ãã¬ã³ã ã®ãã©ã³ã¹ããŒãã®æ©èœïŒéåæãã©ã³ã¹ããŒããä»ããŠéä¿¡ããããããŸããŸãªããŒã¿ã®å€§ããªãééãã®ãªã倧ããªã¹ããªãŒã ã
äžéšã®ãµãã·ã¹ãã ã¯ãã¡ãã»ãŒãžãããŒã®éãããã«å¥ã®ã¯ã©ã¹ã¿ãŒã«ååšããŸããããšãã°ãã¯ã©ã¹ã¿ãŒã«ãªãœãŒã¹ãæ®ã£ãŠããŸãããããšãã°ã5ã6åã¡ãã»ãŒãž/ç§ã®ã¡ãã»ãŒãžãããŒã§ã¯ãéä¿¡ãããããŒã¿ã®éã¯170ã190ã¡ã¬ãã€ã/ç§ã«éããŸãã ãã®ãããªè² è·ãããã¡ã€ã«ã§ã¯ããã®ã¯ã©ã¹ã¿ãŒã«ä»ã®èª°ããçéžãããããšãããšæ²ããçµæã«ã€ãªãããŸãããã¹ãŠã®ããŒã¿ãåæã«åŠçããã®ã«ååãªãªãœãŒã¹ããªãããããŠãµã®ã¯çä¿¡æ¥ç¶ããããŒã«è¿œã蟌ã¿å§ããŸã-åçŽãªå ¬éããã»ã¹ãéå§ããããã¹ãŠã®ãµãã·ã¹ãã ãšã·ã¹ãã ã®ãã¹ãŠã®çµæãå šäœã
茞éã®åºæ¬èŠä»¶ïŒ
- è»äž¡ã®ã¢ã¯ã»ã·ããªãã£ã¯99.99ïŒ ã§ãªããã°ãªããŸããã å®éã«ã¯ãããã¯å¹Žäžç¡äŒã®éçšèŠä»¶ãšãç·æ¥äºæ ã«èªåçã«å¯Ÿå¿ããæ©èœã«å€æãããŸãã
- ããŒã¿ã®å®å šæ§ã®ç¢ºä¿ïŒãã©ã³ã¹ããŒãã§å€±ãããã¡ãã»ãŒãžã®å²åã¯0ã«ãªãåŸåããããŸãã
ããšãã°ãåŒã³åºããè¡ããšããäºå®ã§ã¯ãããã€ãã®ç°ãªãã¡ãã»ãŒãžãéåæãã©ã³ã¹ããŒããééããŸãã åãåè·¯ã«ååšãããµãã·ã¹ãã åãã®ã¡ãã»ãŒãžãããã°ãäžå€®ããŒããžã®éä¿¡çšã®ã¡ãã»ãŒãžããããŸãã åãã¡ãã»ãŒãžãè€æ°ã®ãµãã·ã¹ãã ã§èŠæ±ãããå¯èœæ§ãããããããŠãµã®ã§ã®ã¡ãã»ãŒãžã®å ¬éã®æ®µéã§ãã¡ãã»ãŒãžã¯ã³ããŒãããç°ãªãã³ã³ã·ã¥ãŒããŒã«éä¿¡ãããŸãã ãŸããå Žåã«ãã£ãŠã¯ãããããã¹ã¯ã®åç·ããã¯ã©ã¹ãããŒã«ã®åç·ã«æ å ±ãé ä¿¡ããå¿ èŠãããå Žåã«ãã¡ãã»ãŒãžã®ã³ããŒã匷å¶çã«äžéåç·ã«å®è£ ãããŸãã éä¿¡ã¯ãäžå€®ã®åä¿¡è ã«å¯ŸããŠãã¡ãã»ãŒãžã®ã³ããŒãäœæãããäžå€®ã®èŒªéã®1ã€ãä»ããŠè¡ãããŸãã
ãµãã¹ã¯ã©ã€ããŒã®ã¢ã¯ã·ã§ã³ã«ãã£ãŠåŒãèµ·ããããã€ãã³ãã«å ããŠããµãã·ã¹ãã ã亀æãããµãŒãã¹ã¡ãã»ãŒãžã¯ãã©ã³ã¹ããŒããééããŸãã ãããã£ãŠãæ°åã®ç°ãªãã¡ãã»ãŒãžã³ã°ã«ãŒããååŸãããäžéšã¯äº€å·®ããäžéšã¯åé¢ããŠååšããŸãã ãã©ã³ã¹ããŒããããã®ããããã®ã¹ã±ãŒã«ãç解ããã«ã¯ãç°ãªã茪éäžã®ã«ãŒãã«å«ãŸãããã¥ãŒã®æ°ã«ååãä»ããã ãã§ååã§ãïŒäžå€®åç·600ã200ã260ã15 ...ããã³ãªã¢ãŒãåç·80-100 ...
ãã®ãããªãã©ã³ã¹ããŒãã®é¢äžã«ããããã¹ãŠã®ãã©ã³ã¹ããŒãããŒãã®100ïŒ ã®ã¢ã¯ã»ã¹å¯èœæ§ã«å¯ŸããèŠä»¶ã¯ããã¯ãé床ã«æããŸããã ãããã®èŠä»¶ã®å®è£ ã«é²ãã§ããŸãã
ã¿ã¹ã¯ã解決ããæ¹æ³
RabbitMQèªäœã«å ããŠã Haproxyã¯è² è·ã®ãã©ã³ã¹ãåããç·æ¥äºæ ãžã®èªåå¿çãæäŸããããã«äœ¿çšãããŸãã
ç§ãã¡ã®ããããããããŒããŠã§ã¢ãšãœãããŠã§ã¢ç°å¢ã«ã€ããŠã®ããã€ãã®èšèïŒ
- ãã¹ãŠã®ãŠãµã®ãµãŒããŒã¯ä»®æ³ã§ããããã©ã¡ãŒã¿ãŒã¯8ã12 CPUã16 Gb Memã200 Gb HDDã§ãã çµéšãããããããã«ã90ã³ã¢ãšå€æ°ã®RAMãåããäžæ°å³ãªéä»®æ³ãµãŒããŒã䜿çšããŠããå€§å¹ ã«é«ãã³ã¹ãã§ããããªããã©ãŒãã³ã¹ã®åäžãåŸãããŸãã 䜿çšããŒãžã§ã³ïŒ3.6.6ïŒå®éã«ã¯-3.6ã®æãå®å®ïŒã¢ãŒã©ã³18.3ã3.7.6ã¢ãŒã©ã³20.1
- Haproxyã®èŠä»¶ã¯ã¯ããã«äœãã2 CPUã4 Gb MemãhaproxyããŒãžã§ã³ã¯1.8å®å®ã§ãã ãã¹ãŠã®haproxyãµãŒããŒäžã®ãªãœãŒã¹ã®è² è·ã¯15ïŒ CPU / Memãè¶ ããŸããã
- åç©åå šäœã¯ãå šåœã®7ã€ã®ãµã€ãã«ãã14ã®ããŒã¿ã»ã³ã¿ãŒã«ãããåäžã®ãããã¯ãŒã¯ã«çµ±åãããŠããŸãã åããŒã¿ã»ã³ã¿ãŒã«ã¯ã3ã€ã®ããŒããš1ã€ã®ããã®ã¯ã©ã¹ã¿ãŒããããŸãã
- ãªã¢ãŒãåç·ã®å Žåãäžå€®åç·ããšã«2ã€ã®ããŒã¿ã»ã³ã¿ãŒã䜿çšãããŸã.4ã
- äžå€®åç·ã¯çžäºã«ããŸããªã¢ãŒãåç·ãšçžäºäœçšãããªã¢ãŒãåç·ã¯äžå€®åç·ã®ã¿ã§åäœããçžäºã«çŽæ¥æ¥ç¶ããŠããŸããã
- åããµãŒãããå ã®ããã¹ãšã¯ã©ã¹ã¿ãŒã®æ§æã¯å®å šã«åäžã§ãã ååç·ã®ãšã³ããªãã€ã³ãã¯ãè€æ°ã®A-DNSã¬ã³ãŒãã®ãšã€ãªã¢ã¹ã§ãã ãããã£ãŠããããé²ãããã«ãåã«ãŒãã§å°ãªããšã1ã€ã®ãããšå°ãªããšã1ã€ã®ã¯ã©ã¹ã¿ãŒïŒã¯ã©ã¹ã¿ãŒå ã®å°ãªããšã1ã€ã®ããŒãïŒã䜿çšå¯èœã«ãªããŸãã 2ã€ã®ããŒã¿ã»ã³ã¿ãŒã«ãã6å°ã®ãµãŒããŒã§åæã«é害ãçºçããå¯èœæ§ã¯éåžžã«äœããããåãå ¥ãå¯èœæ§ã¯100ïŒ ã«è¿ããšæ³å®ãããŸãã
ããã¯ãã¹ãŠãã®ããã«èããããŠå®è£ ãããŠããããã«èŠããŸãïŒ
![ç»å](https://habrastorage.org/webt/f2/rm/9i/f2rm9i0kd5jk1ikaapl2vc63yhc.jpeg)
![ç»å](https://habrastorage.org/webt/az/5t/ks/az5tkse8qkz0fl3ml6znbg4pz18.jpeg)
ä»ãããã€ãã®èšå®ã
Haproxyèšå®
ããã³ããšã³ãcenter-rmq_5672 | ||
çžã | *ïŒ5672 | |
ã¢ãŒã | tcp | |
ããã¯ã¹ã³ã³ | 10,000 | |
ã¿ã€ã ã¢ãŠãã¯ã©ã€ã¢ã³ã | 3æé | |
ãªãã·ã§ã³ | tcpka | |
ãªãã·ã§ã³ | tcplog | |
default_backend | center-rmq_5672 | |
ããã³ããšã³ãcenter-rmq_5672_lvl_1 | ||
çžã | ããŒã«ã«ãã¹ãïŒ56721 | |
ã¢ãŒã | tcp | |
ããã¯ã¹ã³ã³ | 10,000 | |
ã¿ã€ã ã¢ãŠãã¯ã©ã€ã¢ã³ã | 3æé | |
ãªãã·ã§ã³ | tcpka | |
ãªãã·ã§ã³ | tcplog | |
default_backend | center-rmq_5672_lvl_1 | |
ããã¯ãšã³ãcenter-rmq_5672 | ||
ãã©ã³ã¹ | æå° | |
ã¢ãŒã | tcp | |
ãã«ã³ã³ | 10,000 | |
ã¿ã€ã ã¢ãŠã | ãµãŒããŒ3h | |
ãµãŒã㌠| srv-rmq01 10/10/10/10/106767ã€ã³ã¿ãŒ5ç§ã®ç«ã¡äžãã2ç«ã¡äžãã3ããŒã¯ã¢ãããããã·ã£ããããŠã³ããã¯ã¢ããã»ãã·ã§ã³ã®ãã§ã㯠| |
ãµãŒã㌠| srv-rmq03 10/10/10/2011 11672çžäº5ç§ã®äžæ2èœäž3ããŒã¯ã¢ãããããã·ã£ããããŠã³ããã¯ã¢ããã»ãã·ã§ã³ã®ãã§ã㯠| |
ãµãŒã㌠| srv-rmq05 2012幎10æ10æ¥126767çžäº5ç§ã®äžæ2èœäž3ããŒã¯ã¢ãããããã·ã£ããããŠã³ããã¯ã¢ããã»ãã·ã§ã³ããã§ã㯠| |
ãµãŒã㌠| localhost 127.0.0.1 â 6721 check inter 5s rise 2 fall 3 backup on-marked-down shutdown-sessions | |
ããã¯ãšã³ãcenter-rmq_5672_lvl_1 | ||
ãã©ã³ã¹ | æå° | |
ã¢ãŒã | tcp | |
ãã«ã³ã³ | 10,000 | |
ã¿ã€ã ã¢ãŠã | ãµãŒããŒ3h | |
ãµãŒã㌠| srv-rmq02 10/10/10/136767ã€ã³ã¿ãŒ5ç§ã®ç«ã¡äžãã2ç«ã¡äžãã3ããŒã¯ã¢ãããããã·ã£ããããŠã³ããã¯ã¢ããã»ãã·ã§ã³ã®ãã§ã㯠| |
ãµãŒã㌠| srv-rmq04 10/10/10/146767ã€ã³ã¿ãŒ5ã®äžæ2ã®äžé3ã®ããŒã¯ã¢ãããããã·ã£ããããŠã³ããã¯ã¢ããã»ãã·ã§ã³ã®ãã§ã㯠| |
ãµãŒã㌠| srv-rmq06 10.10.10.5:0767ã€ã³ã¿ãŒ5sã®äžæ2ã®äžé3ã®ããŒã¯ã¢ãããããã·ã£ããããŠã³ããã¯ã¢ããã»ãã·ã§ã³ã®ç¢ºèª |
ããã³ãã®æåã®ã»ã¯ã·ã§ã³ã¯ãã¡ã€ã³ã¯ã©ã¹ã¿ã«ã€ãªãããšã³ããªãã€ã³ãã説æããŸãã2çªç®ã®ã»ã¯ã·ã§ã³ã¯ãäºåã¬ãã«ã®ãã©ã³ã¹ãåãããã«èšèšãããŠããŸãã ããã¯ãšã³ãã»ã¯ã·ã§ã³ã§ãã¹ãŠã®ããã¯ã¢ãããŠãµã®ãµãŒããŒãåçŽã«èª¬æããå ŽåïŒããã¯ã¢ããæé ïŒãåãããã«æ©èœããŸã-ã¡ã€ã³ã¯ã©ã¹ã¿ãŒã«å®å šã«ã¢ã¯ã»ã¹ã§ããªãå Žåãæ¥ç¶ã¯ããã¯ã¢ããã«è¡ããŸããããã¹ãŠã®æ¥ç¶ã¯ãªã¹ãã®æåã®ããã¯ã¢ãããµãŒããŒã«è¡ããŸãã ãã¹ãŠã®ããã¯ã¢ããããŒãã§è² è·åæ£ãä¿èšŒããããã«ãããŒã«ã«ãã¹ãã§ã®ã¿äœ¿çšã§ããããã³ãããã1ã€å°å ¥ãããããããã¯ã¢ãããµãŒããŒã«å²ãåœãŠãŸãã
äžèšã®äŸã§ã¯ã2ã€ã®ããŒã¿ã»ã³ã¿ãŒå ã§åäœãããªã¢ãŒãåç·ã®ãã©ã³ã¹ã«ã€ããŠèª¬æããŠããŸããsrv-rmqãµãŒããŒ{01,03,05}-ããŒã¿ã»ã³ã¿ãŒNo. 1ã«äœãã§ãããsrv-rmq {02,04,06}-ããŒã¿ã»ã³ã¿ãŒNo. 2ã«ãããŸãã ãããã£ãŠã4ã³ãŒããœãªã¥ãŒã·ã§ã³ãå®è£ ããã«ã¯ã察å¿ãããŠãµã®ãµãŒããŒã®2ã€ã®ããŒã«ã«ããã³ããš2ã€ã®ããã¯ãšã³ãã»ã¯ã·ã§ã³ãè¿œå ããã ãã§ãã
ãã®æ§æã§ã®ãã©ã³ãµãŒã®åäœã¯æ¬¡ã®ãšããã§ããå°ãªããšã1ã€ã®ã¡ã€ã³ãµãŒããŒã皌åããŠããéãããã䜿çšããŸãã ã¡ã€ã³ãµãŒããŒãå©çšã§ããªãå Žåãäºåã§äœæ¥ããŸãã å°ãªããšã1ã€ã®ãã©ã€ããªãµãŒããŒã䜿çšå¯èœã«ãªããšãããã¯ã¢ãããµãŒããŒãžã®ãã¹ãŠã®æ¥ç¶ãåæãããæ¥ç¶ã埩å ããããšããããã¯æ¢ã«ãã©ã€ããªã¯ã©ã¹ã¿ã«èœã¡ãŸãã
ãã®æ§æã®æäœçµéšã¯ãååè·¯ã®ã»ãŒ100ïŒ ã®å¯çšæ§ã瀺ããŠããŸãã ãã®ãœãªã¥ãŒã·ã§ã³ã§ã¯ããµãã·ã¹ãã ãå®å šã«åæ³ãã€ã·ã³ãã«ã§ããå¿ èŠããããŸããåæåŸã«ãŠãµã®ãšåæ¥ç¶ã§ããããã«ããããã§ãã
ãã®ãããä»»æã®æ°ã®ã¯ã©ã¹ã¿ãŒã«è² è·åæ£ãæäŸããã¯ã©ã¹ã¿ãŒãèªåçã«åãæ¿ããŸãããä»åºŠã¯ãŠãµã®ã«çŽæ¥ã¢ã¯ã»ã¹ããŸãã
å®è·µã瀺ãããã«ãåã¯ã©ã¹ã¿ãŒã¯3ã€ã®ããŒãããäœæãããŸããããã¯ãæé©ãªããŒãæ°ã§ãããå¯çšæ§/ãã©ãŒã«ããã¬ã©ã³ã¹/é床ã®æé©ãªãã©ã³ã¹ãä¿èšŒããŸãã ãŠãµã®ã¯æ°Žå¹³æ¹åã«ã¹ã±ãŒãªã³ã°ããªãããïŒã¯ã©ã¹ã¿ãŒã®ããã©ãŒãã³ã¹ã¯æãé ããµãŒããŒã®ããã©ãŒãã³ã¹ã«çããïŒãCPU / Mem / Hddã®æé©ãªãã©ã¡ãŒã¿ãŒãåãã§ãããã¹ãŠã®ããŒããäœæããŸãã ãµãŒããŒãã§ããã ãè¿ãã«é 眮ããŸãããã®å Žåãåããã¡ãŒã å ã«ä»®æ³ãã·ã³ããã¡ã€ãªã³ã°ããŸãã
åææ¡ä»¶ã«é¢ããŠã¯ããµãã·ã¹ãã ã®äžéšã§ãåä¿¡ããã¡ãã»ãŒãžãä¿åããããã®èŠä»¶ã®æãå®å®ããåäœãšå®çŸãä¿èšŒãããŸãã
- ãŠãµã®ã䜿çšããäœæ¥ã¯ãamqp / amqpsãããã³ã«ãä»ããŠã®ã¿ïŒãã©ã³ã·ã³ã°ãä»ããŠïŒè¡ãããŸãã ããŒã«ã«ã¢ã«ãŠã³ãã§ã®æ¿èª-åã¯ã©ã¹ã¿ãŒå ïŒããã³ãåè·¯å šäœïŒ
- ãµãã·ã¹ãã ã¯ããã·ãã¢ãŒãã§ãŠãµã®ã«æ¥ç¶ãããŸãïŒãŠãµã®ã®ãšã³ãã£ãã£ïŒãã¥ãŒ/ãšã·ã§ã³ãã€/ãã€ã³ãã®äœæïŒã®æäœã¯èš±å¯ããããã¢ã«ãŠã³ãæš©éã®ã¬ãã«ã§å¶éãããŸã-åã«èšå®ããæš©å©ãäžããŸããã
- å¿ èŠãªãã¹ãŠã®ãšã³ãã£ãã£ã¯ããµãã·ã¹ãã ã§ã¯ãªãäžå€®ã§äœæããããã¹ãŠã®ã¯ã©ã¹ã¿ãŒã§åãæ¹æ³ã§è¡ãããŸã-ããã¯ã¢ããã¯ã©ã¹ã¿ãŒãžã®èªååãæ¿ããããã³ãã®éãè¡ãããã ããã§ãªãå Žåã¯ãç¶æ³ãææ¡ã§ããŸãããªã¶ãŒãã«åãæ¿ããŸãããããã¥ãŒãŸãã¯ãã€ã³ããååšãããæ¥ç¶ãšã©ãŒãŸãã¯ã¡ãã»ãŒãžã®æ¬ èœã®ãããããéžæã§ããŸãã
ãŠãµã®ã®çŽæ¥èšå®ïŒ
- ããŒã«ã«ãã¹ãã¯Webã€ã³ã¿ãŒãã§ã€ã¹ã«ã¢ã¯ã»ã¹ã§ããŸãã
- Webãžã®ã¢ã¯ã»ã¹ã¯LDAPãä»ããŠæŽçãããŸããADãšçµ±åãããŠã§ãã«ã¡ã©ã§èª°ãã©ãã«è¡ã£ãããèšé²ããŸãã æ§æã¬ãã«ã§ã¯ãADã¢ã«ãŠã³ãã®æš©å©ãå¶éããŸããç¹å®ã®ã°ã«ãŒãã«å±ããŠããå¿ èŠãããã ãã§ãªãããèŠããããã ãã®æš©å©ãäžããŸãã ç£èŠã°ã«ãŒãã§ååã§ãã ãŸããADã®å¥ã®ã°ã«ãŒãã«ç®¡çè æš©éãæããŠããããããã©ã³ã¹ããŒããžã®åœ±é¿ã®èŒªã¯å€§å¹ ã«å¶éãããŠããŸãã
- 管çãšè¿œè·¡ã容æã«ããã«ã¯ïŒ
ãã¹ãŠã®VHOSTã§ããã¹ãŠã®ãã¥ãŒã«é©çšããã¬ãã«0ã®ããªã·ãŒãããã«åæããŸãïŒãã¿ãŒã³ïŒã*ïŒïŒ
- ha-modeïŒall-ãã¹ãŠã®ããŒã¿ãã¯ã©ã¹ã¿ãŒã®ãã¹ãŠã®ããŒãã«ä¿åããŸããã¡ãã»ãŒãžã®åŠçé床ã¯äœäžããŸãããå®å šæ§ãšå¯çšæ§ã¯ä¿èšŒãããŸãã
- ha-sync-modeïŒautomatic-ã¯ã©ã¹ã¿ãŒã®ãã¹ãŠã®ããŒãã§ããŒã¿ãèªåçã«åæããããã«ã¯ããŒã©ãŒã«æ瀺ããŸããããŒã¿ã®å®å šæ§ãšå¯çšæ§ãåäžããŸãã
- queue-modeïŒlazy-ããããããŒãžã§ã³3.6以éã®ãŠãµã®ã«ç»å Žããæãæçšãªãªãã·ã§ã³ã®1ã€-HDDäžã®ã¡ãã»ãŒãžã®å³æèšé²ã ãã®ãªãã·ã§ã³ã¯ãRAMã®æ¶è²»ãåçã«åæžããããŒããŸãã¯ã¯ã©ã¹ã¿ãŒå šäœã®åæ¢/ãã©ãŒã«äžã®ããŒã¿ã®å®å šæ§ãé«ããŸãã
- æ§æãã¡ã€ã«ã®èšå®ïŒ rabbitmq-main / conf / rabbitmq.config ïŒïŒ
- ã»ã¯ã·ã§ã³rabbit ïŒ {vm_memory_high_watermark_paging_ratioã0.5} -ã¡ãã»ãŒãžããã£ã¹ã¯ã«ããŠã³ããŒãããããã®ãããå€50ïŒ ã lazyããªã³ã®å Žåãããšãã°lazyãå«ããããšãå¿ããã¬ãã«1ã®ãããªããªã·ãŒãäœæãããšãä¿éºãšããŠã®åœ¹å²ãæãããŸãã
- {vm_memory_high_watermarkã0.95} -ãŠãµã®ã¯RAMå šäœã®95ïŒ ã«å¶éããŸãããŠãµã®ã®ã¿ããµãŒããŒäžã«ååšãããããããå³ããå¶éãå°å ¥ããŠãæå³ããããŸããã 5ïŒ ã®ãå¹ åºããžã§ã¹ãã£ãŒããªã®ã§ãOSãç£èŠããã®ä»ã®äŸ¿å©ãªãã®ã¯ãã®ãŸãŸã«ããŠãããŸãã ãã®å€ã¯äžéã§ããããã誰ããååãªãªãœãŒã¹ãæã£ãŠããŸãã
- {cluster_partition_handlingãpause_minority} -ãããã¯ãŒã¯ããŒãã£ã·ã§ã³ãçºçãããšãã®ã¯ã©ã¹ã¿ãŒã®åäœã説æããŸãã3ã€ä»¥äžã®ããŒãã¯ã©ã¹ã¿ãŒã®å Žåããã®ãã©ã°ããå§ãããŸã-ã¯ã©ã¹ã¿ãŒãèªèº«ãå埩ã§ããããã«ããŸãã
- {disk_free_limitã "500MB"} -500 MBã®ç©ºããã£ã¹ã¯å®¹éãããå Žåããã¹ãŠãç°¡åã§ã-ã¡ãã»ãŒãžã®çºè¡ã¯åæ¢ãããæžç®ã®ã¿ã䜿çšå¯èœã«ãªããŸãã
- {auth_backendsã[rabbit_auth_backend_internalãrabbit_auth_backend_ldap]} -ãŠãµã®ã®æ¿èªé åºïŒæåã«ãããŒã«ã«ããŒã¿ããŒã¹å ã®è¶ é³æ³¢ã®ååšã確èªããååšããªãå Žåã¯LDAPãµãŒããŒã«ç§»åããŸãã
- rabbitmq_auth_backend_ldapã»ã¯ã·ã§ã³-ADãšã®å¯Ÿè©±ã®æ§æïŒ {serversã["srv_dc1"ã "srv_dc2"]} -èªèšŒãè¡ããããã¡ã€ã³ã³ã³ãããŒã©ãŒã®ãªã¹ãã
- ADã®ãŠãŒã¶ãŒãLDAPããŒããªã©ãçŽæ¥èª¬æãããã©ã¡ãŒã¿ãŒã¯çŽç²ã«åå¥ã§ãããããã¥ã¡ã³ãã§è©³çŽ°ã«èª¬æãããŠããŸãã
- ç§ãã¡ã«ãšã£ãŠæãéèŠãªããšã¯ããŠãµã®ã®Webã€ã³ã¿ãŒãã§ãŒã¹ãžã®ç®¡çãšã¢ã¯ã»ã¹ã«é¢ããæš©å©ãšå¶éã®èª¬æã§ãïŒtag_queriesïŒ
[{管çè ã{in_groupã "cn = rabbitmq-adminsãou = GRPãou = GRP_MAINãdc = My_domainãdc = ru"}}ã
{ç£èŠã
{in_groupããcn = rabbitmq-webãou = GRPãou = GRP_MAINãdc = My_domainãdc = ruã}
}] -ãã®èšèšã¯ãrabbitmq-adminsã°ã«ãŒãã®ãã¹ãŠã®ãŠãŒã¶ãŒã«ç®¡çæš©éãæäŸããrabbitmq-webã°ã«ãŒãã«ç£èŠæš©éïŒã¢ã¯ã»ã¹ã®è¡šç€ºã«æäœéå¿ èŠïŒãæäŸããŸãã
- resource_access_query ïŒ
{ã®ããã«ã
[{permissionãconfigureã{in_groupã "cn = rabbitmq-adminsãou = GRPãou = GRP_MAINãdc = My_domainãdc = ru"}}
{èš±å¯ãæžã蟌ã¿ã{in_groupã "cn = rabbitmq-adminsãou = GRPãou = GRP_MAINãdc = My_domainãdc = ru"}}ã
{èš±å¯ãèªã¿åãã{å®æ°ãtrue}}
]
} -èšå®ããã³ç®¡çè ã°ã«ãŒãã«ã®ã¿æžã蟌ãæš©éãæäŸããŸãããã°ã€ã³ã«æåããä»ã®ãã¹ãŠã®äººã«ãæš©éã¯èªã¿åãå°çšã§ã-Webã€ã³ã¿ãŒãã§ãŒã¹ãä»ããŠã¡ãã»ãŒãžãèªã¿åãããšãã§ããŸãã
ããŒã¿ã®å¯çšæ§ãšå®å šæ§ãæ倧åããïŒãŠãµã®èªäœã®æ§æãã¡ã€ã«ãšèšå®ã®ã¬ãã«ã§ïŒæ§ææžã¿ã¯ã©ã¹ã¿ãŒãååŸããŸãã ããã«ãããã»ãšãã©ã®å ŽåãããŒã¿ã®å¯çšæ§ãšå®å šæ§ã確ä¿ãããšããèŠä»¶ãå®è£ ããŸãã
ãã®ãããªè² è·ã®é«ãã·ã¹ãã ãéçšããéã«èæ ®ãã¹ãç¹ãããã€ããããŸãã
- ãã¥ãŒãäœæãããšãã«ãã©ã¡ãŒã¿ãŒããã³ã°ãããã®ã§ã¯ãªããæ¿æ²»å®¶ããã¥ãŒã®ãã¹ãŠã®è¿œå ããããã£ïŒTTLãæå¹æéãæ倧é·ãªã©ïŒãæŽçããããšããå§ãããŸãã å€åããçŸå®ã«åãããŠãã®å Žã§ã«ã¹ã¿ãã€ãºã§ãããæè»ã«ã«ã¹ã¿ãã€ãºå¯èœãªæ§é ã«ãªã£ãŠããŸãã
- TTLã䜿çšããŸãã ãã¥ãŒãé·ãã»ã©ãCPUè² è·ãé«ããªããŸãã ã倩äºãçªç Žãããã®ãé²ãã«ã¯ãmax-lengthã䜿çšããŠãã¥ãŒã®é·ããå¶éããããšããå§ãããŸãã
- ãŠãµã®èªäœã«å ããŠãå€ãã®ãŠãŒãã£ãªãã£ã¢ããªã±ãŒã·ã§ã³ããµãŒããŒäžã§å転ããŠããŸãããå¥åŠãªããšã«ãCPUãªãœãŒã¹ãå¿ èŠã§ãã é£ãããåã®ãŠãµã®ã¯ãããã©ã«ãã§ãå©çšå¯èœãªãã¹ãŠã®ã«ãŒãã«ãå æããŸã...ããã¯äžå¿«ãªç¶æ³ã§ããããšãå€æããå¯èœæ§ããããŸãïŒãŠãµã®ã®ãã¬ãŒãã«ç°¡åã«ã€ãªããå¯èœæ§ã®ãããªãœãŒã¹ã®éäºã ãã®ç¶æ³ã¯ãããšãã°æ¬¡ã®ããã«åé¿ã§ããŸããã¢ãŒã©ã³èµ·åãã©ã¡ãŒã¿ãŒã®å€æŽ-䜿çšããã³ã¢ã®æ°ã«åŒ·å¶çãªå¶éãå°å ¥ããŸãã ããã次ã®ããã«è¡ããŸããrabbitmq-envãã¡ã€ã«ãèŠã€ããSERVER_ERL_ARGS =ãã©ã¡ãŒã¿ãŒãæ¢ããŠã+ sct L0-Xc0-X + SYïŒYãè¿œå ããŸãã Xã¯ã³ã¢1ã®æ°ïŒã«ãŠã³ãã¯0ããéå§ïŒãY-ã³ã¢1ã®æ°ïŒ1ããã«ãŠã³ãïŒã§ãã + sct L0-Xc0-X-ã«ãŒãã«ãžã®ãã€ã³ãã£ã³ã°ãå€æŽããŸãã+ SYïŒY-ã¢ãŒã©ã³ã«ãã£ãŠèµ·åãããã·ã§ããŒã®æ°ãå€æŽããŸãã ãããã£ãŠã8ã³ã¢ã®ã·ã¹ãã ã®å Žåãè¿œå ããããã©ã¡ãŒã¿ãŒã¯æ¬¡ã®åœ¢åŒã«ãªããŸãïŒ+ sct L0-6c0-6 + S 7ïŒ7ã ãã®ããã«ããŠããŠãµã®ã«7ã³ã¢ã®ã¿ãæäŸããOSãä»ã®ããã»ã¹ãèµ·åããããšã«ããæé©ã«åäœããã¢ã³ããŒããããã«ãŒãã«ã«ãã³ã°ããããšãæåŸ ããŸãã
çµæãšããŠçããåç©åã®éå¶ã®ãã¥ã¢ã³ã¹
ã©ã®èšå®ãããä¿è·ã§ããªãã®ã¯ãèšæ¶åªå€±ããããŒã¹ã§ã-æ®å¿µãªããããŒã以å€ã®ç¢ºçã§çºçããŸãã ãã®ãããªæ²æšãªçµæã¯ãã°ããŒãã«ãªé害ïŒããšãã°ãããŒã¿ã»ã³ã¿ãŒå šäœã®å®å šãªé害-è² è·ãå¥ã®ã¯ã©ã¹ã¿ãŒã«åãæ¿ãããªã©ïŒã§ã¯ãªããåããããã¯ãŒã¯ã»ã°ã¡ã³ãå ã®ããå€ãã®ããŒã«ã«é害ã«ãã£ãŠåŒãèµ·ããããŸãã
ããã«ãæãã®ã¯ããŒã«ã«ãããã¯ãŒã¯ã®é害ã§ãããªããªãã 1ã€ãŸãã¯2ã€ã®ããŒãã®ç·æ¥ã·ã£ããããŠã³ã¯èŽåœçãªçµæã«ã€ãªããããšã¯ãããŸãã-åã«ãã¹ãŠã®èŠæ±ã1ã€ã®ããŒãã«éãããèŠããŠããããã«ãããã©ãŒãã³ã¹ã¯ããŒãèªäœã®ããã©ãŒãã³ã¹ã«äŸåããŸãã ãããã¯ãŒã¯é害ïŒéä¿¡ã®å°ããªäžæã¯èæ ®ããŠããŸãã-çã¿ã¯ãããŸããïŒã¯ãããŒããçžäºã«åæããã»ã¹ãéå§ãããã®åŸæ°ç§éäœåºŠãæ¥ç¶ãåæãããç¶æ³ã«ã€ãªãããŸãã
ããšãã°ããããã¯ãŒã¯ãè€æ°åç¹æ» ãã5ç§ãè¶ ããé »åºŠã§ïŒHapovèšå®ã§ãã®ãããªã¿ã€ã ã¢ãŠããèšå®ãããŠããå Žåããããã確å®ã«åçã§ããŸãããæå¹æ§ã確èªããã«ã¯ã倱æãç¹°ãè¿ãå¿ èŠããããŸãã
ã¯ã©ã¹ã¿ãŒã¯ããã®ãããªç¹°ãè¿ãã1åãŸãã¯2åèããããšãã§ããŸããããã以äžã®å¯èœæ§ã¯ãã§ã«æå°éã«æããããŠããŸãã ãã®ãããªç¶æ³ã§ã¯ãåããããŒãã®åæ¢ã¯ç¯çŽã§ããŸãããæåã§åæ¢ããæéãæã€ããšã¯ã»ãšãã©äžå¯èœã§ãã å€ãã®å Žåãçµæã¯ããããã¯ãŒã¯ããŒãã£ã·ã§ã³ããšããã¡ãã»ãŒãžã§ã¯ã©ã¹ã¿ãŒããããŒãã倱ãããã ãã§ãªãããã¥ãŒã®äžéšã®ããŒã¿ããã®ããŒãã ãã«ååšããæ®ãã®ããŒããšåæããæéããªãã£ãå Žåã®ç»åããããŸãã èŠèŠçã«-ãã¥ãŒå ã®ããŒã¿ã¯NaNã§ãã
ãããŠä»ãããã¯æ確ãªä¿¡å·ã§ã-ããã¯ã¢ããã¯ã©ã¹ã¿ã«åãæ¿ããŸãã åãæ¿ãã¯å¹žéããããããŸã;ã¡ã€ã³ã¯ã©ã¹ã¿ãŒã§ãŠãµã®ãæ¢ããã ãã§æ°åã§ãã ãã®çµæã茞éã®äœæ¥èœåã®å埩ãåŸãããäºæ ã®åæãšãã®è§£æ¶ã«å®å šã«é²ãããšãã§ããŸãã
æå·ããã¯ã©ã¹ã¿ãŒãèªã¿èŸŒã¿ããåé€ããã«ã¯ããããªãå£åãé²ãããã«ãæãç°¡åãªã®ã¯ããŠãµã®ã5672以å€ã®ããŒãã§åäœãããããšã§ãããŠãµã®ãéåžžã®ããŒãã§ç£èŠããŠãããããããšãã°5673ãŠãµã®ã®èšå®ã§ã¯ãã¯ã©ã¹ã¿ãŒãå®å šã«ç¡äºã«èµ·åãããã®æäœæ§ãšæ®ã£ãŠããã¡ãã»ãŒãžã埩å ããããšããããšãã§ããŸãã
ããã€ãã®æé ã§ãããè¡ããŸãã
- é害ãçºçããã¯ã©ã¹ã¿ãŒã®ãã¹ãŠã®ããŒããåæ¢ããŸã-hapã¯è² è·ãããã¯ã¢ããã¯ã©ã¹ã¿ãŒã«åãæ¿ããŸã
- RABBITMQ_NODE_PORT = 5673ãrabbitmq-envãã¡ã€ã«ã«è¿œå ããŸã-ãŠãµã®ãèµ·åãããšãèšå®ã¯åŒ·åãããŸãããWebã€ã³ã¿ãŒãã§ãŒã¹ã¯15672ã§åäœããŸãã
- æ©æ¥ã«æ»äº¡ããã¯ã©ã¹ã¿ãŒã®ãã¹ãŠã®ããŒãã§æ°ããããŒããæå®ããããããéå§ããŸãã
èµ·åæã«ã€ã³ããã¯ã¹ãåæ§ç¯ãããã»ãšãã©ã®å Žåããã¹ãŠã®ããŒã¿ãå®å šã«åŸ©å ãããŸãã æ®å¿µãªããããã£ã¹ã¯ãããã¹ãŠã®ã¡ãã»ãŒãžãç©ççã«åé€ããªããã°ãªããªãã¯ã©ãã·ã¥ãçºçããæ§æã®ã¿ãæ®ãããŸã-ãã£ã¬ã¯ããªmsg_store_persistent ã msg_store_transient ã ãã¥ãŒ ïŒããŒãžã§ã³3.6ã®å ŽåïŒãŸãã¯msg_stores ïŒããŒãžã§ã³3.7ã®å ŽåïŒã¯ããŒã¿ããŒã¹ã®ãããã©ã«ããŒããåé€ãããŸãã
ãã®ãããªæ¥é²çãªæ²»çã®åŸãã¯ã©ã¹ã¿ãŒã¯å éšæ§é ãä¿æããªããèµ·åãããŸãããã¡ãã»ãŒãžã¯ãããŸããã
ãããŠãæãäžå¿«ãªãªãã·ã§ã³ïŒäžåºŠã ã芳å¯ïŒïŒããŒã¹ãžã®æå·ã¯ãããŒã¹å šäœãå®å šã«åé€ããã¯ã©ã¹ã¿ãŒãæåããåæ§ç¯ããå¿ èŠãããã»ã©ã§ããã
ãŠãµã®ã®ç®¡çãšæŽæ°ã®å©äŸ¿æ§ã®ããã«ãrpmã®æ¢è£œã®ã¢ã»ã³ããªã¯äœ¿çšãããŸãããããŠãµã®ã¯cpioã䜿çšããŠå解ãããåæ§æãããŸãïŒã¹ã¯ãªããã®ãã¹ãå€æŽããŸãïŒã äž»ãªéãã¯ãã€ã³ã¹ããŒã«/æ§æã«ã«ãŒãç¹æš©ãå¿ èŠãšãããã·ã¹ãã ã«ã€ã³ã¹ããŒã«ãããïŒåæ§ç¯ããããŠãµã®ã¯tgzã«å®å šã«ããã¯ãããŠããïŒãã©ã®ãŠãŒã¶ãŒããã§ãå®è¡ã§ããããšã§ãã ãã®ã¢ãããŒãã«ãããããŒãžã§ã³ãæè»ã«ã¢ããã°ã¬ãŒãã§ããŸãïŒã¯ã©ã¹ã¿ãŒãå®å šã«åæ¢ããå¿ èŠããªãå Žå-ãã®å Žåãããã¯ã¢ããã¯ã©ã¹ã¿ãŒã«åãæ¿ããŠæŽæ°ããã·ãããããããŒããæäœã«æå®ããããšãå¿ããªãã§ãã ããïŒã åããã·ã³äžã§RabbitMQã®è€æ°ã®ã€ã³ã¹ã¿ã³ã¹ãå®è¡ããããšãå¯èœã§ã-ãªãã·ã§ã³ã®ãã¹ãã«ã¯éåžžã«äŸ¿å©ã§ã-ããã«åç©åã®ã¢ãŒããã¯ãã£ã³ããŒãå±éã§ããŸãã
ã¹ã¯ãªããã®cpioãšãã¹ã®ã·ã£ãŒãããºã ã®çµæãšããŠããã«ããªãã·ã§ã³ããããŸããïŒ2ã€ã®rabbitmq-baseãã©ã«ããŒïŒå ã®ã¢ã»ã³ããª-mnesiaãã©ã«ããŒïŒãšrabbimq-main-ããã«ããŠãµã®ãšã¢ãŒã©ã³èªäœã®ãã¹ãŠã®å¿ èŠãªã¹ã¯ãªãããå ¥ããŸããã
rabbimq-main / binã«ã¯ããŠãµã®ãšã¢ãŒã©ã³ã®ã¹ã¯ãªãããžã®ã·ã³ããªãã¯ãªã³ã¯ãšããŠãµã®ã®è¿œè·¡ã¹ã¯ãªããããããŸãïŒä»¥äžã®èª¬æïŒã
rabbimq-main / init.d-ãã°ãéå§/åæ¢/å転ããrabbitmq-serverã¹ã¯ãªããã libã§ã¯ããŠãµã®èªäœã lib64ã§-ã¢ãŒã©ã³ïŒãŠãµã®ã®ã¢ãŒã©ã³ã®ããŒãžã§ã³ã®ã¿ã䜿çšïŒ
æ°ããããŒãžã§ã³ããªãªãŒã¹ããããšãã«çµæã®ã¢ã»ã³ããªãæŽæ°ããã®ã¯éåžžã«ç°¡åã§ã-æ°ããããŒãžã§ã³ããrabbimq-main / libããã³rabbimq-main / lib64ã®å 容ãè¿œå ããbinã®ã·ã³ããªãã¯ãªã³ã¯ã眮ãæããŸãã æŽæ°ãå¶åŸ¡ã¹ã¯ãªããã«ã圱é¿ããå Žå-ãããã®ãã¹ãå€æŽããŸãã
ãã®ã¢ãããŒãã®ç¢ºå®ãªå©ç¹ã¯ãããŒãžã§ã³ã®å®å šãªé£ç¶æ§ã§ãããã¹ãŠã®ãã¹ãã¹ã¯ãªãããå¶åŸ¡ã³ãã³ãã¯å€æŽãããªããããããŒãžã§ã³ããšã«ããŒãã³ã°ããããšãªããèªå·±èšè¿°ãŠãŒãã£ãªãã£ã¹ã¯ãªããã䜿çšã§ããŸãã
ãŠãµã®ã®fallèœä»¥æ¥ããŸãã«ããçºçããŠããŸããããfallèœã®å Žåã¯ïŒfallèœã®çç±ã®ãã°ãç¶æããªããïŒé£Œè²ãç£èŠããã¡ã«ããºã ãå®è£ ããå¿ èŠããããŸããã ã±ãŒã¹ã®99ïŒ ã§ã®ããŒãã®é害ã«ã¯ãã°ãšã³ããªã䌎ããçè·¡ãæ®ããŠãã殺ãããšãã§ããŸããããã«ãããç°¡åãªã¹ã¯ãªããã䜿çšããŠãŠãµã®ã®ç¶æ ã®ç£èŠãå®è£ ããããšãå¯èœã«ãªããŸããã
ããŒãžã§ã³3.6ããã³3.7ã§ã¯ããã°ãšã³ããªã®éãã«ãããã¹ã¯ãªããããããã«ç°ãªããŸãã
ããŒãžã§ã³3.6ã®å Žå
#!/usr/bin/python import subprocess import os import datetime import zipfile def LastRow(fileName,MAX_ROW=200): with open(fileName,'rb') as f: f.seek(-min(os.path.getsize(fileName),MAX_ROW),2) return (f.read().splitlines())[-1] if os.path.isfile('/data/logs/rabbitmq/startup_log'): if b'FAILED' in LastRow('/data/logs/rabbitmq/startup_log'): proc = subprocess.Popen("ps x|grep rabbitmq-server|grep -v 'grep'", shell=True, stdout=subprocess.PIPE) out = proc.stdout.readlines() if str(out) == '[]': cur_dt=datetime.datetime.now() try: os.stat('/data/logs/rabbitmq/after_crush') except: os.mkdir('/data/logs/rabbitmq/after_crush') z=zipfile.ZipFile('/data/logs/rabbitmq/after_crush/repair_log'+'-'+str(cur_dt.day).zfill(2)+str(cur_dt.month).zfill(2)+str(cur_dt.year)+'_'+str(cur_dt.hour).zfill(2)+'-'+str(cur_dt.minute).zfill(2)+'-'+str(cur_dt.second).zfill(2)+'.zip','a') z.write('/data/logs/rabbitmq/startup_err','startup_err') proc = subprocess.Popen("~/rabbitmq-main/init.d/rabbitmq-server start", shell=True, stdout=subprocess.PIPE) out = proc.stdout.readlines() z.writestr('res_restart.log',str(out)) z.close() my_file = open("/data/logs/rabbitmq/run.time", "a") my_file.write(str(cur_dt)+"\n") my_file.close()
3.7ã§ã¯ã2è¡ã®ã¿ãå€æŽãããŸã
if (os.path.isfile('/data/logs/rabbitmq/startup_log')) and (os.path.isfile('/data/logs/rabbitmq/startup_err')): if ((b' OK ' in LastRow('/data/logs/rabbitmq/startup_log')) or (b'FAILED' in LastRow('/data/logs/rabbitmq/startup_log'))) and not (b'Gracefully halting Erlang VM' in LastRow('/data/logs/rabbitmq/startup_err')):
ãã®ã¹ã¯ãªããïŒã¹ã¯ãªããåïŒcheck_and_runïŒãæ¯åå®è¡ãããŠãµã®ïŒããã©ã«ãã§ã¯rabbitmqïŒãåäœããcrontabã¢ã«ãŠã³ããèšå®ããŸãïŒæåã«ã管çè ã«crontabã䜿çšããæš©å©ãäžããããã«ç®¡çè ã«äŸé ŒããŸãããrootæš©éãããå Žåã¯èªåã§è¡ããŸãïŒïŒ
* / 1 * * * *ã/ rabbitmq-main / bin / check_and_run
åçµã¿ç«ãŠããããŠãµã®ã䜿çšãã2çªç®ã®ãã€ã³ãã¯ããã°ã®å転ã§ãã
logrotateã·ã¹ãã ã«çžãããŠããªããããéçºè ãæäŸããæ©èœã䜿çšããŸããinit.dã®rabbitmq-serverã¹ã¯ãªããïŒããŒãžã§ã³3.6çšïŒ
rotate_logs_rabbitmqïŒïŒã«å°ããªå€æŽãå ããããšã«ãã
è¿œå ïŒ
find ${RABBITMQ_LOG_BASE}/http_api/*.log.* -maxdepth 0 -type f ! -name "*.gz" | xargs -i gzip --force {} find ${RABBITMQ_LOG_BASE}/*.log.*.back -maxdepth 0 -type f | xargs -i gzip {} find ${RABBITMQ_LOG_BASE}/*.gz -type f -mtime +30 -delete find ${RABBITMQ_LOG_BASE}/http_api/*.gz -type f -mtime +30 -delete
ããŒrotate-logsã䜿çšããŠrabbitmq-serverã¹ã¯ãªãããå®è¡ããçµæïŒãã°ã¯gzipã§å§çž®ãããéå»30æ¥éã®ã¿ä¿åãããŸãã http_api-ãŠãµã®ããã°ã眮ããã¹http-èšå®ãã¡ã€ã«ã§èšå®ïŒ {rabbitmq_managementã[{rates_modeãDetailed}ã{http_log_dirãpath_to_logs / http_api "}]}
åæã«ã {rates_modeã detailed }ã«æ³šæãæã£ãŠããŸãããã®ãªãã·ã§ã³ã¯è² è·ããããã«å¢å ãããŸãããWEBã€ã³ã¿ãŒãã§ãŒã¹ã®EXCHENGEã§ã¡ãã»ãŒãžãæçš¿ãããŠãŒã¶ãŒã®æ å ±ã衚瀺ã§ããŸãïŒãããã£ãŠAPIãä»ããŠååŸã§ããŸãïŒã æ å ±ã¯éåžžã«å¿ èŠã§ãããªããªã ãã¹ãŠã®æ¥ç¶ã¯ãã©ã³ãµãŒãçµç±ããŸã-ãã©ã³ãµãŒèªäœã®IPã®ã¿ã衚瀺ãããŸãã ãããŠããŠãµã®ãšæ¥ç¶ãããã¹ãŠã®ãµãã·ã¹ãã ãããºã«ããŠããŠãµã®ãžã®æ¥ç¶ã®ããããã£ã®ã¯ã©ã€ã¢ã³ãããããã£ãã©ã¡ãŒã¿ãå ¥åãããšã誰ããã©ãã§ãã©ã®åŒ·åºŠã§ã¡ãã»ãŒãžãçºè¡ãããã«é¢ããæ¥ç¶ã¬ãã«ã®è©³çŽ°æ å ±ãååŸããããšãå¯èœã«ãªããŸãã
æ°ããããŒãžã§ã³3.7ã®ãªãªãŒã¹ã§ã¯ã init.dã®rabbimq-serverã¹ã¯ãªãããå®å šã«æåŠãããŸããã æäœïŒãŠãµã®ã®ããŒãžã§ã³ã«é¢ä¿ãªãå¶åŸ¡ã³ãã³ãã®åäžæ§ïŒãšããŒãžã§ã³éã®ã¹ã ãŒãºãªç§»è¡ãä¿é²ããããã«ãåæ§ç¯ããããŠãµã®ã§ã¯ãã®ã¹ã¯ãªããã䜿çšãç¶ããŸãã çå®ã¯åã³ã§ããããŒããŒã·ã§ã³åŸã®ãã°ã®åœåã¡ã«ããºã ã3.7ã§å€æŽãããããã rotate_logs_rabbitmqïŒïŒããããã«å€æŽããŸã ã
mv ${RABBITMQ_LOG_BASE}/$NODENAME.log.0 ${RABBITMQ_LOG_BASE}/$NODENAME.log.$(date +%Y%m%d-%H%M%S).back mv ${RABBITMQ_LOG_BASE}/$(echo $NODENAME)_upgrade.log.0 ${RABBITMQ_LOG_BASE}/$(echo $NODENAME)_upgrade.log.$(date +%Y%m%d-%H%M%S).back find ${RABBITMQ_LOG_BASE}/http_api/*.log.* -maxdepth 0 -type f ! -name "*.gz" | xargs -i gzip --force {} find ${RABBITMQ_LOG_BASE}/*.log.* -maxdepth 0 -type f ! -name "*.gz" | xargs -i gzip --force {} find ${RABBITMQ_LOG_BASE}/*.gz -type f -mtime +30 -delete find ${RABBITMQ_LOG_BASE}/http_api/*.gz -type f -mtime +30 -delete
ãã°ã®ããŒããŒã·ã§ã³çšã®ã¿ã¹ã¯ãcrontabã«è¿œå ããã ãã§ã-ããšãã°ãæ¯æ¥23-00ïŒ
00 23 * * *ã/ rabbitmq-main / init.d / rabbitmq-server rotate-logs
ããŠãµã®ãã¡ãŒã ãã®éçšã®ãã¬ãŒã ã¯ãŒã¯ã§è§£æ±ºããå¿ èŠãããã¿ã¹ã¯ã«ç§»ããŸãããã
- ãŠãµã®ãšã³ãã£ãã£ã®æäœ-ãŠãµã®ãšã³ãã£ãã£ã®äœæ/åé€ïŒekschendzheyããã¥ãŒããã€ã³ããã·ã£ãã«ããŠãŒã¶ãŒãããªã·ãŒã ããã«ããããè¡ãããšã¯ããã¹ãŠã®ã¯ã©ã¹ã¿ãŒã¯ã©ã¹ã¿ãŒã§ãŸã£ããåãã§ãã
- ããã¯ã¢ããã¯ã©ã¹ã¿ã«åãæ¿ããåŸãããã¯ã¢ããã¯ã©ã¹ã¿ã«æ®ã£ãã¡ãã»ãŒãžãçŸåšã®ã¯ã©ã¹ã¿ã«è»¢éããå¿ èŠããããŸãã
- ãã¹ãŠã®åç·ã®ãã¹ãŠã®ã¯ã©ã¹ã¿ãŒã®æ§æã®ããã¯ã¢ããã³ããŒãäœæãã
- Contourå ã®ã¯ã©ã¹ã¿ãŒæ§æã®å®å šåæ
- ãŠãµã®ã®åæ¢/éå§
- çŸåšã®ããŒã¿ãããŒãåæããã«ã¯ïŒãã¹ãŠã®ã¡ãã»ãŒãžãéä¿¡ããéä¿¡ããå Žåã¯ã©ãã«éä¿¡ãããããŸãã¯...
- ä»»æã®åºæºã§ééã¡ãã»ãŒãžãèŠã€ããŠãã£ãããã
æäŸãããŠããéåžžã®rabbitmq_managementãã©ã°ã€ã³ã䜿çšããåç©åã®æäœãšé³å£°ä»ãã¿ã¹ã¯ã®ãœãªã¥ãŒã·ã§ã³ã¯å¯èœã§ãããéåžžã«äžäŸ¿ã§ãã ãã®ãããããŸããŸãªãŠãµã®å šäœãå¶åŸ¡ããã·ã§ã«ãéçºããã³å®è£ ãããŠããŸãã