Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Model Center   Code  
»áÔ±   
   
 
     
   
 ¶©ÔÄ
  ¾èÖú
È¥ÄĶùÍø»ùÓÚMesosºÍDocker¹¹½¨Ë½ÓÐÔÆ·þÎñʵ¼ù
 
À´Ô´£ºDockOne ·¢²¼ÓÚ£º 2017-9-22
  1861  次浏览      27
 

±¾ÎÄÉîÈë½éÉÜÁËÈ¥ÄĶùÍøÀûÓÃMesosºÍDocker¹¹½¨Ë½ÓÐÔÆ·þÎñµÄÈ«¹ý³Ì£¬·ÖÏíÁË´ÓÎÞ״̬ӦÓÃÏòÓÐ״̬ӦÓÃÖð²½¹ý¶ÈµÄ¾­ÑéÓëÐĵá£

ƽ̨¸ÅÀÀ

2014ÄêϰëÄê×óÓÒ£¬È¥ÄĶùÍê³ÉÁËÓйع¹½¨Ë½ÓÐÔÆ·þÎñµÄ¼¼Êõµ÷ÑУ¬²¢×îÖÕÅ͍ÁËDocker/MesosÕâÒ»·½°¸¡£ÏÂͼ1չʾÁËÈ¥ÄĶùÊý¾Ýƽ̨µÄÕûÌå¼Ü¹¹£º

ͼ1£ºÈ¥ÄĶùÊý¾Ýƽ̨µÄÕûÌå¼Ü¹¹

¸Ãƽ̨ĿǰÒÑʵÏÖÁËÈç϶àÏÄÜ£º

ÿÌì´¦ÀíÔ¼340ÒÚ/25TBµÄÊý¾Ý;

90%µÄÊý¾ÝÔÚ100msÄÚÍê³É´¦Àí;

×3h/24hµÄÊý¾Ý»Ø·Å;

˽ÓеÄElasticsearch Cloud;

×Ô¶¯»¯¼à¿ØÓ뱨¾¯¡£

ΪʲôѡÔñDocker/Mesos

ĿǰΪֹ£¬Õâ¸öÊý¾Ýƽ̨¿ÉÒÔ˵Êǹ«Ë¾Õû¸öÁ÷Êý¾ÝµÄÖ÷Òª³öÈë¿Ú£¬°üÀ¨Ë½ÓеÄElasticsearch CloudºÍ¼à¿Ø±¨¾¯Ö®ÀàµÄÊý¾Ý¡£ÄÇôΪʲôѡÔñDocker/Mesos?

Ñ¡ÔñDockerÓÐÁ½´óÔ­Òò¡£µÚÒ»¸öÊÇ´ò°ü£º¶ÔÓÚÔËάÀ´½²£¬ÒµÎñ´òÍê°üÖ®ºó£¬Ã¿ÌìÃæ¶ÔµÄÊÇÓýű¾·Ö·¢µ½»úÆ÷ÉÏʱËù³öÏֵĸ÷ÖÖÎÊÌâ¡£ÒµÎñ°üÊÇÒ»¸ö±È½ÏÉϲãµÄ»°Ì⣬ÕâÀï²»×öÉîÈëµÄÌÖÂÛ£¬ÕâÀï½²µÄ¡°´ò°ü¡±Ö¸Èí¼þµÄRuntime²ã¡£Èç¹ûÓÃDockerµÄ´ò°ü»úÖÆ£¬°Ñ×îÈÝÒ׳öÏÖÎÊÌâµÄRuntime°ü×°³É¾µÏñ²¢·ÅÔÚregistryÀÐèÒªµÄʱºòÄóöÀ´£¬ÄÇôÕû¸öƽ̨×î¶àÖ»Ö´ÐÐÒ»¸öÔ¶³Ì½Å±¾¾Í¿ÉÒÔÁË£¬ÕâÊÇÍŶÓ×î¿´ºÃµÄÒ»¸öÌØÐÔ¡£µÚ¶þ¸öÊÇÔËά£ºDockerÈ¡ÏûÁËÒÀÀµÏÞÖÆ£¬Ö»Òª¹¹½¨Ò»¸öÐéÄâ»·¾³»òÒ»¸öRuntimeµÄ¾µÏñ£¬¾Í¿ÉÒÔÖ±½ÓÀ­È¡µ½·þÎñÆ÷Éϲ¢Æô¶¯ÏàÓ¦µÄ³ÌÐò¡£´ËÍâDockerÔÚÇåÀíÉÏÒ²½ÏΪ¼òµ¥£¬²»ÐèÒª¿¼ÂÇ»·¾³Ð¶Ôز»¸É¾»µÈÎÊÌâ¡£

ÒÔ³£¼ûµÄ¼ÆËã¿ò¼ÜÀ´Ëµ£¬ËüÃDZ¾ÖÊÉÏÈÔÈ»ÊôÓÚÔËÐÐÔÚÆäÉϵÄJobµÄRuntime¡£×ÛºÏÉÏÊöÇé¿ö£¬ÍŶÓÑ¡ÔñÕë¶ÔRuntimeÈ¥´ò°ü¡£

Ñ¡ÔñMesosÊÇÒòΪËü×ã¹»¼òµ¥ºÍÎȶ¨£¬¶øÇÒÓµÓнϳÉÊìµÄµ÷¶È¿ò¼Ü¡£MesosµÄ¼òµ¥ÌåÏÖÔÚ£¬ÓëKubernetesÏà±ÈÆäËùÓй¦Äܶ¼´¦ÓÚÁÓÊÆ£¬ÉõÖÁ»á·¢ÏÖËü±¾Éí¶¼ÊDz»Ö§³Ö·þÎñµÄ£¬Óû§ÐèÒª½øÐжþ´Î¿ª·¢À´Âú×ãʵ¼ÊÒªÇ󣬰üÀ¨ÍøÂç²ã¡£²»¹ý£¬ÕâҲǡºÃÊÇËüµÄÇ¿Ïî¡£Mesos±¾ÉíÌṩÁ˺ܶàSDN½Ó¿Ú£¬»òÕßÊÇÓÐÄ£¿é¼ÓÔØ»úÖÆ£¬¿ÉÒÔ×ö×Ô¶¨ÒåÐ޸쬯½Ì¨¶¨Öƹ¦ÄܱȽÏÇ¿¡£ËùÒÔÓÃMesosµÄ·½°¸£¬ÐèÒª¿¼ÂÇÍŶÓÊÇ·ñ¿ÉÒÔHoldסÕû¸ö¿ª·¢¹ý³Ì¡£

´Ó¿ò¼Ü²ãÃæÀ´¿´£¬Marathon¿ÉÒÔÖ§³ÅÒ»²¿·Ö³¤ÆÚÔËÐеķþÎñ£¬ChronosÔò²àÖØÓÚ¶¨Ê±ÈÎÎñ/Åú´¦Àí¡£

ÒÔÏÂͼ2ÊÇMesosµÄÒ»¸ö¼òµ¥½á¹¹Í¼£º

ͼ2£ºMesos½á¹¹

Êý¾Ýƽ̨µÄ×îÖÕÄ¿±ê¼Ü¹¹ÈçÏÂͼ3Ëùʾ£º

ͼ3£ºÆ½Ì¨Ä¿±ê

×é¼þÈÝÆ÷»¯Ó벿Êð

×é¼þµÄÈÝÆ÷»¯·ÖΪJVMÈÝÆ÷»¯ºÍMesosÈÝÆ÷»¯¡£JVMÈÝÆ÷»¯ÐèҪעÒâÒÔϼ¸·½Ã棺

DZÔÚ´´½¨ÎļþµÄÅäÖö¼Òª×¢Òâ

java.io.tmpdir
-XX:HeapDumpPath
-Xloggc

-Xloggc»á¼Ç¼GCµÄÐÅÏ¢µ½Öƶ¨µÄÎļþÖС£ÏÖÔÚºÜÉÙÓÐÖ±½ÓÓÃXLoggcÅäÖõÄÁË(ÒѾ­ÓÃMXBean·½Ê½Ìæ´úÁË)¡£Èç¹ûÓбȽÏÀϵijÌÐòÊÇͨ¹ý-Xloggc´òÓ¡GCÈÕÖ¾µÄ»°£¬ÄÇôҪ¶îÍâ¹ÒÔØvolumeµ½ÈÝÆ÷ÄÚ¡£

Ê±ÇøÓë±àÂë

¨Cenv TZ=Asia/Shanghai
¨Cvolume /etc/localtime:/etc/localtime:ro
¨Cenv JAVA_TOOL_OPTIONS=¡± -Dfile.encoding=UTF-8 -Duser.timezone=PRC

Ê±ÇøÊÇÁíÒ»¸ö×¢Òâµã¡£ÉÏÃæËùÁеÄÈýÖÖ²»Í¬µÄ·½·¨¶¼¿ÉÒԴﵽĿµÄ£¬ÆäÖеÚÒ»/Èý¸ö¿ÉÒÔдÔÚDockerfileÀҲ¿ÉÒÔÔÚdocker runʱͨ¹ý¨Cenv´«Èë¡£µÚ¶þÖÖÖ»ÔÚdocker runʱͨ¹ývolume·½Ê½¹ÒÔØ¡£ÁíÍ⣬µÚÈýÖÖ¶îÍâÉèÖÃÁË×Ö·û¼¯±àÂë£¬ÍÆ¼öʹÓô˷½Ê½¡£

Ö÷¶¯ÉèÖÃheap

·ÀÖ¹ergonomicsÂÒËãÄÚ´æ

ÕâÊÇDockerÄÚ²¿ÊµÏÖµÄÎÊÌâ¡£¼´Ê¹¸øDockerÉèÖÃÄڴ棬ÈÝÆ÷ÄÚͨ¹ýfreeÃüÁî¿´µ½µÄÄÚ´æºÍËÞÖ÷»úµÄÄÚ´æÊÇÒ»ÑùµÄ¡£¶øJVMΪÁËʹÓ÷½±ã£¬»áĬÈÏÉèÖÃÒ»¸öÈË»ú¹¦ÄÜ»á¸ù¾Ýµ±Ç°»úÆ÷µÄÄÚ´æ¼ÆËãÒ»¸ö¶Ñ´óС£¬Èç¹ûÎÒÃDz»Ö÷¶¯ÉèÖÃJVM¶ÑÄÚ´æµÄ»°£¬ºÜÓпÉÄܼÆËã³öÒ»¸ö³¬¹ý Memory CgroupÏÞÖÆµÄÄڴ棬Æô¶¯¾Íå´µô£¬ËùÒÔÐèҪעÒâÔÚÆô¶¯Ê±¾Í°ÑÄÚ´æÉèÖúá£

CMSÊÕ¼¯Æ÷Òªµ÷Õû²¢ÐжÈ

-XX:ParallelGCThreads=cpus
-XX:ConcGCThreads=cpus/2

CMSÊdz£¼ûµÄÊÕ¼¯Æ÷£¬ËüÉèÖò¢ÐжȵÄʱºòÊÇÈ¡»úÆ÷µÄºËÊýÀ´¼ÆËãµÄ¡£Èç¹û¸øÈÝÆ÷·ÖÅä2¸öCPU£¬JVMÈÔÈ»°´ÕÕËÞÖ÷»úµÄºËÊý³õʼ»¯ÕâЩÏß³ÌÊýÁ¿£¬GCµÄ»ØÊÕЧÂʻήµÍ¡£Ïë¹æ±ÜÕâ¸öÎÊÌâÓÐÁ½µã£¬µÚÒ»µãÊǹÒÔØ¼ÙµÄProcÎļþϵͳ£¬±ÈÈçLxcfs¡£µÚ¶þÖÖÊÇʹÓÃÀàËÆHyperµÄ»ùÓÚHypervisorµÄÈÝÆ÷¡£

MesosÈÝÆ÷»¯ÒªÇó¹Ø×¢Á½Àà²ÎÊý£ºÅäÖòÎÊýºÍrun²ÎÊý¡£

ÐèÒª¹Ø×¢µÄÅäÖòÎÊý

MESOS_systemd_enable_support
MESOS_docker_mesos_image
MESOS_docker_socket
GLOG_max_log_size
GLOG_stop_logging_if_full_disk

MesosÊÇÅäÖòÎÊý×î¶àµÄ¡£ÔÚÎïÀí»úÉÏ£¬MesosĬÈÏʹÓÃϵͳµÄSystemd¹ÜÀíÈÎÎñ£¬Èç¹û°ÑMesosͨ¹ýDocker runµÄ·½Ê½Æô¶¯ÆðÀ´£¬Óû§¾ÍÒª¹Øsystemd_Enable_support£¬·ÀÖ¹Mesos SlaveÀ­È¡ÈÝÆ÷ÔËÐÐʱÊý¾ÝÔì³É»ìÂÒ¡£

µÚ¶þ¸öÊÇDocker_Mesos_Image£¬Õâ¸öÅäÖøæËßMesos Slave£¬µ±Ç°ÊÇÔËÐÐÔÚÈÝÆ÷Äڵġ£ÔÚÎïÀí»ú»·¾³Ï£¬Mesos Slave½ø³Ìå´µôÖØÆô£¬¡¢¾Í»á¸ù¾Ýexecutor½ø³Ì/ÈÝÆ÷µÄÃû×Ö×örecovery¶¯×÷¡£µ«ÊÇÔÚÈÝÆ÷ÄÚ£¬å´»úºóexecutorÈ«²¿»ØÊÕÁË£¬ÖØÆôÈÝÆ÷£¬SlaveÈÏΪÊÇÒ»¸öл·¾³£¬Ìø¹ý¸²¸Ç¶¯×÷²¢×Ô¶¯Ï·¢ÈÎÎñ£¬ËùÒÔÈÎÎñÓпÉÄÜ»á·¢ÖØ¡£

Docker_Socket»á¸æËßMesos£¬DockerÖ¸¶¨µÄÔ¶¶ËµØÖ·»ò±¾µØÎļþ£¬ÊÇĬÈϹҵ½MesosÈÝÆ÷ÀïµÄ¡£Óû§Èç¹ûÖ±½ÓÖ´ÐÐÎļþ£¬»áµ¼ÖÂÎļþ´íÎó£¬ÏûÏ¢µ÷ȡʧ°Ü¡£Õâ¸öʱºòÍÆ¼öÒ»¸ö¼òµ¥µÄ°ì·¨£º°Ñµ±Ç°ÎïÀí»úµÄĿ¼¹Òµ½ÈÝÆ÷Öв¢µ¥¶ÀÃüÃû£¬Ï൱ÓÚÔÚÈÝÆ÷ÄÚÖ±½Ó·ÃÎÊÕû¸öÎïÀí»úµÄ·¾¶£¬ÔÙÖØÐÂÖ¸¶¨ËüµÄµØÖ·£¬ÕâÑùÿ´ÎÒ»Óб䶯Mesos¾ÍÄܹ»·¢ÏÖ£¬×ö×Ô¼ºµÄÖ¸Áî¡£

ºóÃæÁ½¸öÊÇMesos LoggingÅäÖ㬵÷ÕûÉú³ÉloggingÎļþµÄһЩÐÐΪ¡£

ÐèÒª¹Ø×¢µÄrun²ÎÊý

¨Cpid=host

¨Cprivileged

¨Cnet=host (optional)

root user

Æô¶¯SlaveÈÝÆ÷µÄʱºò×îºÃ²»¼ÓPid Namespace£¬ÒòΪÈÝÆ÷ÄÚPid=1µÄ½ø³ÌÒ»°ã¶¼ÊÇÄãµÄÓ¦ÓóÌÐò£¬Ò×µ¼ÖÂ×Ó½ø³Ì¶¼ÎÞ·¨»ØÊÕ£¬»òÕß²ÉÓÃtiniÒ»ÀàµÄ½ø³ÌÆô¶¯Ó¦ÓôﵽÏàͬµÄÄ¿µÄ¡£¨CprivilegedºÍroot userÖ÷ÒªÊÇÕë¶ÔMesosµÄ³Ö¾Ã»¯¾í¹¦ÄÜ£¬·ñÔòÎÞ·¨mountµ½ÈÝÆ÷ÄÚ£¬¨Cnet=hostÊdzöÓÚÍøÂçЧÂʵĿ¼ÂÇ£¬±Ï¾¹Ô´ÉúµÄbridgeģʽЧÂʱȽϵ͡£

ͼ4£ºÈ¥ÄĶùÊý¾Ýƽ̨²¿ÊðÁ÷³Ìͼ

ÉÏͼ4¾ÍÊÇÈ¥ÄĶùÊý¾Ýƽ̨²¿ÊðµÄÁ÷³Ìͼ¡£

»ùÓÚMarathonµÄStreamingµ÷¶È

ÄÃSpark on Mesos¼Ç¼×Ó£¬¼´Ê¹ÊÇ»ùÓÚSparkµÄMarathonµ÷¶È£¬Ò²ÐèÒªÓû§¿ª·¢Ò»¸öFrameworks¡£ÉÏÉú²úÐèÒªºÜ¶à´úÂ룬ÍŶÓ֮ǰ´úÂë¼Óµ½½«½üһǧ£¬ÓÃÀ´×¨ÃŽâ¾öSparkÔËÐÐÔÚMasterÖеÄÎÊÌ⣬µ«ÊÇÆäÖÐÒ»¸öÈí¼þ¾­³£Åܵ½Master£¬¶Ôÿһ¸ö¿ò¼ÜÐ´ÖØ¸´ÐÔ´úÂ룬¶øÇÒÄÚ²¿Âß¼­ºÜÄѸ´Óã¬ËùÒÔÍŶӿ¼ÂǰÑÉϲãµÄ¶«Î÷È«¶¼ÅÜÔÚÒ»¸öͳһ¿ò¼ÜÀÀýÈçºóÃæµÄÔËάºÍÀ©ÈÝ£¬¶¼Õë¶ÔÕâÒ»¸ö¿ò¼Ü×ö¾Í¿ÉÒÔÁË¡£ÍŶÓ×îÖÕÑ¡ÔñÁËMarathon£¬°ÑSpark×÷ΪMarathonµÄÒ»¸öÈÎÎñ·¢ÏÂÈ¥£¬ÈÃSparkÔÚMarathonÀï×ö·Ö·¢¡£

³ýÈ¥Ìṩά±ê×¼»¯ºÍ×Ô¶¯»¯Í⣬»ùÓÚSparkµÄMarathon»¹¿ÉÒÔ½â¾öMesos-DispatcherµÄһЩÎÊÌ⣺

ÅäÖò»ÄÜÕýȷͬ²½;ÕâÒ»¿é¸üÐÂÆµÂÊÌØ±ðÂý£¬Ä¬ÈÏËÙ¶ÈÒ²ºÜÂý£¬ËùÒÔÐèÒª×Ô¼ºÀ´Î¬»¤Ò»¸ö°æ±¾¡£µÚÒ»¸öÅäÖò»ÄÜÕýȷͬ²½£¬ÐèÒªÉèÖÃһЩ²ÎÊýÐÅÏ¢¡¢SparkÄں˺ËÊý¼°ÄÚËðÖ®À࣬ÕâÀïËüÖ»»áÑ¡ÔñÐԵسéÈ¡²¿·ÖÅäÖ÷¢ÏÂÈ¥¡£

»ùÓÚattributesµÄ¹ýÂ˹¦ÄÜȱʧ;¶ÔÓÚÏÖÔڵĻ·¾³£¬ËùÉèÖõÄAttributes¹ýÂ˹¦ÄÜÃ÷ÏÔȱʧ£¬²»¹Ü»úÆ÷ÊÇ·ñרÓûòÓÐûÓÐÌØÊâÅäÖã¬ÉÏÀ´¾Í·¢£¬ºÜÈÝÒ×Õ¼ÂúESµÄ»úÆ÷¡£

°´role/principal½ÓÈëMesos;Õë¶Ô²»Í¬µÄÒµÎñÏß×ö×ÊÔ´Åä±Èʱ£¬ÎÞ·¨¶ÔÓ¦²»Í¬µÄ½Çɫȥ½ÓÈëMesos¡£

²»ÄÜre-registery;¿ò¼Ü±¾Éí²»ÄÜ֨ע²á£¬Èç¹û¿ò¼ÜÅܵ½Ò»°ë¹ÒµôÁË£¬ÖØÆôÖ®ºó֮ǰµÄÈÎÎñ¾ÍÖ±½ÓºöÂÔ²»¹Ü£¬ÐèÒªÊÖ¹¤KillµôÕâ¸ö¿ò¼Ü¡£

²»Äܶ¯Ì¬À©ÈÝexecutor¡£×îºóÊDz»ÄÜÀ©ÈÝ¡¢¶¯Ì¬µ÷Õû£¬ÁÙʱ¸Ä¶¯µÄ»°Ö»ÄÜÖØ·¢ÈÎÎñ¡£

Õû¸ö¹ý³Ì±È½Ï¼òµ¥£¬ÈçÏÂͼ5Ëùʾ£º

ͼ5£ºÌæ´úSpark Mesos Dispatcher

²»¹ý»¹ÊÇÓÐһЩÎÊÌâ´æÔÚ£º

Checkpoint & Block

¶¯Ì¬Ô¤Áô & ³Ö¾Ã»¯¾í

setJars

ÇåÀíÎÞЧµÄ¾í

¹ØÓÚCheckpoint&Block£¬Í¨¹ý¶¯Ì¬Ô¤ÁôµÄ¹¦ÄÜ¿ÉÒÔ°ÑÕâ¸öÈÎÎñÖ±½Ó¡°¶¤ËÀ¡±ÔÚÕą̂»úÆ÷ÉÏ£¬Èç¹ûËü¹ÒµÄ»°¿ÉÒÔÖ±½ÓÔÚÔ­»úÆ÷ÉÏÖØÆô£¬²¢¹ÒÔØvolume¼ÌÐø¹¤×÷¡£Èç¹û²»ÓÃËüÔ¤ÁôµÄ»°£¬¿ÉÄܵ÷¶Èµ½ÆäËû»úÆ÷ÉÏ£¬ÕÒ²»µ½Êý¾ÝBlock£¬Ôì³ÉÊý¾ÝµÄ¶ªÊ§»òÕßÖØ¸´´¦Àí¡£

³Ö¾Ã»¯¾íÊÇMesosÌṩµÄ¹¦ÄÜ£¬ÐèÒª¿¼ÂÇËüµÄÊý¾ÝÓÀ´æ£¬MesosÌṩÁËÒ»ÖÖ·½°¸£º°Ñ±¾µØ´ÅÅÌÉý¼¶³ÉÒ»¸öĿ¼£¬°ÑÕâ¸ö×ªÒÆµ½DockerÀÿ´ÎдÊý¾Ýµ½±¾µØÊ±£¬ÄÜÖ±½Óͨ¹ý³Ö¾Ã»¯¾íÀ´Î¬»¤£¬ÃâÈ¥ÊÖ¹¤Î¬»¤µÄ³É±¾¡£µ«ËüĿǰÓÐÒ»¸öÎÊÌ⣬Èç¹ûÈÎÎñÒѱ»»ØÊÕ£¬Ëü³Ö¾Ã»¯¾íµÄÊý¾ÝÊDz»»á×Ô¼ºÉ¾µôµÄ£¬ÐèҪдһ¸ö½Å±¾¶¨Ê±ÂÖѲ²¢¶ÔӦɾµô¡£

ÁÙʱÎļþ

java.io.tmpdir=/mnt/mesos/sandbox

spark.local.dir=/mnt/mesos/sandbox

Èç¹ûʹÓó־û¯¾í£¬ÐèÒªÐÞ¸ÄÕâÁ½¸öÅäÖ㬰ÑÕâһЩÁÙʱÎļþд½øÈ¥£¬±ÈÈçshuffleÎļþµÈ¡£Èç¹ûÅäÖó־û¯¾íµÄ»°£¬Óû§Ò²¿ÉÒÔд³Ö¾Ã»¯¾íµÄ·¾¶¡£

Coarse-Grained

SparkÓÐÁ½ÖÖ×ÊÔ´µ÷¶Èģʽ£ºÏ¸Á£¶ÈºÍ´ÖÁ£¶È¡£Ä¿Ç°ÒѾ­²»Ì«ÍƼöϸÁ£¶ÈÁË£¬¿¼Âǵ½Ï¸Á£¶È»á¾¡¿ÉÄܵİÑËùÓÐ×ÊÔ´Õ¼Âú£¬ÈÝÒ×µ¼ÖÂMesos×ÊÔ´±»ºÄ¾¡£¬ËùÒÔÕâ¸öʱºò¸üÇãÏòÑ¡Ôñ´ÖÁ£¶Èģʽ¡£

ͼ6£ºStorm on Marathon

ÉÏͼ6չʾÁË»ùÓÚStormµÄMarathonµ÷¶È£¬FlinkÒ²ÊÇÈç´Ë¡£½áºÏÏßÉϵÄÔËάºÍdebug£¬ÐèҪעÒâÒÔϼ¸·½Ã棺

Ô´ÉúWeb Console

Ëæ»ú¶Ë¿Ú

OpenRestyÅäºÏ·ºÓòÃû

ĬÈÏÔ´ÉúWeb Console£¬Ç°¶ËÅäÖÃת·¢£¬Ö±½Ó·ÃÎʹ̶¨ÓòÃû¡£

Filebeat + Kafka + ELK

¶à°æ±¾×·ËÝ

ÈÕ³£ÅÅ´í

Òì³£¼à¿Ø

´ó²¿·ÖWebUIÉÏ¿´µ½µÄ¶¼ÊÇĿǰÄÚ²¿µÄÊý¾Ý´¦ÀíÇé¿ö£¬¿ÉÒÔͨ¹ýELK²éѯÐÅÏ¢¡£Èç¹ûÈÎÎñÔø¾­ÔËÐÐÔÚ²»Í¬°æ±¾µÄSparkÉÏ£¬¿ÉÒÔ°Ñ¶à°æ±¾µÄÈÕÖ¾¶¼×·×ÙÆðÀ´£¬°üÀ¨ÈÕ³£¡¢ÎÊÌâ¼à¿ØµÈ£¬Ö±½ÓÄÃÀ´Ê¹Óá£

Metrics

µÚÈý¸öÐèҪעÒâµÄ¾ÍÊÇÖ¸±ê¡£±ÈÈçSpark £¬ÐèÒªÅäºÏMetrics°ÑÊý¾ÝÔ´´ò³öÀ´¾ÍÐС£

ELK on Mesos

Ŀǰƽ̨ÒÑÓнü50¸ö¼¯Èº£¬Ô¼100TB+ÒµÎñÊý¾ÝÁ¿£¬¸ß·åÆÚ1.2k QPSÒÔ¼°Ô¼110¸ö½Úµã£¬ElasticsearchÐèÇóÖð²½Ôö¶à¡£

ͼ7£ºELK on Mesos

ÉÏͼ7ÊÇELK on Mesos½á¹¹Í¼£¬Ò²ÊÇÍŶӵÄÎÞÄÎ֮ѡ¡£ÒòΪMesos»¹ÔÝʱ²»Ö§³Ömulti-role framework¹¦ÄÜ£¬ËùÒÔÑ¡ÔñÁËÕâÖÖÕÛÖеķ½Ê½À´×ö¡£ÔÚÒ»¸öMarathonÀ¸ù¾ÝÒµÎñÏßÉèÖúÃQuotaºó£¬ÓÃÒµÎñÏßÖØÐ·¢Ò»¸öеÄMarathon½ÓÈë½øÈ¥¡£¶ÔÓÚ¶à×â»§À´½²£¬¿ÉÒÔÀûÓÃKubernetes×öºóÐøµÄ×ÊÔ´¹Ü¿ØºÍ×ÊÔ´ÉêÇë¡£

²¿ÊðESÒÔºó£¬ÓÐÒ»¸ö¹ØÓÚ·þÎñ·¢ÏÖµÄÎÊÌ⣬¿ÉÒÔÈ¥×¢²áÒ»¸öcallback£¬Marathon»á·µ»ØÐÅÏ¢£¬½âÎö³ömaster/slave½ø³ÌËùÔڵĻúÆ÷ºÍ¶Ë¿Ú£¬ÅäºÏÐÞ¸ÄHaproxy×öÒ»²ãת·¢£¬Ï൱ÓڰѺó¶ËÕû¸öTCPµÄÁ¬½Ó¶¼×öÒ»¸öͨ·¡£ES¸úSpark²»ÍêÈ«Ïàͬ£¬Spark´«Êä±¾ÉíÁ÷Á¿¾Í±È½Ï´ó£¬¶øESÆô¶¯Ê±ÐèÒªÖ÷¶¯ÁªÏµMasterµØÖ·£¬ÔÙͨ¹ýMaster»ñÈ¡ÏàÓ¦¼¯Èº£¬ºóÃæÔÙ×öP2P£¬Á÷Á¿±È½ÏµÍ£¬Ò²²»ÊÇÒ»¸ö³¤Á´½Ó¡£

¼à¿ØÓëÔËά

Õⲿ·Ö°üÀ¨ÁËStreaming¼à¿ØÖ¸±êÓ뱨¾¯¡¢ÈÝÆ÷¼à¿ØÖ¸±êÓ뱨¾¯Á½·½Ãæ¡£

Streaming¼à¿ØÖ¸±êÓ뱨¾¯

Streaming¼à¿Øº¬ÍØÆË¼à¿ØºÍÒµÎñ¼à¿ØÁ½²¿·Ö¡£

StreamingÍØÆË¼à¿Ø

ÒµÎñ¼à¿Ø

Kafka Topic Lag

´¦ÀíÑÓ³Ùmean90/upper90

Spark scheduler delay/process delay

Search Count/Message Count

Reject/Exception

JVM

ÍØÆË¼à¿Ø°üÀ¨Êý¾ÝÔ´ºÍÕû¸öÍØÆËÁ÷³Ì£¬ÐèÒªÓû§×Ô¼ºÈ¥ÕûÀíºÍ¹¹½¨£¬¸üеÄʱºò¾ÍÄܹ»ÖªµÀÕâ¸ö¶«Î÷ÒÀÀµË­¡¢ÊÇ·ñÒÀÀµÏßÉÏ·þÎñ£¬Èç¹ûÖÐ;ͣµÄ»°»áÔì³É»úÆ÷¹ÊÕÏ¡£ÒµÎñ¼à¿ØµÄ»°£¬µÚÒ»¸ö¾ÍÊÇTopic Lag£¬Topic Lagÿһ¸ö²¨¶¯¶¼ÊDz»Ò»ÑùµÄ£¬ÓÃÕâÖÖ·½Ê½¼à¿Ø»áƵ·±±¨¾¯£¬90%µÄÖÐλÊý¶¼ÊÇÂäÔÚ80¡ª100ºÁÃ뷶ΧÄÚ£¬¾Í¿ÉÒÔ¼à¿Øµ½Õû¸ö·¶Î§¡£

ÈÝÆ÷¼à¿ØÖ¸±êÓ뱨¾¯

ÈÝÆ÷¼à¿ØÉϹØ×¢ÒÔÏÂÈý·½Ã棺

Google cAdvisor×ã¹»ÓÐЧ

mount rootfs¿ÉÄܵ¼ÖÂÈÝÆ÷ɾ³ýʧ°Ü #771

¨Cdocker_only

¨Cdocker_env_metadata_whitelist

Statsd + Watcher

»ùÓÚGraphiteµÄǧÍò¼¶Ö¸±ê¼à¿ØÆ½Ì¨

Nagios

ÈÝÆ÷ÕâÒ»¿é±È½Ï¼òµ¥£¬ÀûÓÃDocker²¢ÅäºÏMesos£¬ÔÙ°ÑMarathonµÄIDץȡ³öÀ´¾Í¿ÉÒÔÁË¡£ÎÒÃÇÕâ±ßÔÚʵ¼ùµÄ¹ý³Ì·¢ÏÖÒ»¸öÎÊÌ⣬ÒòΪStatsd WatcherÈÝÒ׳öÏÖÎÊÌ⣬ÄãÖ±½ÓÓÃDockerµÄʱºòËü»á±¨Ò»Ð©´íÎó³öÀ´£¬Õâ¸öÎÊÌâ¾ÍÊÇStatsd Watcher°Ñ·¾¶¸ø¹ÒÁ˵ÄÔ­Òò¡£Ä¿Ç°ÎÒÃÇÆ½Ì¨¾ÍÔøÓöµ½¹ýÒ»´Î£¬ÉçÇøÀïÃæÒ²ÓÐÈËÆØ£¬²»¹ý¸´ÏÖÂʱȽϵ͡£ÓõÄʱºòÈç¹û·¢ÏÖÕâ¸öÎÊÌâ°ÑStatsd WatcherÖ±½ÓÍ£µô¾ÍºÃ¡£Ö¸±êµÄ»°£¬Ã¿Ì¨»úÆ÷ÉÏ·ÅÒ»¸östatsdÔÙ·¢Ò»¸öºǫ́µÄWorker£¬±¨¾¯Æ½Ì¨Ò²ÊÇÕâ¸ö¡£

ÆäʵÕë¶ÔDocker¼à¿ØµÄ»°£¬»¹ÊÇ´æÔÚ×ÅһЩÎÊÌ⣺

»ù´¡¼à¿ØÑ¹Á¦

Êý¾ÝÅòÕÍ

À¬»øÖ¸±êÔö¶à

´óÁ¿µÄͨÅä·ûµ¼ÖÂÊý¾Ý¿âѹÁ¦½Ï¸ß

µ¥¸öÈÎÎñµÄÈÝÆ÷ÉúÃüÖÜÆÚ

·¢²¼

À©ÈÝ

Òì³£Í˳ö

Ê×ÏÈÖ÷ÒªÊÇ¼à¿ØÏµÍ³Ñ¹Á¦±È½Ï´ó¡£Ô­À´¼à¿ØÐéÄâ»úʱ¶¼ÊÇÕë¶Ôÿһ¸öÐéÄâ»úµÄ£¬Ö»ÒªÐéÄâ»ú²»É¾µÄ»°Êdz¤ÆÚ»ã±¨£¬Ö¸±êÃû¹Ì¶¨£¬µ«ÔÚÈÝÆ÷ÖÐÕâ¸ö¶«Î÷Ò»Ö±Ôڱ䣬ËüÔÚÕâÌ×ÌåϵÏÂÓÃÖ¸±ê²¢ÔÚ±¾µØÖ®Í⽨һ¸öĿ¼´æÎļþ£¬ËùÒÔÔÚÕâÖÖ´æ´¢»úÖÆÏÂÈ¥´æÈÝÆ÷µÄÖ¸±ê²»ºÏÊÊ¡£Ö÷ÒªÎÊÌâÊÇÊý¾ÝÅòÕͱȽÏÀ÷º¦£¬¿ÉÄÜÒ»¸öÈÝÆ÷»áÆðÃû£¬ÆðÃû¶à´ÎÖ®ºó£¬ÔÚGraphiteÄDZ߶ÔÓ¦ÁËÓÐÊ®¶à¸öÖ¸±ê£¬ÏñÕâÖÖ¶¼ÊÇÔ¤Éú³ÉµÄ¼à¿ØÎļþ¡£±ÈÈç˵¶¨ÒåÿһÃëÖÓÒ»¸öÊý¾Ýµã£¬Òª±£´æÒ»Ä꣬Õâ¸öʱºòËü¾Í»á¸ù¾ÝÿÄêÓжàÉÙÃëÉú³ÉÒ»¸öRRDÎļþ·ÅÄǶù¡£Õⲿ·ÖÖ¸±êÈç¹û°´ÕÕÏÖÓбê×¼µÄ»°£¬¿ÉÄÜÈÝÆ÷µÄÉúÃüÖÜÆÚ½öÓм¸Ììʱ¼ä£¬²»ÊÊÓÃÕâÖÖ»úÖÆ¡£²âÊÔÏàͬµÄÖ¸±êÁ¿£¬¹«Ë¾´æ´¢µÄ·½Ê½Ïà¶ÔÀ´Ëµ±ÈGraphiteºÃÒ»µã¡£ÒòΪGraphiteÊÇ»ùÓÚÎļþϵͳÀ´×öµÄ£¬µÚÒ»¸öÓÅ»¯Ö¸±êÃû£¬Ä¿Â¼Òª×ª´æµ½Êý¾Ý¿âÀï×öһЩË÷Òý¼ÓËٺͲéѯ£¬µ«ÊÇÒòΪÈÝÆ÷Õâ±ßÏà¶ÔͨÅä·û±È½Ï¶à£¬²»ÄÜÖ±½ÓµÃÖª¾ßÌå¶ÔÓ¦µÄID£¬Ö»ÄÜͨÅä·û²éѯ×ö¾ÛºÏ¡£ÒòΪ³¤ÆÚµÄͨÅä·ûÔÚ×Ö·û´®µÄË÷ÒýÉÏ»¹ÊÇÒ×ÓÚʹÓõģ¬ËùÒÔÏÖÔÚËãÊÇÕÛÖеÄ×ö·¨£¬°ÑһЩ³£ÓõIJéѯ½á¹û¡¢Ä¿Â¼·Åµ½Àï±ß¡£

ÁíÒ»¸öÊÇÈÝÆ÷µÄÉúÃüÖÜÆÚ¡£¿ÉÒÔ×öһЩÉ󼯻òÕß±ä¸üµÄ°æ±¾£¬ÔÚMesos²ãÃæ»ùÓÚMarathonÈ¥¼à¿Ø£¬·¢ÏÖÕâЩ״̬ºó´òÉϱê¼Ç£ºµ±Ç°ÊÇÄÄÒ»¸öÈÝÆ÷»òÕßÄÄÒ»¸öTASK³öÁËÎÊÌ⣬¶ÔÓ¦À©ÈݺͼǼÏÂÀ´¡£»¹ÓÐDocker×Ô¼ºµÄÎÊÌ⣬ÕâÑùºóÃæ×öÕû¸ö¼Ç¼ʱ»áÓÐÒ»·ÝÏà¶Ô±È½ÏÍêÕûµÄTASK-ID¡£

   
1861 ´Îä¯ÀÀ       27
Ïà¹ØÎÄÕÂ

ÔÆ¼ÆËãµÄ¼Ü¹¹
¶ÔÔÆ¼ÆËã·þÎñÄ£ÐÍ
ÔÆ¼ÆËãºËÐļ¼ÊõÆÊÎö
Á˽âÔÆ¼ÆËãµÄ©¶´
Ïà¹ØÎĵµ

ÔÆ¼ÆËã¼ò½é
ÔÆ¼ÆËã¼ò½éÓëÔÆ°²È«
ÏÂÒ»´úÍøÂç¼ÆËã--ÔÆ¼ÆËã
ÈídzÎöÔÆ¼ÆËã
Ïà¹Ø¿Î³Ì

ÔÆ¼ÆËãÔ­ÀíÓëÓ¦ÓÃ
ÔÆ¼ÆËãÓ¦ÓÃÓ뿪·¢
CMMIÌåϵÓëʵ¼ù
»ùÓÚCMMI±ê×¼µÄÈí¼þÖÊÁ¿±£Ö¤