±à¼ÍƼö: |
±¾ÎÄÀ´×ÔÓÚÍøÂ磬ÕâÆªÎÄÕ½«´øÄṳ́ÉÏ×î¼Ñ¼Ü¹¹Ö®Â㬲¢Ò»Â·ÎªÄã½²½â»ùÓÚDockerºÍKubernests´î½¨Ò»¸ö×î¿áµÄ¼Ü¹¹Óöµ½µÄÎÊÌâ¡£ |
|
Èí¼þ¿ª·¢ÁìÓòÔÚDockerºÍKubernetesʱ´úÊÇÈçºÎ±ä»¯µÄ£¿
ÊÇ·ñÓпÉÄÜʹÓÃÕâЩ¼¼Êõ´î½¨Ò»ÀÍÓÀÒݵļܹ¹£¿ µ±ËùÓж«Î÷¶¼±»¡°´ò°ü¡±½øÈÝÆ÷ÖÐʱ£¬ÊÇ·ñÓпÉÄÜͳһ¿ª·¢¼°¼¯³ÉµÄÁ÷³Ì£¿
ÕâЩ¾ö²ßµÄÐèÇóÊÇʲô£¿ ËüÃÇ»á´øÀ´Ê²Ã´ÏÞÖÆ£¿ ËüÃÇ»áÈÿª·¢ÈËÔ±¸üÇáËÉ£¬»òÕßÏà·´£¬·´¶øÔö¼Ó²»±ØÒªµÄ¸´ÔÓÐÔÂð£¿

ÏÖÔÚÊÇʱºòÒÔÎı¾ºÍÔʼ²åͼ·½Ê½²ûÃ÷ÕâЩÒÔ¼°ÆäËûÎÊÌâÁË£¡
ÕâÆªÎÄÕ½«´øÄṳ́ÉÏ´ÓÏÖʵÉú»îµ½¿ª·¢Á÷³ÌÔÙµ½¼Ü¹¹×îºó»Øµ½ÏÖʵÉú»îµÄÂọ́¬²¢Ò»Â·ÎªÄú½â´ðÔÚÕâЩͣ¿¿Õ¾µãÉÏÓöµ½µÄ×îÖØÒªÎÊÌâ¡£
ÎÒÃǽ«ÊÔͼȷ¶¨Ò»Ð©Ó¦¸Ã³ÉΪ¼Ü¹¹Ò»²¿·ÖµÄ×é¼þºÍÔÔò£¬²¢ÑÝʾһЩʾÀý£¬µ«²»»á½øÈëÆäʵÏÖÁìÓò¡£
ÎÄÕµĽáÂÛ¿ÉÄÜ»áÈÃÄãÐÄ·³ÒâÂÒ£¬»òÕßÎޱȿªÐÄ£¬ÕâÒ»Çж¼È¡¾öÓÚÄãµÄ¾Ñé¡¢Äã¶ÔÕâÈýÕ¹ÊʵĿ´·¨£¬ÉõÖÁÔÚÔĶÁ±¾ÎÄʱÄãµÄÐÄÇé¡£
ÔÚÏÂÃæ¿ÉÒÔ·¢±íÆÀÂÛ»òÌá³öÎÊÌ⣬ÈÃÎÒÖªµÀÄúµÄÏë·¨£¡
´ÓÏÖʵÉú»îµ½¿ª·¢¹¤×÷Á÷

ÔÚ´ó¶àÊýÇé¿öÏ£¬ÎÒËù¼û¹ýµÄ»òÕߺÜÈÙÐҴµÄËùÓпª·¢Á÷³Ì¶¼Ö»ÊÇΪÁËÒ»¸ö¼òµ¥µÄÄ¿±ê¡ª¡ªËõ¶Ì´Ó¸ÅÄî²úÉúµ½½»¸¶Éú²ú»·¾³Ö®¼äµÄʱ¼ä¼ä¸ô£¬Í¬Ê±±£³ÖÒ»¶¨³Ì¶ÈµÄ´úÂëÖÊÁ¿¡£
Ïë·¨µÄºÃ»µÎ޹ؽôÒª¡£ ÒòΪÔã¸âµÄÏë·¨À´Ò²´Ò´Ò£¬È¥Ò²´Ò´Ò¡ª¡ªÄãÖ»Òª³¢ÊÔһϣ¬¾Í¿ÉÒÔ°ÑËüÃǶª½ø¹ÊÖ½¶ÑÀï¡£
ÕâÀïÖµµÃÒ»ÌáµÄÊÇ£¬´ÓÒ»¸öÔã¸âµÄÏë·¨»Ø¹öÊÇ¿ÉÒÔÂäÔÚ×Ô¶¯»¯ÉèÊ©µÄ¼ç°òÉϵģ¬Õâ¿ÉÒÔ×Ô¶¯»¯ÄúµÄ¹¤×÷Á÷³Ì¡£
³ÖÐø¼¯³ÉºÍ½»¸¶¿´ÆðÀ´ÏñÊÇÈí¼þ¿ª·¢ÁìÓòµÄ¾ÈÃüµ¾²Ý¡£ ¾¿¾¹»¹ÓÐʲô±ÈÕâ¸ü¼òµ¥ÄØ£¿ Èç¹ûÄãÓÐÒ»¸öÏë·¨£¬ÄãÓдúÂ룬ÄÇô¾ÍÈ¥×ö°É£¡
Èç¹û²»ÊÇÇá΢µÄÎÊÌ⣬Õ⽫ÊÇÍêÃÀÎÞ覵ġª¡ª¼¯³ÉºÍ½»¸¶¹ý³ÌÏà¶Ô¶øÑÔÄÑÒÔ¶ÀÁ¢ÓÚ¹«Ë¾ÌØÓеļ¼ÊõºÍÒµÎñÁ÷³ÌÖ®Íâ¡£
È»¶ø£¬¾¡¹ÜÈÎÎñ¿´ÆðÀ´ºÜ¸´ÔÓ£¬µ«ÔÚÉú»îÖв»Ê±»á³öÏÖһЩÓÅÐãµÄÏë·¨£¬ÕâЩÏë·¨¿ÉÒÔÈÃÎÒÃÇ£¨µ±È»£¬ÎÒ×Ô¼ºÊÇÈ·¶¨µÄ£©¸ü½Ó½ü¹¹½¨Ò»¸öÎÞ覴õIJ¢ÇÒ¼¸ºõ¿ÉÒÔÔÚÈκγ¡ºÏʹÓõĻúÖÆ¡£
¶ÔÎÒÀ´Ëµ£¬ÀëÕâÑùµÄ»úÖÆ×î½üµÄ²½ÖèÊÇDockerºÍKubernetes£¬ËûÃǵijéÏó²ã´ÎºÍ˼Ïë·½·¨Ê¹ÎÒÈÏΪÏÖÔÚ¿ÉÒÔÓü¸ºõÏàͬµÄ·½·¨½â¾ö80£¥µÄÎÊÌâ¡£
ÆäÓàµÄ20£¥µÄÎÊÌâÏÔÈ»»¹ÔÚÔµØÌ¤²½£¬µ«ÕýÒòÈç´ËÄã²Å¿ÉÒÔ½«Äã·¢×ÔÄÚÐĵĴ´ÒâÌ츳¾Û½¹ÔÚÓÐȤµÄ¹¤×÷ÉÏ£¬¶ø²»ÊÇ´¦ÀíÖØ¸´µÄÀýÐй«Ê¡£
Ö»ÒªÕÕÁÏÒ»´Î¡°¼Ü¹¹¿ò¼Ü¡±£¬¾Í¿ÉÒÔÈÃÄúÍüµôÒѾ½â¾öµÄ80£¥ÎÊÌâ¡£
ÕâÒ»ÇÐÒâζ×Åʲô£¿ÒÔ¼°DockerÊÇÈçºÎ½â¾ö¿ª·¢¹¤×÷Á÷³ÌµÄÎÊÌâµÄ£¿ ÈÃÎÒÃÇ¿´Ò»¸ö¼òµ¥µÄ¹ý³Ì£¬Õâ¶ÔÓÚ´ó¶àÊý¹¤×÷»·¾³À´ËµÒ²×ã¹»ÁË£º 
ͨ¹ýÊʵ±µÄ·½·¨£¬Äú¿ÉÒÔ×Ô¶¯»¯²¢ÕûºÏÉÏÃæÐòÁÐͼÖеÄËùÓÐÄÚÈÝ£¬²¢ÔÚδÀ´¼¸¸öÔÂÄÚ½«ÆäÅ×Ö®ÄÔºó¡£
ÉèÖÿª·¢»·¾³

Ò»¸öÏîĿӦ¸Ã°üº¬Ò»¸ödocker-compose.ymlÎļþ£¬Õâ¿ÉÒÔÈÃÄãʡȥ¿¼ÂÇÔÚ±¾µØ»úÆ÷ÉÏÔËÐÐÓ¦ÓóÌÐò/·þÎñÐèÒª×öЩʲôÒÔ¼°ÈçºÎ²Ù×÷µÄÎÊÌâ¡£
Ò»¸ö¼òµ¥µÄÃüÁîdocker-compose upÓ¦¸ÃÆô¶¯ÄúµÄÓ¦ÓóÌÐò¼°ÆäËùÓÐÒÀÀµÏʹÓÃfixturesÌî³äÊý¾Ý¿â£¬ÉÏ´«ÈÝÆ÷Äڵı¾µØ´úÂ룬ÆôÓôúÂë¸ú×ÙÒԱ㼴ʱ±àÒ룬²¢×îÖÕÔÚÆÚÍûµÄ¶Ë¿Ú¿ªÊ¼ÏìÓ¦ÇëÇó¡£
¼´Ê¹ÔÚÉèÖÃзþÎñʱ£¬ÄúÒ²²»±Øµ£ÐÄÈçºÎÆô¶¯¡¢ÔÚÄÄÀïÌá½»¸ü¸Ä»òʹÓÃÄĸö¿ò¼Ü¡£ ËùÓÐÕâЩ¶¼Ó¦¸ÃÌáǰÔÚ±ê׼˵Ã÷ÖÐÃèÊö£¬²¢ÓÉÕë¶Ô²»Í¬ÉèÖõķþÎñÄ£°åÖ¸¶¨£ºÇ°¶Ë¡¢ºó¶ËºÍworker¡£
×Ô¶¯»¯²âÊÔ

ËùÓÐÄãÏëÖªµÀµÄ¹ØÓÚ¡°ºÚÏ»×Ó¡±£¨ÖÁÓÚΪʲôÎÒ°ÑÈÝÆ÷³ÆÖ®ÎªÈç´ËµÄ¸ü¶àÐÅÏ¢£¬½«ÔÚÎÄÕÂÖеÄÉԺ󲿷ֲûÃ÷£©µÄÇé¿öÊÇ£¬ËüÀïÃæµÄÒ»Çж¼ÍêºÃÎÞËð£¬ÊÇ»ò·ñ£¬1»ò0¡£Äú¿ÉÒÔÔÚÈÝÆ÷ÄÚ²¿Ö´ÐÐÓÐÏÞÊýÁ¿µÄÃüÁ¶ødocker-compose.ymlÃèÊöÁËËüµÄËùÓÐÒÀÀµ¹ØÏµ£¬Äú¿ÉÒÔÇáËÉ×Ô¶¯»¯ºÍÕûºÏÕâЩ²âÊÔ£¬¶ø²»±Ø¹ý·Ö¹Ø×¢ÊµÏÖϸ½Ú¡£
±ÈÈ磬ÏñÕâÑù£¡
ÔÚÕâÀ²âÊÔ²»½öÒâζ×ŵ¥Ôª²âÊÔ£¬»¹°üÀ¨¹¦ÄܲâÊÔ¡¢¼¯³É²âÊÔ¡¢£¨´úÂëÑùʽ£©²âÊԺ͸±±¾¡¢¼ì²é¹ýʱµÄÒÀÀµ¹ØÏµÒÔ¼°ÒÑʹÓÃÈí¼þ°üµÄÐí¿ÉÖ¤Õý³£Óë·ñµÈµÈ¡£
¹Ø¼üÊÇËùÓÐÕâЩ¶¼Ó¦¸Ã·â×°ÔÚDocker¾µÏñÖС£
ϵͳ½»¸¶
 ÎÞÂÛÔÚºÎʱºÎµØÏë°²×°ÄúµÄÏîÄ¿¶¼ÎÞËùν¡£ ½á¹û¾ÍÏñ°²×°½ø³ÌÒ»Ñù£¬Ó¦¸ÃʼÖÕÈçÒ»¡£ ÖÁÓÚÄúÒª°²×°µÄÊÇÕû¸öÉú̬ϵͳµÄÄĸö²¿·Ö»òÕßÄú½«´ÓÄĸöGit²Ö¿â»ñµÃ´úÂëҲûÓÐÇø±ð¡£
ÕâÀï×îÖØÒªµÄ×é¼þÊÇÃݵÈÐÔ¡£ ΨһӦ¸ÃÖ¸¶¨µÄÊÇ¿ØÖư²×°¹ý³ÌµÄ±äÁ¿¡£
ÒÔÏÂÊÇÎÒÔÚ½â¾öÕâ¸öÎÊÌâʱÏ൱ÓÐЧµÄËã·¨£º
1.´ÓËùÓÐDockerfilesÊÕ¼¯¾µÏñ£¨ÀýÈçÏñÕâÑù£©
2.ʹÓÃÔªÏîÄ¿£¬Í¨¹ýKube API½«ÕâЩ¾µÏñ½»¸¶¸øKubernetes¡£
Æô¶¯½»¸¶Í¨³£ÐèÒª¼¸¸öÊäÈë²ÎÊý£º
Kube API¶Ëµã
Ò»¸ö¡°»úÃÜ¡±¶ÔÏó£¬Òò²»Í¬µÄ»·¾³¶øÒ죨±¾µØ/²âÊÔ/Ô¤·¢²¼/Éú²ú£©
ҪչʾµÄϵͳÃû³ÆÒÔ¼°Õë¶ÔÕâЩϵͳµÄDocker¾µÏñµÄ±êÇ©£¨ÔÚÉÏÒ»²½ÖлñÈ¡£©
×÷Ϊһ¸öº¸ÇËùÓÐϵͳºÍ·þÎñµÄÔªÏîÄ¿µÄÀý×Ó£¨»»¾ä»°Ëµ£¬ÊÇÒ»¸öÃèÊöÉú̬ϵͳÈçºÎ±àÅÅÒÔ¼°ÈçºÎ½»¸¶¸üеÄÏîÄ¿£©£¬ÎÒ¸üÔ¸ÒâʹÓÃAnsible
playbooks£¬Í¨¹ýÕâ¸öÄ£¿éÀ´ÓëKube API¼¯³É¡£ È»¶ø£¬¸´ÔÓµÄ×Ô¶¯»¯¿ÉÒԲο¼ÆäËûÑ¡ÏÎÒÉÔºó½«ÏêϸÌÖÂÛ×Ô¼ºµÄÑ¡Ôñ¡£
µ«ÊÇ£¬Äú±ØÐ뿼ÂÇÖÐÐÄ»¯/ͳһµÄ¹ÜÀí¼Ü¹¹µÄ·½Ê½¡£ ÕâÑùÒ»¸ö·½Ê½¿ÉÒÔÈÃÄú·½±ã¡¢Í³Ò»µØ¹ÜÀíËùÓзþÎñ/ϵͳ£¬²¢Ïû³ý¼´½«µ½À´µÄÖ´ÐÐÀàËÆ¹¦Äܵļ¼ÊõºÍϵͳ´ÔÁÖ¿ÉÄÜ´øÀ´µÄÈκθ´ÔÓÇé¿ö¡£
ͨ³££¬ÐèÒªÈçϵݲװ»·¾³£º
1.¡°²âÊÔ¡±¡ª¡ªÓÃÓÚ¶Ôϵͳ½øÐÐһЩÊÖ¶¯¼ì²é»òµ÷ÊÔ
2.¡°Ô¤·¢²¼¡±¡ª¡ªÓÃÓÚ½üºõʵʱµÄ»·¾³ÒÔ¼°ÓëÍⲿϵͳµÄ¼¯³É£¨Í¨³£Î»ÓÚDMZ¶ø²»ÊDzâÊÔ»·¾³£©
3.¡°Éú²ú¡±¡ª¡ª×îÖÕÓû§µÄʵ¼Ê»·¾³
¼¯³ÉºÍ½»¸¶µÄÁ¬ÐøÐÔ

Èç¹ûÄãÓÐÒ»¸öͳһµÄ·½Ê½À´²âÊÔDocker¾µÏñ¡ª¡ª»òÕß¡°ºÚºÐ×Ó¡±¡ª¡ªÄã¿ÉÒÔ¼ÙÉèÕâЩ²âÊÔ½á¹û¿ÉÒÔÈÃÄãÎÞ·ìµØ£¨²¢ÇÒÎÊÐÄÎÞÀ¢£©½«¹¦ÄÜ·ÖÖ§¼¯³Éµ½ÄãµÄGit²Ö¿âµÄÉÏÓλòÖ÷·ÖÖ§ÖС£
Ò²Ðí£¬ÕâÀïΨһµÄ½»Ò×¶Ï·Æ÷ÊǼ¯³ÉºÍ½»¸¶µÄ˳Ðò¡£Èç¹ûûÓз¢Ðа棬ÄÇôÈçºÎͨ¹ýÒ»×é²¢ÐеŦÄÜ·ÖÖ§×èÖ¹Ò»¸öϵͳÉϵġ°¾ºÕùÌõ¼þ¡±£¿
Òò´Ë£¬Ö»ÓÐÔÚûÓоºÕùµÄÇé¿öϲÅÄÜ¿ªÊ¼Õâ¸ö¹ý³Ì£¬·ñÔò¡°¾ºÕùÌõ¼þ¡±»áÝÓÈÆÄÔº££º
1.³¢ÊÔ½«¹¦ÄÜ·ÖÖ§¸üе½ÉÏÓΣ¨git rebase/ merge£©
2.´ÓDockerfiles¹¹½¨¾µÏñ
3.²âÊÔËùÓй¹½¨µÄ¾µÏñ
4.¿ªÊ¼²¢µÈ´ý£¬Ö±µ½ÏµÍ³½»¸¶Á˹¹½¨×Ô²½Öè2µÄ¾µÏñ
5.Èç¹ûÉÏÒ»²½Ê§°Ü£¬Ôò½«Éú̬ϵͳ»Ø¹öµ½Ö®Ç°µÄ״̬
6.ÔÚÉÏÓκϲ¢¹¦ÄÜ·ÖÖ§²¢½«Æä·¢Ë͵½´æ´¢¿â
ÔÚÈκβ½ÖèÖеÄÈκÎʧ°Ü¶¼Ó¦ÖÕÖ¹½»¸¶¹ý³Ì£¬²¢½«ÈÎÎñ·µ»Ø¸ø¿ª·¢ÈËÔ±ÒÔ½â¾ö´íÎó£¬ÎÞÂÛÊÇʧ°ÜµÄ²âÊÔ»¹ÊǺϲ¢³åÍ»¡£
Äú¿ÉÒÔʹÓô˹ý³ÌÀ´²Ù×÷¶à¸ö´æ´¢¿â¡£Ö»ÐèÒ»´ÎΪËùÓд洢¿âÖ´ÐÐÿ¸ö²½Ö裨²½Öè1ÓÃÓÚ´úÂë¿âAºÍB£¬²½Öè2ÓÃÓÚ´úÂë¿âAºÍBµÈ£©£¬¶ø²»ÊǶÔÿ¸öµ¥¶ÀµÄ´æ´¢¿âÖØ¸´Ö´ÐÐÕû¸öÁ÷³Ì£¨²½Öè1-6ÓÃÓÚ´úÂë¿âA
£¬²½Öè1-6ÓÃÓÚ´úÂë¿âB£¬µÈµÈ£©¡£
´ËÍ⣬KubernetesÔÊÐíÄú·ÖÅú´ÎµØÍƳö¸üÐÂÒÔ½øÐи÷ÖÖAB²âÊԺͷçÏÕ·ÖÎö¡£ KubernetesÊÇͨ¹ý·ÖÀë·þÎñ£¨½ÓÈëµã£©ºÍÓ¦ÓóÌÐòÔÚÄÚ²¿ÊµÏֵġ£Äú¿ÉÒÔʼÖÕÒÔËùÐèµÄ±ÈÀýƽºâ×é¼þµÄоɰ汾£¬ÒÔ´Ù½øÎÊÌâµÄ·ÖÎö²¢ÎªÇ±ÔڵĻعöÌṩ;¾¶¡£
ϵͳ»Ø¹ö
¼Ü¹¹¿ò¼ÜµÄÇ¿ÖÆÐÔÒªÇóÖ®Ò»ÊÇÄܹ»»Ø¹öÈκβ¿Êð¡£·´¹ýÀ´£¬ÕâÓÖÐèҪһЩÏÔʽºÍÒþʽµÄϸ΢²î±ð¡£ÒÔÏÂÊÇÆäÖÐ×îÖØÒªµÄһЩÊÂÏ
1.·þÎñÓ¦¸ÃÄܹ»ÉèÖÃÆä»·¾³ÒÔ¼°»Ø¹ö¸ü¸Ä¡£ÀýÈ磬Êý¾Ý¿âÇ¨ÒÆ¡¢RabbitMQ
schemaµÈµÈ¡£
2.Èç¹ûÎÞ·¨»Ø¹ö»·¾³£¬Ôò¸Ã·þÎñÓ¦¸ÃÊǶà̬µÄ£¬²¢Ö§³Ö¾É°æ±¾ºÍа汾µÄ´úÂë¡£ÀýÈ磺Êý¾Ý¿âÇ¨ÒÆ²»Ó¦¸ÃÖжϾɰ汾µÄ·þÎñ£¨Í¨³£ÊÇ2»ò3¸öÒÔǰµÄ°æ±¾£©
3.Ïòºó¼æÈÝÈκηþÎñ¸üС£Í¨³££¬ÕâÊÇAPI¼æÈÝÐÔ£¬ÏûÏ¢¸ñʽµÈ¡£
ÔÚKubernetes¼¯ÈºÖлعö״̬Ï൱¼òµ¥£¨ÔËÐÐkubectl rollout undo deployment/some-deployment£¬Kubernetes½«»Ö¸´ÏÈǰµÄ¡°¿ìÕÕ¡±£©£¬µ«ÊÇΪÁËÈô˹¦ÄÜÉúЧ£¬ÄúµÄÔªÏîĿӦ°üº¬Óйش˿ìÕÕµÄÐÅÏ¢¡£µ«ÊǸüΪ¸´ÔӵĽ»¸¶»Ø¹öËã·¨ÈÃÈËÍû¶øÉú磬¾¡¹ÜËüÃÇÓÐʱÊDZØÐèµÄ¡£
ÒÔÏÂÊÇ¿ÉÒÔ´¥·¢»Ø¹ö»úÖÆµÄÄÚÈÝ£º
1.·¢²¼ºóÓ¦ÓóÌÐò´íÎóµÄ¸ß±ÈÀý
2.À´×Թؼü¼à¿ØµãµÄÐźÅ
3.ʧ°ÜµÄðÑ̲âÊÔ
4.ÊÖ¶¯Ä£Ê½¡ª¡ªÈËΪÒòËØ
È·±£ÐÅÏ¢°²È«ºÍÉó¼Æ
ûÓÐÒ»¸ö¹¤×÷Á÷³Ì¿ÉÒÔÆæ¼£°ãµØ¡°´î½¨¡±µ¶Ç¹²»ÈëµÄ°²È«ÐÔ²¢±£»¤ÄúµÄÉú̬ϵͳÃâÊÜÍⲿºÍÄÚ²¿Íþв£¬Òò´ËÄúÐèҪȷ±£ÄúµÄ¼Ü¹¹¿ò¼ÜÊÇÔÚÿ¸ö¼¶±ðºÍËùÓÐ×ÓϵͳÀï°´ÕÕ¹«Ë¾µÄ±ê×¼ºÍ°²È«²ßÂÔÖ´Ðеġ£
ÎÒ½«ÔÚºóÃæµÄ¹ØÓÚ¼à¿ØºÍ¸æ¾¯µÄÕ½ÚÌÖÂÛÓйؽâ¾ö·½°¸µÄËùÓÐÈý¸ö¼¶±ð£¬ËüÃDZ¾ÉíÒ²ÊÇϵͳÍêÕûÐԵĹؼü¡£
KubernetesÓµÓÐÒ»Ì×Á¼ºÃµÄÕë¶Ô·ÃÎÊ¿ØÖÆ¡¢ÍøÂç²ßÂÔ¡¢Ê¼þÉó¼ÆÒÔ¼°ÆäËûÓëÐÅÏ¢°²È«Ïà¹ØµÄÇ¿´ó¹¤¾ßµÄÄÚÖûúÖÆ£¬¿ÉÓÃÓÚ¹¹½¨Ò»¸öÁ¼ºÃµÄ·À»¤±ß½ç£¬ÒÔµÖÓùºÍ×èÖ¹¹¥»÷¼°Êý¾Ýй¶¡£
´Ó¿ª·¢Á÷³Ìµ½¼Ü¹¹
Ó¦¸ÃÈÏÕæ¿¼Âǽ«¿ª·¢Á÷³ÌÓëÉú̬ϵͳ½ôÃܼ¯³ÉµÄÏë·¨¡£½«ÕâÖÖ¼¯³ÉµÄÐèÇóÌí¼Óµ½¼Ü¹¹µÄ´«Í³ÐèÇ󼯣¨µ¯ÐÔ¡¢¿ÉÉìËõÐÔ¡¢¿ÉÓÃÐÔ¡¢¿É¿¿ÐÔ¡¢µÖÓùÍþвµÈ£©ÖУ¬¿ÉÒÔ´ó´óÌá¸ß¼Ü¹¹¿ò¼ÜµÄ¼ÛÖµ¡£
ÕâÊÇÖÁ¹ØÖØÒªµÄÒ»¸ö·½Ã棬Óɴ˵¼Ö³öÏÖÁËÒ»¸öÃûΪ¡°DevOps¡±£¨¿ª·¢ÔËά£©µÄ¸ÅÄÕâÊÇʵÏÖ»ù´¡ÉèÊ©È«Ãæ×Ô¶¯»¯²¢ÓÅ»¯µÄºÏÀí²½Öè¡£
µ«ÊÇ£¬Èç¹ûÓÐÒ»¸öÉè¼ÆÁ¼ºÃµÄ¼Ü¹¹ºÍ¿É¿¿µÄ×Óϵͳ£¬DevOpsÈÎÎñ¿ÉÒÔ±»×îС»¯¡£
΢·þÎñ¼Ü¹¹
ûÓбØÒªÏêϸÌÖÂÛÃæÏò·þÎñµÄ¼Ü¹¹¡ª¡ªSOAµÄºÃ´¦£¬°üÀ¨ÎªÊ²Ã´·þÎñÓ¦¸ÃÊÇ¡°Î¢¡±µÄ¡£ ÎÒÖ»»á˵£¬Èç¹ûÄã¾ö¶¨Ê¹ÓÃDockerºÍKubernetes£¬ÄÇôÄãºÜ¿ÉÄÜÀí½â£¨²¢½ÓÊÜ£©µ¥ÌåÓ¦Óüܹ¹ÊǺÜÀ§ÄÑÉõÖÁ¸ù×ÓÉϾÍÊÇ´íÎóµÄ¡£
DockerÖ¼ÔÚÔËÐÐÒ»¸ö½ø³Ì²¢³Ö¾Ã»¯£¬DockerÈÃÎÒÃǾ۽¹ÓÚDDD¿ò¼Ü£¨ÁìÓòÇý¶¯¿ª·¢£©ÄÚ½øÐÐ˼¿¼¡£
ÔÚDockerÖУ¬´ò°üºóµÄ´úÂë±»ÊÓΪ¾ßÓÐһЩ¹«¿ª¶Ë¿ÚµÄºÚºÐ×Ó¡£
Éú̬ϵͳµÄ¹Ø¼ü×é¼þºÍ½â¾ö·½°¸
¸ù¾ÝÎÒÔÚÉè¼Æ¾ßÓиü¸ß¿ÉÓÃÐԺͿɿ¿ÐÔµÄϵͳ·½ÃæµÄ¾Ñ飬Óм¸¸ö×é¼þ¶ÔÓÚ΢·þÎñµÄÔËάÊÇÖÁ¹ØÖØÒªµÄ£¬ÉÔºóÎÒ»áÁгö²¢ÌÖÂÛÕâЩ×é¼þ£¬ÎÒ½«ÔÚKubernetes»·¾³ÖÐÒýÓÃËüÃÇ£¬Ò²¿ÉÒԲο¼ÎÒµÄÇåµ¥×÷ΪÆäËüÈÎºÎÆ½Ì¨µÄ¼ì²éµ¥¡£
Èç¹ûÄ㣨ÏñÎÒÒ»Ñù£©»áµÃ³öÕâÑùµÄ½áÂÛ£¬¼´½«ÕâЩ×é¼þ×÷Ϊ³£¹æµÄKubernetes·þÎñÀ´¹ÜÀí£¬ÄÇôÎÒ½¨ÒéÄãÔÚ³ý¡°Éú²ú»·¾³¡±Ö®ÍâµÄµ¥¶À¼¯ÈºÖÐÔËÐÐËüÃÇ¡£
±ÈÈç¡°Ô¤·¢²¼¡±¼¯Èº£¬ÒòΪËü¿ÉÒÔÔÚÉú²ú»·¾³²»Îȶ¨²¢ÇÒÄãÆÈÇÐÐèÒªÆä¾µÏñ¡¢´úÂë»ò¼à¿Ø¹¤¾ßµÄÀ´Ô´Ê±½ÚÊ¡ÄãµÄʱ¼ä¡£
¿ÉÒÔ˵£¬Õâ½â¾öÁ˼¦ºÍ¼¦µ°µÄÎÊÌâ¡£
Éí·ÝÈÏÖ¤

ÏñÍù³£Ò»Ñù£¬ËüʼÓÚ·ÃÎÊ¡ª¡ª·þÎñÆ÷¡¢ÐéÄâ»ú¡¢Ó¦ÓóÌÐò¡¢°ì¹«ÊÒÓʼþµÈ¡£ Èç¹ûÄúÊÇ»òÏë³ÉΪÖ÷ÒªµÄÆóҵƽ̨£¨IBM¡¢Google¡¢Microsoft£©Ö®Ò»µÄ¿Í»§£¬Ôò·ÃÎÊÎÊÌ⽫Óɹ©Ó¦É̵Äij¸ö·þÎñ´¦Àí¡£
µ«ÊÇ£¬Èç¹ûÄúÏëÓµÓÐ×Ô¼ºµÄ½â¾ö·½°¸£¬ÄѵÀÖ»ÄÜÓÉÄú²¢ÔÚÄúµÄÔ¤ËãÖ®ÄÚ½øÐйÜÀí£¿
´ËÁбí¿É°ïÖúÄúÈ·¶¨Êʵ±µÄ½â¾ö·½°¸²¢¹ÀËãÉèÖúÍά»¤ËùÐèµÄ¹¤×÷Á¿¡£ µ±È»£¬ÄúµÄÑ¡Ôñ±ØÐë·ûºÏ¹«Ë¾µÄ°²È«Õþ²ß²¢¾ÐÅÏ¢°²È«²¿ÃÅÅú×¼¡£
×Ô¶¯»¯·þÎñÅäÖÃ

¾¡¹ÜKubernetesÔÚÎïÀí»úÆ÷/ÔÆÐéÄâ»ú£¨Docker¡¢kubelet¡¢kube proxy¡¢etcd¼¯Èº£©ÉÏÖ»ÐèÒªÉÙÁ¿×é¼þ£¬µ«¶ÔÓÚлúÆ÷µÄÌí¼ÓºÍ¼¯Èº¹ÜÀíÈÔÈ»ÐèÒª×Ô¶¯»¯¡£
ÒÔÏÂÊÇһЩ¼òµ¥µÄ·½·¨£º
1.KOPS¡ª¡ª´Ë¹¤¾ßÔÊÐíÄúÔÚÁ½¸öÔÆ¹©Ó¦ÉÌ£¨AWS»òGCE£©Ö®Ò»Éϰ²×°¼¯Èº
2.Teraform¡ª¡ªÕâ¿ÉÒÔÈÃÄú¹ÜÀíÈκλ·¾³µÄ»ù´¡ÉèÊ©£¬²¢×ñÑIAC£¨»ù´¡¼ÜÉèÊ©¼´´úÂ룩µÄ˼Ïë
3.Ansible¡ª¡ªÓÃÓÚÈκÎÀàÐ͵ÄͨÓÃ×Ô¶¯»¯¹¤¾ß
¾Í¸öÈ˶øÑÔ£¬ÎÒ¸üϲ»¶µÚÈý¸öÑ¡Ï´øÓÐÒ»¸öKubernetesµÄ¼¯³ÉÄ£¿é£©£¬ÒòΪËüÔÊÐíÎÒʹÓ÷þÎñÆ÷ºÍKubernetes¶ÔÏó²¢Ö´ÐÐÈκÎÀàÐ͵Ä×Ô¶¯»¯¡£
µ«ÊÇ£¬Ã»ÓÐʲôÄÜ×èÖ¹ÄúʹÓÃTeraform¼°ÆäKubernetesÄ£¿é¡£ KOPSÔÚ¡°Âã»ú¡±·½ÃæÐ§¹û²»¼Ñ£¬µ«ËüÈÔÈ»ÊÇÓëAWS/GCEÒ»ÆðʹÓõľø¼Ñ¹¤¾ß£¡
Git´úÂë¿âºÍÈÎÎñ¸ú×ÙÆ÷

¶ÔÓÚÈκÎDockerÈÝÆ÷£¬Ê¹ÆäÈÕÖ¾¿É·ÃÎʵÄΨһ·½·¨Êǽ«ËüÃÇдÈëÕýÔÚÈÝÆ÷ÖÐÔËÐеĸù½ø³ÌµÄSTDOUT»òSTDERR£¬·þÎñ¿ª·¢ÈËÔ±²¢²»¹ØÐÄÈÕÖ¾Êý¾Ý½ÓÏÂÀ´µÄ±ä»¯£¬¶øÖ÷ÒªÊÇËüÃÇÓ¦¸ÃÔÚ±ØÒªÊ±¿ÉÓ㬲¢ÇÒ×îºÃ°üº¬¹ýȥij¸öµãµÄ¼Ç¼¡£Âú×ãÕâЩÆÚÐíµÄËùÓÐÔðÈÎÔÚÓÚKubernetesÒÔ¼°Ö§³ÖÉú̬ϵͳµÄ¹¤³Ìʦ¡£
ÔÚ¹Ù·½ÎĵµÖУ¬Äú¿ÉÒÔÕÒµ½¹ØÓÚ´¦ÀíÈÕÖ¾µÄ»ù±¾£¨ºÍºÃµÄ£©²ßÂÔµÄ˵Ã÷£¬Õ⽫ÓÐÖúÓÚÄúÑ¡ÔñÓÃÓھۺϺʹ洢´óÁ¿Îı¾Êý¾ÝµÄ·þÎñ¡£
ÔÚÕë¶ÔÈÕ־ϵͳµÄÍÆ¼ö·þÎñÖУ¬Í¬Ò»ÎĵµÌáµ½fluentdÓÃÓÚÊÕ¼¯Êý¾Ý£¨ÔÚ¼¯ÈºµÄÿ¸ö½ÚµãÉÏ×÷Ϊ´úÀíÆô¶¯Ê±£©ÒÔ¼°ÓÃÓÚ´æ´¢ºÍË÷ÒýÊý¾ÝµÄElasticsearch¡£¼´Ê¹Äã¿ÉÄܲ»ÔÞͬÕâ¸ö½â¾ö·½°¸µÄЧÂÊ£¬µ«¼øÓÚËüµÄ¿É¿¿ÐÔºÍÒ×ÓÃÐÔ£¬ÎÒÈÏΪÕâÖÁÉÙÊÇÒ»¸öºÃµÄ¿ªÊ¼¡£
ElasticsearchÊÇÒ»¸ö×ÊÔ´Ãܼ¯Ð͵Ľâ¾ö·½°¸£¬µ«Ëü¿ÉÒԺܺõØÀ©Õ¹²¢ÓÐÏֳɵÄDocker¾µÏñ£¬¿ÉÒÔÔËÐÐÔÚµ¥¸ö½ÚµãÒÔ¼°ËùÐè´óСµÄ¼¯ÈºÉÏ¡£
¸ú×Ùϵͳ

¼´Ê¹´úÂë·Ç³£ÍêÃÀ£¬È»¶ø»¹ÊÇ»áȷʵ·¢Éú¹ÊÕÏ£¬½Ó×ÅÄãÏëÔÚÉú²ú»·¾³Öзdz£×ÐϸµØÑо¿ËüÃÇ£¬²¢ÊÔͼÁ˽⡰Èç¹ûÔÚÎҵı¾µØ»úÆ÷ÉÏÒ»Çй¤×÷Õý³££¬ÄÇôÔÚÉú²ú»·¾³ÉϾ¿¾¹·¢ÉúÁËʲô´íÎ󣿡±¡£±ÈÈ绺ÂýµÄÊý¾Ý¿â²éѯ¡¢²»ÕýÈ·µÄ»º´æ¡¢½ÏÂýµÄ´ÅÅÌ»òÓëÍⲿ×ÊÔ´µÄÁ¬½Ó¡¢Éú̬ϵͳÖеĽ»Ò×£¬Æ¿¾±ÒÔ¼°¹æÄ£²»×ãµÄ¼ÆËã·þÎñ¶¼ÊÇÄú²»µÃ²»¸ú×ٺ͹ÀËãÔÚʵ¼Ê¸ºÔØÏ´úÂëÖ´ÐÐʱ¼äµÄһЩÔÒò¡£
OpentracingºÍZipkin×ãÒÔÓ¦¸¶´ó¶àÊýÏÖ´ú±à³ÌÓïÑÔµÄÕâÒ»ÈÎÎñ£¬²¢ÇÒÔÚ·â×°´úÂëÖ®ºó²»»áÔö¼Ó¶îÍâµÄ¸ºµ£¡£µ±È»£¬ÊÕ¼¯µ½µÄËùÓÐÊý¾ÝÓ¦¸Ã´æ´¢ÔÚÊʵ±µÄµØ·½£¬²¢×÷Ϊһ¸ö×é¼þʹÓá£
ͨ¹ýÉÏÊöµÄ¿ª·¢±ê×¼ºÍ·þÎñÄ£°å¿ÉÒÔ½â¾öÔÚ·â×°´úÂëÒÔ¼°Í¨¹ý·þÎñ¡¢ÏûÏ¢¶ÓÁС¢Êý¾Ý¿âµÈת·¢¡°Trace ID¡±Ê±³öÏֵĸ´ÔÓÇé¿ö¡£ºóÕßÒ²¿¼Âǵ½ÁË·½·¨µÄÒ»ÖÂÐÔ¡£
¼à¿ØºÍ¸æ¾¯

PrometheusÒѾ³ÉΪÏÖ´ú¼à¿ØÏµÍ³ÖÐÊÂʵÉϵıê×¼£¬¸üÖØÒªµÄÊÇ£¬ËüÔÚKubernetesÉÏ»ñµÃÁË¿ªÏä¼´ÓõÄÖ§³Ö¡£Äú¿ÉÒԲο¼¹Ù·½KubernetesÎĵµÀ´Á˽â¸ü¶à¹ØÓÚ¼à¿ØºÍ¾¯±¨µÄÐÅÏ¢¡£
¼à¿ØÊDZØÐë°²×°ÔÚ¼¯ÈºÄÚµÄÉÙÊý¼¸¸ö¸¨Öúϵͳ֮һ£¬¼¯ÈºÊÇÒ»¸öÊÜ¼à¿ØµÄʵÌå¡£µ«ÊǶÔÓÚ¼à¿ØÏµÍ³µÄ¼à¿Ø£¨±§Ç¸ÓÐЩ†ªà£©Ö»ÄÜ´ÓÍⲿ½øÐУ¨ÀýÈ磬´ÓÏàͬµÄ¡°Ô¤·¢²¼¡±»·¾³£©¡£ÔÚÕâÖÖÇé¿öÏ£¬½»²æ¼ì²é¿É×÷Ϊһ¸öÕë¶ÔÈκηֲ¼Ê½»·¾³µÄ±ã½Ý½â¾ö·½°¸£¬Õâ²»»áʹ¸ß¶ÈͳһµÄÉú̬ϵͳ¼Ü¹¹¸´ÔÓ»¯¡£
Õû¸ö¼à¿Ø·¶Î§¿ÉÒÔ·ÖΪÈý¸öÍêÈ«Âß¼¸ôÀëµÄ²ã¼¶¡£ÒÔÏÂÊÇÎÒÈÏΪµÄÔÚÿ¸ö²ã¼¶×îÖØÒªµÄ¸ú×ÙµãÀý×Ó£º
ÎïÀí²ã£ºÍøÂç×ÊÔ´¼°Æä¿ÉÓÃÐÔ¡ª¡ª´ÅÅÌ£¨I/O£¬¿ÉÓÿռ䣩¡ª¡ªµ¥¸ö½Úµã£¨CPU¡¢RAM¡¢LA£©µÄ»ù±¾×ÊÔ´
¼¯Èº²ã£º¡ª¡ªÃ¿¸ö½ÚµãÉÏÖ÷¼¯ÈºÏµÍ³µÄ¿ÉÓÃÐÔ£¨kubelet¡¢kubeAPI¡¢DNS¡¢etcdµÈ£©¡ª¡ª¿ÉÓÃ×ÊÔ´ÊýÁ¿¼°Æä¾ùÔÈ·Ö²¼¡ª¡ªÔÊÐíµÄ¿ÉÓÃ×ÊÔ´Ïà¶ÔÓÚ·þÎñÏûºÄµÄʵ¼Ê×ÊÔ´µÄ¼à¿Ø¡ª¡ªpodµÄÖØÐ¼ÓÔØ
·þÎñ²ã£º¡ª¡ªÈκÎÀàÐ͵ÄÓ¦ÓóÌÐò¼à¿Ø¡ª¡ª´ÓÊý¾Ý¿âÄÚÈݵ½APIµ÷ÓÃÆµÂÊ¡ª¡ªAPIÍø¹ØÉϵÄHTTP´íÎóÊýÁ¿¡ª¡ª¶ÓÁдóСºÍworkerµÄÀûÓÃÂÊ¡ª¡ªÊý¾Ý¿âµÄ¶à¸ö¶ÈÁ¿±ê×¼£¨¸´ÖÆÑÓ³Ù¡¢ÊÂÎñµÄʱ¼äºÍÊýÁ¿¡¢»ºÂýµÄÇëÇóµÈ£©¡ª¡ª¶Ô·ÇHTTP½ø³ÌµÄ´íÎó·ÖÎö¡ª¡ª·¢Ë͵½ÈÕ־ϵͳÇëÇóµÄ¼à¿Ø£¨¿ÉÒÔ½«ÈκÎÇëÇóת»»Îª¶ÈÁ¿±ê×¼£©
ÖÁÓÚÔÚÿ¸ö²ã¼¶µÄ¸æ¾¯Í¨Öª£¬ÎÒÏëÍÆ¼öʹÓÃÁËÎÞÊý´ÎµÄÆäÖÐÒ»¸öÍⲿ·þÎñ£¬¿ÉÒÔ·¢ËÍ֪ͨµç×ÓÓʼþ£¬¶ÌÐÅ»ò´òµç»°¸øÊÖ»úºÅÂë¡£ÎÒ»¹»áÌáµ½ÁíÒ»¸öϵͳ¡ª¡ªOpsGenie¡ª¡ªËüÓëPrometheusµÄalertmanaerÊǽôÃܼ¯³ÉµÄ¡£
OpsGenieÊÇÒ»ÖÖµ¯ÐԵĸ澯¹¤¾ß£¬¿É°ïÖú´¦ÀíÉý¼¶¡¢È«Ììºò¹¤×÷¡¢Í¨ÖªÇþµÀÑ¡ÔñµÈµÈ¡£ÔÚÍŶÓÖ®¼ä·Ö·¢¸æ¾¯Ò²ºÜÈÝÒס£ÀýÈ磬²»Í¬¼¶±ðµÄ¼à¿ØÓ¦Ïò²»Í¬µÄÍŶÓ/²¿ÃÅ·¢ËÍ֪ͨ£ºÎïÀí¡ª¡ªInfra
+ Devops£¬¼¯Èº¡ª¡ªDevops£¬Ó¦ÓóÌÐò¡ª¡ªÃ¿Ò»¸öÏà¹ØµÄÍŶӡ£
API GatewayºÍµ¥µãµÇ¼

Òª´¦ÀíÖîÈçÊÚȨ¡¢ÈÏÖ¤¡¢Óû§×¢²á£¨ÍⲿÓû§¡ª¡ª¹«Ë¾¿Í»§£©ºÍÆäËûÀàÐ͵ķÃÎÊ¿ØÖƵÈÈÎÎñ£¬ÄúÐèÒª¸ß¶È¿É¿¿µÄ·þÎñ£¬ÒÔ±£³ÖÓëAPI
GatewayµÄµ¯ÐÔ¼¯³É¡£Ê¹ÓÃÓë¡°Éí·Ý·þÎñ¡±ÏàͬµÄ½â¾ö·½°¸Ã»ÓÐʲô»µ´¦£¬µ«ÊÇÄú¿ÉÄÜÐèÒª·ÖÀëÕâÁ½ÖÖ×ÊÔ´ÒÔʵÏÖ²»Í¬¼¶±ðµÄ¿ÉÓÃÐԺͿɿ¿ÐÔ¡£
ÄÚ²¿·þÎñµÄ¼¯³É²»Ó¦¸ÃºÜ¸´ÔÓ£¬ÄúµÄ·þÎñ²»Ó¦¸Ãµ£ÐÄÓû§ºÍ¶Ô·½µÄÊÚȨºÍÉí·ÝÑéÖ¤¡£Ïà·´£¬¼Ü¹¹ºÍÉú̬ϵͳӦ¸ÃÓÐÒ»¸ö´¦ÀíËùÓÐͨÐźÍHTTPÁ÷Á¿µÄ´úÀí·þÎñ¡£
ÈÃÎÒÃÇ¿¼ÂÇÒ»ÏÂ×îÊʺÏÓëAPI Gateway¼¯³ÉµÄ·½Ê½£¬¼´Õû¸öÉú̬ϵͳ¡ª¡ªÁîÅÆ¡£´Ë·½·¨ÊÊÓÃÓÚËùÓÐÈýÖÖ·ÃÎÊ·½°¸£º´ÓUI¡¢´Ó·þÎñµ½·þÎñÒÔ¼°´ÓÍⲿϵͳ¡£½Ó×Å£¬½ÓÊÕÁîÅÆ£¨»ùÓڵǼÃûºÍÃÜÂ룩µÄÈÎÎñÓÉÓû§½çÃæ±¾Éí»ò·þÎñ¿ª·¢ÈËÔ±Íê³É¡£Çø·ÖUIÖÐʹÓõÄÁîÅÆµÄÉúÃüÖÜÆÚ£¨½Ï¶ÌµÄTTL£©ºÍÆäËûÇé¿ö£¨½Ï³¤µÄºÍ×Ô¶¨ÒåµÄTTL£©Ò²ÊÇÓÐÒâÒåµÄ¡£
ÒÔÏÂÊÇAPI Gateway½â¾öµÄһЩÎÊÌ⣺
1.´ÓÍⲿºÍÄÚ²¿·ÃÎÊÉú̬ϵͳ·þÎñ£¨·þÎñ²»Ö±½ÓÏ໥ͨÐÅ£©
2.Óëµ¥µãµÇ¼·þÎñ¼¯³É£ºÁîÅÆ×ª»»ºÍ¸½¼ÓHTTPSÇëÇó£¬Í·²¿°üº¬ËùÇëÇó·þÎñµÄÓû§±êʶÊý¾Ý£¨ID¡¢½ÇÉ«ºÍÆäËûÏêϸÐÅÏ¢£©¡ª¡ª¸ù¾Ý´Óµ¥µãµÇ¼·þÎñ½ÓÊÕµ½µÄ½ÇÉ«ÆôÓÃ/½ûÓöÔËùÇëÇó·þÎñµÄ·ÃÎÊ¿ØÖÆ
3.Õë¶ÔHTTPÁ÷Á¿µÄµ¥µã¼à¿Ø
4.¸´ºÏ²»Í¬·þÎñµÄAPIÎĵµ£¨ÀýÈ磬¸´ºÏSwaggerµÄjson/ymlÎļþ£©?
5.Äܹ»¸ù¾ÝÓòºÍÇëÇóµÄURI¹ÜÀíÕû¸öÉú̬ϵͳµÄ·ÓÉ
6.ÓÃÓÚÍⲿÁ÷Á¿µÄµ¥Ò»½ÓÈëµã£¬ÒÔ¼°Óë½ÓÈ빩ӦÉ̵É
ʼþ×ÜÏßºÍÆóÒµ¼¯³É/·þÎñ×ÜÏß

Èç¹ûÄúµÄÉú̬ϵͳ°üº¬Êý°Ù¸ö¿ÉÔÚÒ»¸öºêÓòÖй¤×÷µÄ·þÎñ£¬ÔòÄú½«²»µÃ²»´¦Àí·þÎñͨÐŵÄÊýǧÖÖ¿ÉÄÜ·½Ê½¡£ÎªÁ˼ò»¯Êý¾ÝÁ÷£¬ÄúÓ¦¸Ã¾ß±¸ÔÚ·¢ÉúÌØ¶¨Ê¼þʱ½«ÐÅÏ¢·Ö·¢µ½´óÁ¿ÊÕ¼þÈ˵ÄÄÜÁ¦£¬¶ø²»¹ÜʼþµÄÉÏÏÂÎÄÈçºÎ¡£»»¾ä»°Ëµ£¬ÄúÐèÒªÒ»¸öʼþ×ÜÏßÀ´·¢²¼»ùÓÚ±ê×¼ÐÒéµÄʼþ²¢¶©ÔÄËüÃÇ¡£
×÷Ϊʼþ×ÜÏߣ¬Äú¿ÉÒÔʹÓÃÈκοÉÒÔ²Ù×÷ËùνBrokerµÄϵͳ£ºRabbitMQ¡¢Kafka¡¢ActiveMQµÈ¡£Ò»°ãÀ´Ëµ£¬Êý¾ÝµÄ¸ß¿ÉÓÃÐÔºÍÒ»ÖÂÐÔ¶ÔÓÚ΢·þÎñÊÇÖÁ¹ØÖØÒªµÄ£¬µ«ÊÇÓÉÓÚCAP¶¨Àí£¬ÄúÈÔÈ»²»µÃ²»ÎþÉüijЩ¶«Î÷À´ÊµÏÖ×ÜÏßµÄÕýÈ··Ö²¼ºÍ¼¯Èº»¯¡£
×ÔÈ»£¬Ê¼þ×ÜÏßÓ¦¸ÃÄܹ»½â¾ö¸÷ÖÖ·þÎñ¼äͨÐÅÎÊÌ⣬µ«Ëæ×Å·þÎñÊýÁ¿´Ó¼¸°Ù¸öÔö¼Óµ½¼¸Ç§¸öÉõÖÁ¼¸Íò¸ö£¬¼´Ê¹ÊÇ×îºÃµÄ»ùÓÚʼþ×ÜÏߵļܹ¹Ò²»áÍû¶øÈ´²½£¬Äú½«ÐèҪѰÕÒÁíÒ»ÖÖ½â¾ö·½°¸¡£Ò»¸öºÜºÃµÄÀý×Ó¾ÍÊǼ¯³É×ÜÏß·½·¨£¬Ëü¿ÉÒÔÀ©Õ¹ÉÏÊö¡°Dumb¹Ü¡ª¡ªÖÇÄÜÏû·Ñ¡±²ßÂԵŦÄÜ¡£
Óм¸Ê®¸öʹÓá°ÆóÒµ¼¯³É/·þÎñ×ÜÏß¡±·½·¨µÄÀíÓÉ£¬ÆäÄ¿µÄÊǼõÉÙÃæÏò·þÎñ¼Ü¹¹µÄ¸´ÔÓÐÔ¡£ÒÔÏÂÊÇÆäÖм¸¸öÀíÓÉ£º
1.¾ÛºÏ¶à¸öÏûÏ¢
2.½«Ò»¸öʼþ²ð·ÖΪ¼¸¸öʼþ
3.¶ÔÓÚʼþµÄϵͳÏìÓ¦µÄͬ²½/ÊÂÎñ·ÖÎö
4.½Ó¿ÚµÄе÷£¬Õâ¶ÔÓÚÓëÍⲿϵͳµÄ¼¯³ÉÌØ±ðÖØÒª
5.ʼþ·Óɵĸ߼¶Âß¼
6.ÓëÏàͬ·þÎñµÄ¶àÖØ¼¯³É£¨´ÓÍⲿºÍÄÚ²¿£©
7.Êý¾Ý×ÜÏߵIJ»¿ÉÀ©Õ¹ÖÐÐÄ»¯
×÷ΪÆóÒµ¼¯³É×ÜÏßµÄÒ»¿î¿ªÔ´Èí¼þ£¬Äú¿ÉÄÜÐèÒª¿¼ÂÇApache ServiceMix£¬ÆäÖаüº¬¼¸¸ö¶ÔÓÚ´ËÀàSOAµÄÉè¼ÆºÍ¿ª·¢ÖÁ¹ØÖØÒªµÄ×é¼þ¡£
Êý¾Ý¿âºÍÆäËûÓÐ״̬µÄ·þÎñ

ºÍKubernetesÒ»Ñù£¬DockerÒ»´ÎÓÖÒ»´ÎµØ¸Ä±äÁËËùÓÐÓÃÓÚÐèÒªÊý¾Ý³Ö¾Ã»¯ÒÔ¼°Óë´ÅÅ̽ôÃÜÏà¹ØµÄ·þÎñµÄÓÎÏ·¹æÔò¡£ÓÐÈË˵·þÎñÓ¦¸ÃÔÚÎïÀí·þÎñÆ÷»òÐéÄâ»úÉÏÒԾɵķ½Ê½¡°Éú´æ¡±¡£ÎÒ×ðÖØÕâÒ»¹Ûµã£¬²¢ÇÒ²»»á̸ÂÛËüµÄÓŵãºÍȱµã£¬µ«ÎÒÏ൱¿Ï¶¨ÕâÖÖ˵·¨µÄ´æÔÚ½ö½öÊÇÒòΪÔÚDocker»·¾³ÖÐÔÝʱȱ·¦¹ÜÀíÓÐ״̬·þÎñµÄ֪ʶ¡¢½â¾ö·½°¸ºÍ¾Ñé¡£
ÎÒ»¹Ó¦¸ÃÌáµ½Êý¾Ý¿â¾³£Õ¼¾Ý´æ´¢ÊÀ½çµÄÖÐÐÄλÖã¬Òò´ËÄúÑ¡ÔñµÄ½â¾ö·½°¸Ó¦¸ÃÍêȫ׼±¸ºÃÔÚKubernetes»·¾³Öй¤×÷¡£
¸ù¾ÝÎҵľÑéÒÔ¼°Êг¡Çé¿ö£¬ÎÒ¿ÉÒÔÇø·ÖÒÔϼ¸×éÓÐ״̬µÄ·þÎñÒÔ¼°Ã¿¸ö·þÎñ×îÊʺϵÄDocker½â¾ö·½°¸µÄʾÀý£º
1.Êý¾Ý¿â¹ÜÀíϵͳ¡ª¡ªPostDockÊÇÔÚÈκÎDocker»·¾³ÖÐPostgreSQL¼òµ¥¿É¿¿µÄ½â¾ö·½°¸
2.¶ÓÁÐ/ÏûÏ¢´úÀí¡ª¡ªRabbitMQÊǹ¹½¨ÏûÏ¢¶ÓÁÐϵͳºÍ·ÓÉÏûÏ¢µÄ¾µäÈí¼þ¡£
RabbitMQÅäÖÃÖеÄcluster_formation²ÎÊý¶ÔÓÚ¼¯ÈºÉèÖÃÊDZز»¿ÉÉÙµÄ
3.¸ßËÙ»º´æ·þÎñ¡ª¡ªRedis±»ÈÏΪÊÇ×î¿É¿¿ºÍµ¯ÐÔµÄÊý¾Ý¸ßËÙ»º´æ½â¾ö·½°¸Ö®Ò»
4.È«ÎÄËÑË÷¡ª¡ªÎÒÉÏÃæÒѾÌáµ½¹ýµÄElasticsearch¼¼ÊõÕ»£¬×î³õÓÃÓÚÈ«ÎÄËÑË÷£¬µ«Í¬ÑùÉó¤´æ´¢ÈÕÖ¾ºÍÈκξßÓдóÁ¿Îı¾Êý¾ÝµÄ¹¤×÷
5.Îļþ´æ´¢·þÎñ¡ª¡ªÓÃÓÚÈκÎÀàÐ͵ÄÎļþ´æ´¢ºÍ½»¸¶£¨ftp£¬sftpµÈ£©µÄÒ»°ã»¯·þÎñ×é
ÒÀÀµ¾µÏñ

Èç¹ûÄúÉÐδÓöµ½ÄúÐèÒªµÄÈí¼þ°ü»òÒÀÀµÏîÒѱ»É¾³ý»òÔÝʱ²»¿ÉÓõÄÇé¿ö£¬Çë²»ÒªÈÏΪÕâÖÖÇé¿öÓÀÔ¶²»»á·¢Éú¡£
Ϊ±ÜÃâ²»±ØÒªµÄ²»¿ÉÓÃÐÔ²¢ÎªÄÚ²¿ÏµÍ³Ìṩ°²È«±£»¤£¬ÇëÈ·±£¹¹½¨ºÍ½»¸¶·þÎñ¶¼²»ÐèÒªInternetÁ¬½Ó¡£
ÅäÖþµÏñºÍ¸´ÖÆËùÓеÄÒÀÀµÏîµ½ÄÚ²¿ÍøÂ磺Docker¾µÏñ¡¢rpm°ü¡¢Ô´´úÂë¿â¡¢python/go/js/phpÄ£¿é¡£
ÕâЩÒÔ¼°ÆäËûÈκÎÀàÐ͵ÄÒÀÀµ¹ØÏµ¶¼ÓÐ×Ô¼ºµÄ½â¾ö·½°¸¡£ ×î³£¼ûµÄ¿ÉÒÔͨ¹ý²éѯ¡°private dependency
mirror for ...¡±À´GoogleËÑË÷¡£
´Ó¼Ü¹¹µ½ÕæÊµÉú»î

²»¹ÜÄãϲ²»Ï²»¶£¬ÄãµÄÕû¸ö¼Ü¹¹ÃüÖÐ×¢¶¨³ÙÔç»áÄÑÒÔΪ¼Ì¡£Ëü×ÜÊǻᷢÉú£º¼¼Êõ¹ýʱºÜ¿ì£¨1 - 5Ä꣩£¬·½·¨ºÍ·½·¨ÂÛ¡ª¡ªÓеãÂý£¨5
- 10Ä꣩£¬Éè¼ÆÔÔòºÍ»ù´¡¡ª¡ªÅ¼¶û£¨10 - 20Ä꣩£¬µ«ÖÕ¹éÊDz»¿É±ÜÃâµÄ¡£
¿¼Âǵ½¼¼ÊõµÄ¹ýʱ£¬ÐèÒª×ÜÊÇÊÔͼÈÃ×Ô¼ºµÄÉú̬ϵͳ´¦ÓÚ¼¼Êõ´´Ðµĸ߷åÆÚ£¬¼Æ»®²¢ÍƳöеķþÎñÒÔÂú×㿪·¢ÈËÔ±¡¢ÒµÎñºÍ×îÖÕÓû§µÄÐèÇó£¬ÏòÄúµÄÀûÒæÏà¹ØÕßÍÆ¹ãеÄʵÓóÌÐò£¬½»¸¶ÖªÊ¶À´Íƶ¯ÄúµÄÍŶӺ͹«Ë¾Ç°½ø¡£
ͨ¹ýÈÚÈëרҵÉçÇø¡¢ÔĶÁÏà¹ØÎÄÏײ¢Óëͬʽ»Á÷£¬±£³Ö×Ô¼º´¦ÓÚÉú̬Á´µÄ¶¥¶Ë¡£×¢ÒâÏîÄ¿ÖеÄлú»áÒÔ¼°ÕýȷʹÓÃÐÂÇ÷ÊÆ¡£ÊÔÑé²¢Ó¦ÓÿÆÑ§·½·¨À´·ÖÎöÑо¿½á¹û£¬»òÒÀ¿¿ÄúÐÅÈκÍ×ðÖØµÄÆäËûÈ˵ĽáÂÛ¡£
³ý·ÇÄãÊDZ¾ÁìÓòµÄר¼Ò£¬·ñÔòºÜÄÑΪ¸ù±¾ÐԵı仯×öºÃ×¼±¸¡£ÎÒÃÇËùÓÐÈËÖ»»áÔÚÎÒÃǵÄÕû¸öÖ°ÒµÉúÑÄÖмûÖ¤Ò»Ð©ÖØ´óµÄ¼¼Êõ±ä»¯£¬µ«²¢²»ÊÇÎÒÃÇÍ·ÄÔÖеÄ֪ʶÊýÁ¿Ê¹µÃÎÒÃdzÉΪרҵÈËÊ¿²¢ÈÃÎÒÃÇÅʵǵ½¶¥·åµÄ£¬¶øÊÇÎÒÃÇ˼άµÄ¿ª·ÅÐÔÒÔ¼°½ÓÊÜÍɱäµÄÄÜÁ¦¡£
»Øµ½±êÌâÖеÄÎÊÌ⣺¡°ÊÇ·ñÓпÉÄܴһ¸ö¸üºÃµÄ¼Ü¹¹£¿¡±¡£´ð°¸ÏÔ¶øÒ×¼û£º²»£¬²»ÊÇ¡°Ò»ÀÍÓÀÒÝ¡±£¬µ«Ò»¶¨ÒªÔÚijÖ̶ֳÈÉÏ»ý¼«ÕùÈ¡£¬ÔÚδÀ´Ä³¸ö¡°ºÜ¶ÌµÄʱ¼ä¡±£¬ÄãÒ»¶¨»á³É¹¦µÄ£¡
|