±à¼ÍƼö: |
±¾ÎÄÖ÷Ҫ̽ÌÖLC3΢·þÎñWorkshop£¬ÉîÈë½â¶ÁÁËServiceComb£¬»¹½²½âÁËMesher×é¼þ
±¾ÎÄÀ´×ÔÓÚÌÚÑ¶ÔÆ£¬ÓÉ»ðÁú¹ûÈí¼þç÷ç÷±à¼¡¢ÍƼö |
|
ÕªÒª
ÎÒÃǽñÌìÎ§ÈÆÈý¸öÖ÷ÌâÀ´½²£¬Ê×ÏȻὲһÏÂService MeshÔÚ»ªÎª¶àÄêµÄʵ¼ù£¬ÁíÍâ»á½éÉÜһЩʵ¼ùµÄ·½·¨£¬×îºó»á½éÉܼ¸¸ö°¸ÀýÀ´´ø´ó¼Ò¿´Ò»Ï£¬ÎÒÃÇÊÇÔõôÔÚʵ¼ùÖаïÖúÆóÒµÔÚÉú²ú»·¾³ÖÐʹÓÃService Mesh¡£
»ªÎªÄÚ²¿Ñݽø

ʵ¼ÊÉÏÎÒÃÇÔÚ×ö΢·þÎñµÄʱºò£¬Õû¸öÑݽøµÄ¹ý³ÌÖÐÒª½â¾öºÜ¶à΢·þÎñ¼Ü¹¹´øÀ´µÄ¸´ÔÓµÄÎÊÌâ¡£ÎÒ¸öÈËÔøÊµÏÖ¹ýÒ»¸öGo°æ±¾µÄ΢·þÎñ¿ªÔ´¿ò¼Ü£¬Õâ¸ö¿ò¼ÜÓдó¸Å2ÍòÐÐ×óÓҵĴúÂ룬²¢½»¸¶¸øÒµÎñʹÓã¬Õâ¸ö¹ý³ÌºÄʱ·Ç³£³¤£¬Êµ¼ÊÉÏÒ»°ãµÄ¹«Ë¾ÊÇûÓÐÕâ¸öʵÁ¦È¥½»¸¶µÄ£¬ÁíÍâ¿ÉÄÜ»¹ÐèҪһЩʱ¼äÈ¥Èÿª·¢ÕßÈ¥ÊÊÓ¦¿ò¼Ü¡£
¶Ô´ËµÄÁíÒ»ÖÖ½â¾ö·½°¸ÊÇʹÓÃService Mesh£¬ÕâÊÇÒ»¸öÍøÂçÄ£ÐÍ£¬²»Í¬ÓÚ¿ª·¢¿ò¼ÜÔÚÓ¦ÓòãºÍÓ¦ÓÃñîºÏÔÚÒ»Æð£¬ÒÔ½â¾ö΢·þÎñµÄ¸´ÔÓÎÊÌâ¡£Service MeshÊÇÔÚTCP IPÖ®ÉÏÌṩ´úÀíµÄ·½Ê½ºÍApplication½âñȻºó°ïÄãÈ¥×ö·¢ÏÖ¡¢ÈÛ¶Ï¡¢ÏÞÁ÷¡¢¼à¿ØµÈÊÂÇ飬ÕâЩ¶¼ÊÇÔÚÎå²ãÐÒéÀ´×öµÄ¡£
Æäʵ¿ÉÒÔÕâÑù¿´´ý£¬¹ýÈ¥µÄApplicationÊÇÅÜÔÚtcp ipÖ®ÉÏ£¬ÏÖÔÚÕâЩ·þÎñÅÜÔÚService Mesh·þÎñÍøÂçÖ®ÉÏ£¬¶øÇÒÕâ¸ö¹ý³Ì²»ÐèÒª¶ÔÔÓдúÂë½øÐÐÒ»µãÐ޸ġ£
ʵ¼ÊÉÏ»ªÎªÄÚ²¿ºÜÔç¾ÍÒѾÓÐÁ˷dz£¶àµÄʵ¼ù¡£13ÄêµÄʱºòʵÏÖÁË΢·þÎñ¿ª·¢Æ½Ì¨ÖеÄIR×é¼þ£¬ËüÊÇÔÚÿһ¸ö½ÚµãÉÏÓÐÒ»¸öÄÚ²¿Â·ÓÉ£¬Õâ¸ö½ÚµãÉÏËùÓеÄApplicationÓÉÆ½Ì¨²¿Ê𣬲¿Êð½øÈ¥Ö®ºóÓÉÓÐÒ»¸ö½ÐRouterAgent×é¼þ½«APP×¢²áµ½zookeeperÉÏ£¬Í¬Ê±RouterAgent»áË¢ÐÂIRÖеÄ·ÓÉ±í£¬ÕâÑùµÄ¾Í¿ÉÒÔ×ö·¢ÏÖÁË¡£
ApplicationÖ®¼äµÄËùÓÐͨÐÅÄØ¶¼ÊÇͨ¹ýRouterÀ´½øÐе쬵«ÊÇËüÊÇÓÉnginxʵÏֵģ¬ËùÒÔÓм¸¸öȱµã¡£Ê×ÏÈÒ»µ©½Úµã¹ÒÁËÖ®ºó£¬½ÚµãÉϵÄËùÓÐApplication¼´½ø²»À´Ò²³ö²»È¥£¬Í¨ÐžͶ¼Ã»ÓÐÁË¡£ÁíÍâÀ©Õ¹ÐÔÊܵ½Ò»¶¨¾ÖÏÞ£¬ÓïÑÔÉú̬²»ÏñGoÓïÑÔJavaÄÇôºÃ¡£
ÎÒÃÇÔÚ15ÄêµÄʱºòÓÖ×öÁËÒ»¸ö½ÐsidecarµÄ×é¼þ£¬ÕâÒ²ÊÇÒ»¸ö´ó¿ò¼ÜϵÄ×é¼þ¡£ËüµÄÔÀíÆäʵÒѾºÍÏÖÔÚµÄService Mesh·Ç³£ÏñÁË£¬ÀûÓÃÁËkubernetesµÄÒ»¸öpodÏ¿ÉÒÔÓÖ¶à¸öÈÝÆ÷µÄÄÜÁ¦£¬Ò»¸öcontainerÊdzÐÔØÒµÎñ£¬ÁíÍâÒ»¸öcontainer¾ÍÊÇsidecar¡£ËùÓзþÎñµÄÇëÇó¶¼ÒªÍ¨¹ýsidecar½øÐз¢ËͽÓÊÕ£¬Ò»°ãÀ´ËµÕâЩService¶¼ÊÇHTTPµÄservice¡£sidecarÆäʵҲÓÐ×Ô¼ºµÄһЩȱµã£¬±ÈÈç˵ËüÊÇJava¿ª·¢µÄ£¬´ó¼Ò¶¼ÖªµÀ£¬javaÐéÄâ»úÊǷdz£µÄÕ¼ÓÃ×ÊÔ´µÄ£¬ÏÖÔÚÿ¸ö΢·þÎñ¶¼ÒªÆðÒ»¸öÐéÄâ»ú£¬×ܵÄÀ´Ëµ²»¹»ÇåÁÁ£¬ËùÒÔsidecarÆäʵ²»·ûºÏService MeshµÄ×î¼Ñʵ¼ù¡£
Mesher

ºóÀ´ÎÒÃÇÓÃGoÓïÑÔÖØÐ´ÁËMesher×é¼þ£¬ÒòΪµ±Ê±ÎÒÃÇÌýµ½ÁËÕâ¸ö¸ÅÄîÖ®ºó£¬ÈÏΪ¿ÉÒÔ¸ù¾ÝËûµÄÀíÂÛÀ´ÊµÏÖÒ»¸öÎÒÃÇ×Ô¼ºµÄ×é¼þ£¬È»ºóÎÒÃǾÍÓÃÁËgoÓïÑÔȥд¡£ÄÇôºÃ´¦ÊÇʲô£¿Ê×ÏÈËüµÄÐÔÄܼ«¸ß£¬¶øÇÒÕ¼ÓÃ×ÊÔ´·Ç³£Ð¡£¬·Ç³£·ûºÏService MeshµÄ±ê×¼£¬ÒòΪËü²»»áÕ¼ÓÃÄãµÄÊý¾ÝÖÐÐĺܶàµÄ×ÊÔ´¡£
¿ÉÒÔ¿´µ½ÉÏͼÖУ¬MesherÔÚÒ»¸öpodÀï±ßºÍ·þÎñÅÜÔÚÒ»Æð£¬ËüÔÚÄÚ²¿Ö§³ÅÁ˺ܶàµÄ΢·þÎñµÄÌØÐÔ£¬±ÈÈç·¢ÏÖ¡¢Â¢¶Ï¡¢¸ºÔؾùºâ¡¢¶¯Ì¬ÅäÖá£Ëü»¹»á°ïÄãά»¤½¡¿µ£¬×îºó×ö·¢ÏÖµÄʱºò£¬ÊÇ»ùÓÚ±¾µØ»º´æ¡£

ÉÏͼÊÇMesherµÄÏêϸ¼Ü¹¹¡£ÉÏÃæµÄÄÇ¿éÊÇÒ»¸ö¿ØÖÆÃæ°å£¬Ö§³Ö¶àÖÖµÄÉú̬£¬-ServiceComb¡¢Istio¡¢ZipkinµÈ£¬ËüºÍĿǰ±È½Ï»ðµÄECUƽ̨×î´óµÄÒ»¸ö²»Í¬µã£¬¾ÍÊÇÄܹ»Ö§³ÖÒì¹¹µÄ»ù´¡ÉèÊ©£¬²»»á°ó¶¨kubernetes£¬»¹¿ÉÒÔ²¿ÊðÔÚ˵ÓÐÔÆ¡¢Bare metal¡¢VMÉÏÃæ¡£
×¢²á·¢ÏÖ

Õâ¸öÊÇÎÒÃÇ×¢²á·¢ÏÖµÄÉè¼Æ£¬ËüÊÇ×öÁËÁ½¸ö³éÏó£¬Ò»¸ö½Ð×¢²áÆ÷£¬Ò»¸ö½Ð·þÎñ·¢ÏÖ¡£ÕâÑù×öµÄºÃ´¦ÊÇÄܹ»Ö§³Ö¿Í»§¶Ë×¢²á·¢ÏÖ£¬Ò²¾ÍÊÇ˵µ±ÄãûÓÐÏñkubernetesÕâÑùµÄƽ̨µÄʱºò£¬¿ÉÒÔ½øÐÐ×Ô×¢²á¡£×ÔÐÐ×¢²áµ½Service CenterÉÏÃæ£¬È»ºóͨ¹ýService DiscoveryÈ¥×ö·¢ÏÖ¡£µ±Ê¹ÓÃÀàËÆÓÚECUÕâÑùµÄƽ̨µÄʱºò£¬ÓÉÓÚËüÃÇ»á°ïÄã×Ô¶¯Î¬»¤ÉúÃüÖÜÆÚ£¬ËùÒÔÕâ¸öʱºò¾Í²»ÐèÒªÔÙÈ¥×Ô×¢²á»òÕßά»¤ÐÄÌøÁË£¬´Ëʱ¿ÉÒÔÑ¡ÔñÖ»ÔËÐÐÒ»¸öService DiscoveryÀ´ÊÊÅäÕâ¸öƽ̨£¬ÕâÑù¾Í·Ç³£Áé»îÁË¡£
»ùÓÚ΢·þÎñÔªÊý¾ÝµÄ·ÓɹÜÀí

ÔÚService DiscoveryÖ®ÉÏ»áÓÐÒ»²ãͳһµÄ»º´æÄ£ÐÍ£¬»ùÓÚËüÃÇ¿ÉÒÔ×ö·Ç³£·á¸»µÄ·ÓɹÜÀí¡£Á÷Á¿½øÀ´ºó»áÊ×ÏÈÅжÏÕâ´ÎÇëÇóµÄÌØÕ÷£¬´ÓÇëÇóÖпÉÒÔÖªµÀÒª·ÃÎʵÄÄ¿±ê·þÎñÊÇʲô£¬ÕâÀï×î¹Ø¼üµÄÒ»¸öµã¾ÍÊÇÄãµÄ·þÎñÃûÊÇʲô£¬×îºóͨ¹ý·þÎñÃûÀ´²éÔ¶³Ì»ò±¾µØµÄ·ÓÉ±í£¬¾ö¶¨service nameµÄ¶ÔËù¶ÔÓ¦µÄmetadataÊÇʲô£¬È»ºó¸ù¾ÝÕâЩԪÊý¾ÝÈ¥×Ô¼ºµÄ±¾µØ»º´æÖвé³öÕæÊµµÄservice instanceÁÐ±í£¬×îºó½øÐзÃÎÊ¡£
¶àÐÒéÖ§³Ö

¶ÔÓÚ¶àÐÒéÖ§³ÖÎÒÃdzéÏóÁËÒ»¸öInvocation£¬Í¨¹ýInvocation¿ÉÒ԰Ѳ»Í¬µÄÐÒé½ÓÈ뵽ͳһµÄÄ£Ð͵±ÖУ¬²¢ÇÒÏíÓÐͬÑùµÄÖÎÀíÄÜÁ¦£¬±ÈÈç·ÓɹÜÀí¡¢ÏÞÁ÷¡¢¼à¿Ø£¬ÕâЩ¹¦ÄÜÄØ¶¼±»¼¯³Éµ½Handler ChainÀHandler Chain´¦ÀíµÄ¾ÍÊÇInvocation¶ÔÏó¡£¶øÕæÊµÔÚÍøÂç¼ä½øÐд«ÊäµÄ»¹ÊÇÐÒéµÄÒÔ¼°ºÍÐÒéÏà¼æÈݵÄÊý¾Ý°ü¡£
ServiceComb Service Center¼Ü¹¹ÑϽû

ÕâÊÇÎÒÃǺóÀ´ÍƽøµÄService CenterµÄ¼Ü¹¹Ñݽø£¬Ê×ÏÈÎÒÃdzéÏóÁËÒ»¸öAdaptor²ãÈ¥ÊÊÅ䲻ͬµÄ×¢²á·¢ÏÖ£¬Ôõô×öʵ¼ÊÉÏÊÇÓÉÓÚÊý¾ÝÖÐÐÄ»áÔ½À´Ô½´ó£¬²¢ÇÒÎÒÃÇÈÏΪÈκÎÒ»ÖÖÔÆÆäʵËü¶¼¶¼ÊDz»¿É¿¿µÄ¡£ËùÒÔºóÀ´ÎÒÃǴÁË×Ô¼ºµÄ˽ÓÐÔÆµÄÖÐÐÄ£¬È»ºó×öÁË»ìºÏÔÆ£¬ÍƽøService Centere¼Ü¹¹ÑݽøÒ²ÊÇÏ£ÍûËüÄܹ»Ö§³Ö¶àÔÆ¡£³ýÁËÕâ¸ö¼ÛÖµÖ®Í⣬Ëü»¹¿ÉÒÔÖ§³ÖÒì¹¹£¬±ÈÈç°ÑVMºÍK8S½øÐлì±à£¬Äܹ»ÈÃÄãÔÚÒ»¸öµØ·½¿´µ½ËùÓеÄÊý¾ÝÖÐÐÄÒÔ¼°ËùÓÐÒì¹¹ÉèÊ©ÖеÄ΢·þÎñ¡£
һվʽ½â¾ö·½°¸

Õâ¸öÊÇÎÒÃǵÄÒ»¸öһվʽ½â¾ö·½°¸£¬»ùÓÚServiceComb½â¾ö·½°¸£¬Mesher£¬go chassisµÈ×é¼þ,Ö§³Öjava£¬goÓïÑÔ±à³Ì¿ò¼ÜºÍ¶àÓïÑÔ½ÓÈ룬ÈÃÄãʹÓÃͳһµÄ¹ÜÀíÆ½Ì¨½øÐйÜÀí¡£
IstioÉú̬

ÎÒÃǵÄÁíÒ»¸ö²ßÂÔÊÇÔÚ¿ªÔ´·½ÃæÓµ±§IstioÉú̬£¬ºÍ±ðµÄµØ·½²»Í¬µÄ£¬ÎÒÃÇ»á°Ñgo chassis¿ª·¢¿ò¼Ü½ÓÈëµ½Istioµ±ÖУ¬ÕâÑù×öµÄÒ»¸öºÃ´¦¾ÍÊÇ¿ÉÒÔÌáÉý·þÎñµÄÕûÌåÐÔÄÜ¡£ÒòΪʵ¼ÊÉÏService MeshµÄ·½°¸£¬ÓÉÓÚÊÇÒ»¸ö·þÎñ´úÀí£¬ËùÒÔ˵ËùÓеÄÇëÇóÊý¾Ý¶¼»áÓÐÒ»¸ö´ÓÓû§µ½Äںˣ¬ÔÙ´ÓÄں˵½Óû§µÄ¹ý³Ì£¬Õû¸ö¹ý³Ì¶¼ÊÇÒª³Ë¶þµÄ£¬ËùÒÔÐÔÄÜÆäʵÊÇ»áÓнµµÍ£¬Ò»Ð©¶ÔÐÔÄܺÜÃô¸ÐµÄÓû§£¬¿ÉÄÜ»áÇãÏòÓÚʹÓÃÇÖÈë¿ò¼Ü¡£¶øIstioÕýºÃÌṩService Mesh·½°¸£¬ËùÒÔÎÒÃǰÑgo chassis´øÈëµ½IstioÖУ¬Í¬Ê±°ÑMixerÒ²´ø½øÈ¥£¬³ÉΪһ¸öÊý¾ÝÃæµÄÌæ»»·½°¸¡£
Óû§°¸Àý

Õâ¸öÎÒÃÇµÄÆäÖÐÒ»¸öÓû§µÄ°¸Àý£¬µ±Ê±ËûÃÇÄÚ²¿µÄÓÐÒ»¸öÓÃPHPдµÄÂ¥Óî¹ÜÀíϵͳ£¬ºËÐĵÄÒµÎñ¾ÍÊǹÜÀí´óÂ¥µÄһЩÉ豸ºÍ·þÎñÈËÔ±¡£µ±Ê±ËûÃÇÔÚÄÚ²¿Êµ¼ùµÄʱºò£¬¾õµÃÕâ¸öµ¥Ìå·þÎñÆäʵͦºÃµÄ£¬ËùÒÔÏë×ö³ÉÒ»¸öSaaS·þÎñÄóöÈ¥Âô¡£

µ«Êǵ¥Ìå°²×°µÄÕû¸ö¹ý³ÌÊǷdz£¸´Ôӵģ¬ËùÓÐËûÃǵĶԷþÎñ½øÐÐÁ˲ð·Ö£¬²ð·ÖÖ®ºóÿ¸ö·þÎñ¶¼ÅÜÔÚMesherÖ®ÉÏ£¬Í¨¹ý»ªÎªµÄ×¢²áÖÐÐĽøÐÐ×¢²á·¢ÏÖ£¬´Ëʱ¾ÍÓÐÁ˵¯ÐÔÉìËõµÄÄÜÁ¦¡£µ±ÓÐÒ»¸öеÄÓû§À´µÄʱºò£¬Ö»ÐèÒªÓÃͳһµÄ¾µÏñÈ¥ÀеÄcontainer¾Í¿ÉÒÔÁË¡£ÕâÕû¸ö´Ó¸ÄÔìµ½ÉÏÏߵĹý³Ì£¬Êµ¼ÊÉÏÖ»ÓÃÁËÒ»¸öÔ£¬ËÙ¶È»¹ÊÇÊǷdz£¿ìµÄ¡£
Mesher¼¼Êõ·Ïßͼ

Õâ¸öÊÇMesherµÄ¼¼Êõ·Ïߣ¬Êµ¼ÊÉÏÎÒÃÇ17Äê11Ô·ݵÄʱºò¾Í·¢²¼Á˹úÄÚµÚÒ»¿îÉÌÓü¶±ðµÄService Mesh£¬»ùÓÚÎÒÃǹýÈ¥µÄ΢·þÎñ¾Ñ飬ÒÔ¼°¼¸Äêǰ×öµÄÀàËÆService MeshµÄ¹¤×÷¡£ºóÐøÎÒÃÇÓÖ½øÐÐÁËһЩµü´ú£¬ÔÚÕâÒ»ÄêµÄµü´úÖл¹Í¬Ê±°ïÖú¶à¼ÒÆóÒµ°ÑService Mesh´øµ½Éú²úÖС£
½ñÄê±È½Ï´óµÄÒ»¸öÌØÐÔÊÇÖ§³ÖÁËGRPCÐÒ飬ÒÔ¼°°ïÖúÓû§¿ìËٵİÑMesher´øµ½×Ô¼ºµÄk8s»·¾³µ±ÖС£Î´À´ÎÒÃÇÒª×öµÄÖ÷ÒªÊǺÍSQLºÍ¿ªÔ´ÉçÇøµÄ¶Ô½Ó¡£
|