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

1Ôª 10Ôª 50Ôª





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



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Model Center   Code  
»áÔ±   
   
 
     
   
 ¶©ÔÄ
  ¾èÖú
Ambari½Ó¹ÜÏßÉÏHadoopÓÎÏ·Êý¾Ý¼¯ÈºÊµ¼ù
 
  3105  次浏览      27
 2018-6-8 
 
±à¼­ÍƼö:

±¾ÎÄÀ´×ÔÓÚinfoq.com£¬½éÉÜÉú²ú»·¾³ÖÐHadoop¼¯ÈºÏÖ×´¡¢AmbariµÄ¹Ø¼ü¼¼Êõ£¬Ambari¹ÜÀí¼à¿ØÏßÉÏHadoop¼¯ÈºµÄ¼¼Êõ·½°¸£¬ÏßÉϽӹܹý³ÌÖеÄÎÊÌâºÍ½â¾ö·½Ê½¡£

Éú²ú»·¾³ÖÐHadoop¼¯ÈºÏÖ×´

Ê×ÏȽéÉÜÎÒÃÇÉú²ú»·¾³ÖÐHadoop¼¯ÈºµÄÏÖ×´£¬Hadoop¼¯ÈºÖ÷Òª³Ðµ£ÁËÊý¾Ý½ÓÈë´æ´¢¡¢ÀëÏß¼ÆËãµÄÖ°Ôð£¬Í¬Ê±ÌṩÆäÉÏÊý¾Ýµ÷¶ÈµÈ×ÔÑÐϵͳµÄ»ù´¡·þÎñ¡£Éú²ú»·¾³ÖÐHadoopʹÓõİ汾ÊÇv2.7.3£¬ÏÂÃæ½éÉÜÆäÖ÷Òª×é¼þ¡£

Ê×ÏÈHDFS²ÉÓÃÁËHA with QJMµÄ¸ß¿ÉÓüܹ¹£¬¼´²ÉÓÃStandby NamenodeÈȱ¸¡¢¶à½ÚµãЭͬͬ²½Active/Standby Namenodes(²»Í¬ÎïÀí»úÆ÷)Ö®¼äÔªÊý¾ÝÈÕÖ¾µÄ·½Ê½£¬½µµÍ֮ǰµ¥µãNamenodeÒòΪ¹ÊÕ϶øµ¼Öµļ¯Èº·þÎñ²»¿ÉÓõÄʱ¼ä£¬Ìá¸ß¼¯ÈºµÄ¿ÉÓÃÐÔ¡£²¢ÇÒÈçÏÂͼÖУ¬Active/StandBy Namenode½Úµã¸÷×ÔÔËÐÐÁË»ùÓÚZookeeper¼¯Èº×Ô¶¯¼à¿ØNamenodes״̬¡¢×Ô¶¯Ñ¡¾Ù±£Ö¤¼¯ÈºNamenodeÖ»ÓÐÒ»¸ö´¦ÓÚActive״̬µÄZKFailoverController¡£

ͼ1 HDFS HA with QJM

½Ó×ÅÊÇÓÃÓÚ¼¯Èº×ÊÔ´·ÖÅäÓë×÷Òµµ÷¶ÈµÄYarn¿ò¼Ü£¬ÎÒÃDzÉÓÃÁËYarnµÄFairScheduler¹«Æ½µ÷¶È²ßÂÔ£¬²¢ÇÒ¸ù¾Ý²»Í¬ÒµÎñÏß¼¯ÈºÊ¹Óóɱ¾Í¶ÈëÕ¼±È£¬»®·ÖÁË×÷ÒµÖ´ÐжÓÁÐÒÔ¼°¶ÓÁÐʹÓõÄ×ÊÔ´³Ø£¬¸÷¸ö×ÊÔ´³ØºÏÀí¶¨ÒåÁË×î´óͬʱÔËÐÐ×÷ÒµÊý¡¢Min/Max¿É²ÎÓë·ÖÅäµÄ×ÊÔ´(VcoreÊý¡¢mem´óС)¡¢¶¯Ì¬¾ºÕùÆäËû¿ÕÏжÓÁÐ×ÊÔ´³Ø×ÊÔ´È¨ÖØµÈ²ÎÊý£¬³ý¿ªÒµÎñÏßʹÓõĸ÷¶ÓÁÐÖ®Í⣬»¹¶¨ÒåÁËDefaultµÄ¹²Ïí×÷Òµ¶ÓÁУ¬·ÖÅäÆä½ÏСµÄ×ÊÔ´ÓÃÓÚ±£Ö¤ÆäËûһЩÀýÈ缯ȺÊý¾ÝµÄ¹²Ïí²éѯµÈÓ¦Óá£

ͼ2 YARN FairScheduler ×ÊÔ´·ÖÅäͼ

¼¯ÈºETLÀëÏß×÷Òµ´¦ÀíÓëÊý¾Ý²éѯÎÒÃÇÖ÷Òª»ùÓÚHive£¬HiveÊÇSQL on HadoopµÄÊý¾Ý²Ö¿â¹¤¾ß£¬¾ß±¸Á¼ºÃµÄÀàËÆÒÔ¹ØÏµÐÍÊý¾Ý¿âµÄ·½Ê½´æ´¢¹ÜÀí½ÓÈëÊý¾Ý¡¢Ìṩ¶ÔÍâÊý¾Ý´¦Àí½Ó¿ÚÌØÐÔ£¬ÒÔHiveΪ»ù´¡ÎÒÃÇ´òÔìÁË´óÊý¾ÝÖÐÐÄ£¬°²È«¡¢¼ò½à¡¢±ã½ÝµØÍ³Ò»½ÓÈëÊý¾ÝÒÔ¼°¶ÔÍâͳһÌṩÊý¾Ý´¦Àí»ù´¡·þÎñ¡£²¢ÇÒÔÚ·¢Õ¹¹ý³ÌÖУ¬ÎªÁËÌá¸ßÊý¾ÝÖÐÐÄ·þÎñˮƽ£¬ÎÒÃǽ«Hive°æ±¾Éý¼¶ÖÁv2.1£¬ÆäHiveServer2·þÎñÄܹ»¸üºÃÖ§³Ö²¢·¢ºÍÉí·ÝÈÏÖ¤ÒÔ¼°¿ª·ÅAPI¿Í»§¶Ë(ÈçODBCºÍJDBC)£¬ÇÒÆä¸üºÃÖ§³ÖÄÚ´æ¼ÆËã(TEZ+LLAP)ҲΪºóÐøÉý¼¶ÌṩÁË»ù´¡¡£

ͼ3 Hive 2.1 Ó¦Óüܹ¹Í¼

³ý¿ªÉÏÊöÖ÷Òª½éÉܵÄHadoop¼¯ÈºÖÐ×é¼þÓ¦ÓÃÖ®Í⣬ÎÒÃÇ»¹ÓаüÀ¨Flume+Kafka·Ö²¼Ê½ÈÕÖ¾²É¼¯Óë¶ÓÁÐÊý¾Ý·Ö·¢µÄÍêÕûÊý¾ÝÁ÷¼Ü¹¹£¬¸Ã¼Ü¹¹Ê¹ÓÃZookeeper¼¯Èº×öЭͬ·þÎñºÍÅäÖùÜÀí£¬ÔÚÕâÀﲻһһ׸Êö¡£

×îºóÊÇHadoop¼¯ÈºÔ­ÓÐµÄ¼à¿ØºÍ¸æ¾¯Âß¼­£¬ÔÚ½ø³Ì¼à¿ØÕâ¿éÎÒÃDzÉÓÃCrontabÖÜÆÚÐÔ´ÓÖ÷¿Ø½Úµãssh ÖÁ¼¯ÈºÃ¿¸ö½Úµã£¬ÂÖѯ¼ì²éÿ¸öÖ÷Òª½ø³ÌµÄÔËÐÐ×´¿ö£¬Ò»µ©·¢ÏÖ½ø³Ì¹ÒµôÔò¸æ¾¯ÇÒÖØÐÂÆô¶¯£»ÔÚÐÔÄÜ¼à¿ØÕâ¿é(ÀýÈçYarnÈÎÎñ¶Ñ»ýÊý)ÎÒÃÇÒ²ÊDzÉÓÃCrontabÖÜÆÚÐԵĵ÷×é¼þ¼à¿Ø½Ó¿Ú»ñÈ¡Ïà¹ØMertrics ÊýÖµ£¬¸æ¾¯Òì³£ÖµµÄ·½Ê½¡£

ÖÁ´ËÎÒÃÇÒѾ­ÊáÀíÍê±ÏÉú²ú»·¾³ÖÐHadoop¼¯ÈºÏÖ×´£¬ÆäÉÏÖ§³ÅµÄÒµÎñÖ®¹ã¡¢Ê¹ÓÃÈËÖ®¶à£¬¾Í¾ö¶¨ÁËÎÒÃÇAmbariÏßÉϽӹܼ¯Èº²»ÈÝÓÐʧ£¬ÇÒÐèÒª×î´óÏ޶ȽµµÍ½Ó¹Ü¹ý³ÌÖжÔÒµÎñÔì³ÉµÄÓ°Ïì¡£

AmbariÏà¹Ø¼¼Êõ½éÉÜ

½ÓÏÂÀ´ÎÒÃǽ«¼òµ¥½éÉÜApache AmbariÏà¹Ø¼¼Êõ£¬AmbariÊÇHortonworks¹±Ï׸øApache¿ªÔ´¹ÜÀíHadoop¼¯ÈºµÄ¶¥¼¶¿ªÔ´ÏîÄ¿ÉÏÎÄÒÑÌá¼°£¬Ö÷ÒªÓÃÓÚHadoop¼¯ÈºµÄ²¿Êð¡¢¼à¿ØÓë¸æ¾¯£¬AmbariÕûÌå¼Ü¹¹ÈçÏÂͼ£¬Ö÷ÒªÓÐ5²¿·Ö×é³É£º

ͼ4 AmbariÕûÌå¼Ü¹¹Í¼

Ambari Web: Óû§½»»¥½çÃæ£¬Í¨¹ýHTTP·¢ËÍʹÓÃRest ApiÓëAmbari Server½øÐн»»¥¡£

Ambari Server: Web·þÎñÆ÷£¬ÓÃÓÚºÍWeb¡¢Agent½øÐн»»¥²¢ÇÒ°üº¬ÁËAgentµÄËùÓпØÖÆÂß¼­£¬Server²úÉúµÄÊý¾Ý´æ´¢ÔÚDBÖС£

Ambari Agent: ÊØ»¤½ø³Ì£¬Ö÷Òª°üº¬½Úµã״̬ÓëÖ´Ðнá¹ûÐÅÏ¢»ã±¨ServerÒÔ¼°½ÓÊÜServer²Ù×÷ÃüÁîµÄÁ½¸öÏûÏ¢¶ÓÁС£

Host: °²×°Êµ¼Ê´óÊý¾Ý·þÎñ×é¼þµÄÎïÀí»úÆ÷£¬Ã¿Ì¨»úÆ÷¶¼ÓÐAmbari Agent·þÎñÓëMetrcis MonitorÊØ»¤½ø³Ì·þÎñ¡£

Metrics Collector: Ö÷Òª°üÀ¨½«Metrics Monitor»ã±¨µÄ¼à¿ØÐÅÏ¢´æ´¢µ½Hbase£¬ÒÔ¼°Ìṩ¸øAmbari ServerµÄ²éѯ½Ó¿Ú¡£

AmbariÕûÌå¹ÜÀí¼¯Èº·½ÃæÒÔAmbari Server ΪºËÐÄ£¬Î¬»¤×ÅÒ»¸öFSMÓÐÏÞ״̬»ú£¬°üº¬Æ½Ì¨ÖÐËùÓв¿ÊðAgent²¢×¢²áµÄ½Úµã¡¢²¿ÊðµÄ·þÎñÓë×é¼þµÄ״̬±ä»¯ÐÅÏ¢¡¢ÅäÖÃÎļþ²¢Çҳ־û¯ÔÚAmbari Server¶ËµÄDBÖС£¶ÔÍâÒ»·½ÃæÍ¨¹ýrestApi½Ó¿Ú·½Ê½ÓëAmbari Web½»»¥£¬Ò»·½Ãæ½ÓÊÜÀ´×ÔAgentµÄ¶¨Ê±ÐÄÌøÇëÇó£¬ËùÓн»»¥ÐÅÏ¢Öаüº¬Á˽ڵã״̬¡¢Ê¼þÐÅÏ¢¡¢¶¯×÷ÃüÁîÖÐÆäÖÐÖÁÉÙÒ»ÖÖ£¬ÓÉAmbari ServerͳһЭµ÷ÃüÁîºÍά»¤×´Ì¬½á¹û£¬È»ºó¸øAgentÏ·¢µÄÏà¹Øcommand£¬Ambari Agent½ÓÊÜÃüÁîÖ´ÐÐÏà¹ØÂß¼­²¢·µ»Ø×´Ì¬½á¹û¡£AmbariÕûÌå¼à¿Ø·½ÃæÍ¨¹ýAmbari Server»ñÈ¡Ambari Metrics CollectorÖоۼ¯ºóµÄ´Ó¸÷¸ö½ÚµãAmbari Metrics MonitorÉϱ¨µÄµ¥½Úµã¼à¿ØÖ¸±êÊý¾Ý£¬ÔÚAmbari WebÖиø³öͼÐλ¯µÄչʾ¡£

AmbariÊÇHDPÊý¾Ýƽ̨Ì×¼þµÄÒ»²¿·Ö£¬HDPÊÇAmbari¹ÜÀí¼¯ÈºµÄ¼¼ÊõÕ»»ù´¡¡£HDP¼´Hortonworks Data Platform£¬ÊÇHortonworksÍêÈ«¿ªÔ´ÒÔYarnΪºËÐÄÕûºÏApache Hadoop¼¼ÊõµÄÒ»¸ö°²È«µÄÆóÒµ¼¶Êý¾Ýƽ̨£¬HDPº­¸ÇÁ˼¸ºõËùÓÐHadoopµÄÊý¾ÝÀëÏß´¦Àí¼¼Êõ£¬ÒÔ¼°×îеÄʵʱ´¦Àí¼¼ÊõÂú×ãÓû§ÐèÇó£¬ÈçÏÂͼËùʾ£¬Æä2017Ä꿪ԴµÄHDP v2.6ÕýºÃÖ§³ÖHadoop v2.7.3¡£

ͼ5 HDPÊý¾Ýƽ̨¼¼Êõº­¸Ç

AmbariÖ§³Ö¶ÔHDPµÄ¹©Ó¦»òÕß˵Ambari»ùÓÚHDPÊý¾Ýƽ̨£¬ÏÂÃæÊǼ¸¸öºËÐĸÅÄ

Stack£ºAmbariÖ§³Ö¹ÜÀíµÄHDPÕû¸ö¼¼ÊõÕ»£¬±¾Éí¼¼ÊõÕ»Ò²ÓÐ°æ±¾Çø·Ö£¬ÀýÈçHDP 2.6 ¾ÍÊÇHortonworks»ùÓÚApache Hadoop v2.7.3ÓëApacheЭÒéµÄ2017Äê·¢Ðа档

Service£ºAmbariÖ§³Ö¹ÜÀíµÄij¸ö¾ßÌå·þÎñ£¬±ÈÈçHDPÖеÄHDFS¡¢YarnµÈ£¬¿ÉÒÔ²¿Ê𡢹ܿصÄÒ»¸öÍêÕû¼¼ÊõFramework¼¼Êõ·½°¸¡£

Component£ºAmbariÖ§³Ö¹ÜÀíµÄ×îС×é¼þµ¥Î»£¬ÓÉÓÚService·þÎñ´ó¶àÊýΪ·Ö²¼Ê½Ó¦Óã¬Componet¼´Ï¸·ÖµÄMaster¡¢Slave¡¢ClientµÈ×é¼þ¡£

Ambari°´ÕÕStack -> Service -> ComponentµÄ²ã´Î¹ØÏµ£¬¹ÜÀí×ÅHDPÖ®¼ä¸÷×é¼þÒÀÀµ¹ØÏµ£¬Í¨¹ýService MetainfoµÄ¶¨ÒåÀ´¹ÜÀí×é¼þµÄÒÀÀµ¹ÜÀíÅäÖá£ÀýÈçYARNµÄmetainfo.xmlÎļþÖж¨ÒåÁËYarnÐèÒªHDFSºÍMR2µÄÖ§³Ö£¬ÅäÖÃÎļþÒÀÀµHadoopµÄÖ÷ÒªÅäÖÃÎļþcore-site¡¢hdfs-siteµÈ¡£ÆäÖÐHDFS¡¢MAPREDUCE2ΪAmbari¹ÜÀíµÄService£¬¶øHDFSÖÐÿһ¸öÔËÐÐʵÀýÀýÈçNamenode¡¢DataNodeΪAmbari¹ÜÀíµÄComponent¡£

Ambari½Ó¹ÜÏßÉÏHadoop¼¯ÈºÎÊÌâÓë˼·

ÉÏÎÄÖÐÒÑÌá¼°ÔÚAmbari½Ó¹ÜÏßÉÏHadoop¼¯ÈºÊ±£¬ÐèÒª¿¼ÂÇÖ÷ÒªÁ½·½ÃæµÄÎÊÌ⣺

Ambari½Ó¹ÜÖ®ºóÔõÑù±£Ö¤¼¯ÈºÒÀ¾ÉÄܹ»Ö§³ÅÔ­ÏÈÖ§³ÅµÄËùÓÐÉϲãÓ¦Óã»

Ambari½Ó¹Ü¶¯×÷ÔõÑù½µµÍ¶ÔÏßÉÏHadoop¼¯ÈºÌṩ·þÎñµÄÓ°Ïì¡£

ÎÊÌâÃèÊö

Î§ÈÆÉÏÊöÕâÁ½·½Ã棬Ê×ÏÈÎÒÃÇÊáÀíÁ˼¯ÈºÉÏÖ§³ÅϵͳµÄËùÓÐʹÓýӿڣ¬°üÀ¨µ÷¶ÈϵͳÖÐʹÓõÄHDFS RestApi£¬Êý¾ÝÖÐÐÄʹÓõÄHive Jdbc¡¢ThriftApi£¬ÊµÊ±²É¼¯ºÍ·Ö·¢ÏµÍ³Ê¹ÓõÄZookeeper·þÎñ£¬ÆäÖÐÉæ¼°µ½µÄÖ÷Òª¼¼Êõ×é¼þÀýÈçHDFS¡¢Hive¡¢Zookeeper£¬HDPHDPÖи÷×é¼þµÄ°æ±¾Ó¦¸ÃÏòϼæÈÝ×îºÃ°æ±¾Ò»ÖÂ(Hadoop v2.7.3¡¢Hive 2.1.0µÈµÈ)±£Ö¤¹¦ÄÜÌØÐÔÂú×ã¡£¸ù¾ÝHDPÌṩµÄ×é¼þÐÅÏ¢ÎÒÃÇÑ¡ÔñÁËHDP v2.6.0.2£¬²¢ÇÒÕë¶ÔHDP v2.6¶ÔÆä°üº¬µÄ×é¼þ¹¦ÄÜÌØÐÔÓëÉçÇø°æ¸÷×é¼þ¹¦ÄÜÌØÐÔ½øÐжԱȣ¬È·±£ÁËHDP v2.6.0.2Ö§³ÖÏÖÓÐËùÓй¦ÄÜÌØÐÔ¡£È»ºóÊÇÖ§³ÖHDP v2.6.0.2×÷ΪStackµÄAmbari v2.5.1.0£¬½ÓÏÂÀ´ÊÇÈ·¶¨Ambari v2.5.1.0¹ÜÀíHDP v2.6.0.2ϵĸ÷¸öService¿ÉÐÐÐÔ£º

ͼ6 HDP-2.6.0.2ÓëHadoop2.7.3¸÷Service°æ±¾¶Ô±È

´ÓÉÏÃæµÄ¶Ô±ÈͼÖпÉÒÔ·¢ÏÖ£¬AmbariÊÇÖ§³Ö¹ÜÀí´ó¶àÊýÓëÏßÉϼ¯Èº×é¼þ°æ±¾Ò»ÖµÄ×é¼þµÄ£¬µ«ÊÇÒ²ÓÐÀýÍâÀýÈçHive£¬AmbariÖ§³Ö¹ÜÀíµÄ°æ±¾±ÈÏßÉϼ¯ÈºÖеĵͣ¬¶øÎÒÃÇÉú²ú»·¾³ÖÐÊý¾ÝÖÐÐĵÈÉϲãÓ¦Óö¼ÊÇ»ùÓÚHive 2.1.0½Ó¿ÚÔËÐеģ¬ËùÒÔAmbari½Ó¹ÜÏßÉϼ¯Èº²»µÃ²»½â¾öHiveµÄ¼æÈÝÐÔÎÊÌ⣬²ÅÄÜ×îÖÕ´ïµ½Ambari¹ÜÀíΪÎÒÃÇËùÓõÄÉú²ú¼¯ÈºµÄÄ¿±ê¡£½Ó×ÅÐèÒª¿¼ÂǵÄÊÇAmbari×Ô¶¯¹©Ó¦µÄHDP¼¯ÈºÔõÑùÓëÏßÉÏHadoop¼¯Èº¼æÈÝ£¬¾ÍÄÃÆäÖбȽÏÖØÒªµÄÒ»¸ö±ØÒªÌõ¼þÀ´Ëµ£º½Ó¹ÜºóµÄHDP HDFSÄܹ»Î¨Ò»¹ÜÀíÏßÉÏÒÑÓм¯ÈºÊý¾Ý£¬¶øÒªÄܹ»Ë³ÀûʵÏÖÕâһĿ±ê¾ÍµÃAmbari¹ÜÀíµÄHDPÄܹ»´úÌæÔ­ÓÐHadoop¼¯Èº£¬ËùÒÔAmbari½Ó¹ÜÏßÉϼ¯ÈºµÄÎÊÌâ¾Íת»¯³ÉÁ˼¯ÈºÉý¼¶µÄÎÊÌ⣬Éý¼¶ÎÊÌâÒª¿¼ÂǵÄÊÇ×îС»¯Í£»úµÄÓ°ÏìÒÔ¼°Äܹ»»Ø¹ö»Ö¸´£¬ÒÔ¼°³ä·ÖÀûÓÃAmbariµÄÌØÐÔ¡£

½â¾ö˼·

ÏÖÔÚÒѾ­Á˽⵽ÁË´Ë´ÎAmbari½Ó¹ÜÏßÉϼ¯ÈºµÄÎÊÌ⣬ÎÒÃÇÀ´ËµËµ½â¾öÉÏÊöÎÊÌâµÄ˼·¡£Ê×ÏÈÊÇAmbari¹ÜÀí×é¼þ¼æÈÝÐÔÎÊÌ⣬ÒÔHive×é¼þΪÀý£¬ËäÈ»Ambari v2.5.1ÔÚ¹ÜÀí·½ÃæÖ»Ö§³ÖHive v1.2.1£¬µ«ÊÇ×÷ΪÕû¸öHDP v2.6.0.2 ÌṩµÄ¼¼Êõ×é¼þÖаüº¬ÁËHive v2.1.0(¼ûͼ5)£¬Hive v2.1.0×é¼þµÄ±£ÁôÊÇΪÁ˼æÈÝHive2 °üÀ¨LLAP¡¢CBOµÈһϵÁÐй¦ÄÜ£¬ÔÚAmbari²¿ÊðHive×é¼þʱ£¬»á·ÖΪHive v1.2.1ÓëHive v2.1.0Á½¸ö°æ±¾Í¬Ê±²¿Êð£¬ÏÂͼÖÐͨ¹ýÖ÷Òªjar°ü±¨Ãû°æ±¾ºÅ¿ÉÒÔ¿´³ö£¬HDP¹¦ÄÜ×é¼þ¸ùĿ¼µÄhiveÓëhive2×ÓĿ¼·Ö±ðΪHive v1.2.1¡¢Hive v2.1.0×é¼þ¸ùĿ¼¡£

ͼ7 HDPÖÐhiveÓëhive2¹¦Äܰ汾¶Ô±È

Ambari²¿ÊðHiveÍê±Ïºó£¬½ÓÏÂÀ´ÊÇÉú³ÉÅäÖÃÓë×é¼þÆô¶¯Âß¼­£¬¶øAmbari ĬÈÏÊÇÖ§³ÖHive v1.2.1¼´ÅäÖÃÉú³ÉÓëÆô¶¯Ê±Õë¶ÔµÄÊÇhive£¬ÄÇôÎÒÃÇÐèÒªµ÷ÕûµÄÄ¿±êÊÇÈÃËüÕë¶Ôhive2¡£»Ø¹ËAmbariÖ´ÐÐÂß¼­£¬ÍêÕûµÄÒ»´Î½»»¥ÊÇÓû§ÔÚAmbari Web½çÃæ²Ù×÷ -> Ambari ServerÇëÇó´¦Àí&ÃüÁîÏ·¢¾ßÌå»úÆ÷ -> ¾ßÌå»úÆ÷Ambari AgentÖ´ÐÐÏà¹Ø²Ù×÷£¬¶øÔÚÕâÀïAmbari AgentÆô¶¯Hive(ʵ¼Ê·ÖΪHiveMetaStore¡¢HiveServer¡¢HiveClientµÈComponent£¬Ã¿¸öComponentÆô¶¯Ö´ÐÐÂß¼­Ò»Ö£¬¹ÊÔÚÕâÀïͳһ³ÆÎªÆô¶¯hive)¹ý³Ì°üÀ¨Á˽âÎöÏ·¢ÃüÁî¡¢´ÓDBÀ­È¡ÅäÖÃÐÅÏ¢¡¢¸üÐÂÅäÖÃÎļþ¡¢Æô¶¯Hive¡£ÒòΪÅäÖÃÎļþ¶ÔÓÚ¸÷¸öHiveÖÐComponentÒ»Ö£¬ËùÒÔ¸üÐÂÅäÖÃÎļþµÄÖ´ÐÐÂß¼­Ò²Ò»Ö£¬²¢ÇÒhive2ÊÇÄܹ»ÏòϼæÈÝhiveÖеÄËùÓÐÅäÖÃÏîµÄ£¬Òò´ËÔÚ¸üÐÂhiveÅäÖÃÎļþµÄÂß¼­×îºóÔö¼Óͬ²½ÅäÖÃÖÁhive2ÅäÖõŦÄÜ£¬¾ÍʵÏÖÁËÔÚAmbari WebÒ³ÃæÒ²Äܹ»¸üб¾²»Ö§³ÖµÄhive2µÄÅäÖÃÁË£¬²¢ÇÒÒòΪAmbariÓÐ×Ô¶¨ÒåÅäÖÃÏÄÜÖ§³ÖËùÒÔÒ²²»Óõ£ÐÄhive2ÅäÖÃÏîhiveÖв»Ö§³ÖµÄÎÊÌâ¡£

ͼ8 hive¸üÐÂÅäÖÃÔö¼Óͬ²½ÖÁhive2¹¦ÄÜ

ÅäÖÃÖ§³ÖµÄÎÊÌâ½â¾öÁËÈ»ºóÊÇHiveÆô¶¯µÄÎÊÌ⣬Æô¶¯Âß¼­¸ü¼Ó¼òµ¥¼´Ä¬ÈÏÒÔhive/binĿ¼ÏÂÆô¶¯½Å±¾Æô¶¯Ïà¹Ø×é¼þ֮ǰ»á³¢ÊÔÈ¥»ñÈ¡»úÆ÷µÄHIVE_HOMEϵͳ»·¾³±äÁ¿£¬ËùÒÔÔÚ½ÚµãÌáǰÅäÖÃhive2µÄÏà¹ØÏµÍ³»·¾³±äÁ¿£¬ÔòÆô¶¯Âß¼­»áÒÔhive2/binĿ¼ÏÂµÄÆô¶¯½Å±¾Æô¶¯Ïà¹Ø×é¼þ£¬Í¬ÑùµÄ¹Ø±Õ¡¢ÖØÆôµÈÂß¼­Ò²»á°´ÕÕhive2µÄÂß¼­Ö´ÐС£ÖÁ´Ëͨ¹ýÀàËÆ¡±ÒÆ»¨½Óľ¡±µÄ·½Ê½ÊµÏÖÁËAmbari¹ÜÀíHive v2.1.0µÄÄ¿±ê£¬¼´ÔÚAmbari WebÒ³ÃæÉϵĹÜÀí²Ù×÷µÄÉúЧ¶ÔÏóΪHDP Hive2¼´Hive v2.1.0¡£

½Ó×ÅÊÇAmbari½Ó¹ÜÏßÉϼ¯ÈºÈçºÎת»¯³ÉÏßÉÏÉý¼¶£¬¼¯ÈºÉý¼¶ÖеÄÒªµã°üÀ¨£º¾É°æ±¾ÔªÊý¾ÝµÄ±¸·Ý(Namenode¡¢JournalnodesµÈ)£¬¾É°æ±¾ÅäÖÃÔÚа汾ÅäÖõĸ²¸ÇºÍµ÷ÓÅ£¬¿ÉÄÜÉý¼¶Ê§°ÜµÄ»Ø¹ö·½°¸×¼±¸£¬ÊµÊ©Éý¼¶Ê±¶ÎÑ¡ÔÚ¼¯ÈºÊ¹ÓÿÕÏÐʱ¼ä£¬Éý¼¶Ç°µÄÑÝÁ·µÈ¡£ÕâЩ·½°¸´Ë´ÎAmbari½Ó¹ÜÏßÉϼ¯ÈºÉý¼¶Í¬ÑùÊÜÓ㬵«ÊÇͬʱҲҪ¿¼ÂÇÒ»Ð©ÌØÊâµÄϸ½Ú£ºµÚÒ»¡¢AmbariÖ§³ÖµÄHadoop¼¯Èº¹©Ó¦²¢Ã»ÓÐÖ±½ÓHA with QJMµÄ·½°¸£¬ÔÚHDFS²¿Êðʱ±ØÐë°´ÕÕSNNÀ䱸·½°¸²¿ÊðÈ»ºóµ÷ÕûΪHA with QJMµÄ²½Ö裻¶þ¡¢¼¯ÈºÖеÄZookeeper·þÎñÖ§³ÖµÄһЩʵʱÐÍÒµÎñ¾Í¾ö¶¨ÁËZookeeper·þÎñ²»ÄÜÓëHadoopÉý¼¶ÄÇÑùÐèҪͣ»ú¶øÔì³É·þÎñ²»¿ÉÓõĿմ°ÆÚ£»Èý¡¢Ambari ¹ÜÀíµÄ×é¼þ³ÌÐòÔËÐÐroleÓëÏÖÓÐ×é¼þ³ÌÐòÔËÐÐroleµÄ²»Í¬µ¼ÖµÄÖ÷Òª°üÀ¨ÎļþȨÏÞµÈÎÊÌ⣬ÒÔ¼°ÓÉÓÚ´ËǰHadoop¼¯Èº¾­Àú¹ý½ÚµãÀ©ÈݽڵãÅäÖøöÐÔ»¯²îÒìÈçºÎÔÚAmbariͳһÅäÖùÜÀíÖбÜÃâ³åÍ»µÄÎÊÌâ¡£¶øÇÒÎÒÃÇÐèÒª±£Ö¤µÄÄ¿±ê°üÀ¨ÁË£ºÒ»¡¢¼Ü¹¹ÉÏÓëÔ­Óм¯ÈºÒ»Ö£¬±ÈÈçnn½Úµã¡¢dn½ÚµãµÄ·Ö²¼µÈ£¬¾¡¿ÉÄÜÓëÔ­Óм¯Èº×é¼þ»úÆ÷·ÖÅäÒ»Ö£»µÚ¶þ¡¢Éý¼¶×îÖØÒªµÄÊÇÎÒÃǵÄÊý¾Ý×ʲú£¬Êý¾Ý²»Äܶª£¬ËùÒÔÖØÒªÅäÖñÈÈçhdfs¸÷´æ´¢ÈÕÖ¾ÎļþĿ¼¡¢Ë÷ÒýÎļþĿ¼µÈµÈ±ØÐëÒ»Ö£»µÚÈý¡¢ÔÙ¾ÍÊǸ÷×é¼þÖØÒª²ÎÊý£¬±ÈÈç·þÎñÃüÃû¿Õ¼ä¡¢Îļþ¿é´óС¡¢×ÊÔ´µ÷¶È²ßÂԵȵȣ¬Ò²Òª¾¡¿ÉÄÜÒ»Ö¡£ËùÒÔ×ÛÉÏËùÊö£¬ÎÒÃǽ«Ambari½Ó¹ÜÏßÉϼ¯ÈºÉý¼¶²ð·ÖΪÏÂÃæ¼¸´ó²½Ö裺

ͼ9 Ambari½Ó¹ÜÏßÉϼ¯ÈºÉý¼¶²½Öè

ÔÚÉý¼¶Ç°µÄ×¼±¸²¿·ÖÖн«°ÑËùÓеÄÏà¹Ø×ÊÔ´Ìáǰ²¿ÊðÒÔ¼°ÅäÖúã¬ÏßÉÏÉý¼¶²Ù×÷²¿·ÖÖÐÖ»²Ù×÷AmbariÆô¶¯Ïà¹Ø×é¼þ£¬Íê³ÉÏßÉϼ¯ÈºÔËÐÐ×é¼þµÄÌæ»»£¬ËùÒÔ¼¯ÈºÍ£»úÓ°Ïìʱ¼äËõ¶ÌÖÁHadoop¡¢HiveÏà¹ØÆô¶¯µÄʱ¼ä£¬×î´ó»¯¼õСÁËÍ£»úµÄÓ°Ïì¡£

Éý¼¶Ç°×¼±¸¹¤×÷Ö÷Òª·ÖΪÁ½¸ö²¿·Ö£ºµÚÒ»¡¢°´ÕÕAmbari¹ÙÍøÌṩµÄ²¿Êð·½Ê½²¿Êð²¢Æô¶¯Ambari¸÷×é¼þ£¬È»ºóÔÚAmbari WebÉϰ´ÕÕAmbari Cluster Install Wizard²¢ÇÒ¸ù¾ÝÏßÉÏÏÖÓм¯ÈºµÄ×é¼þ·Ö²¼£¬Ñ¡ÔñÏàÓ¦HDP×é¼þµÄ²¿Êð½Úµã£¬È·±£½«HDP¸÷×é¼þ²¿Êð½ÚµãÓëÏßÉϼ¯Èº¸÷×é¼þÔËÐнڵ㱣³ÖÒ»Öºó£¬Ambari½«»áÔÚ¸÷½ÚµãInstall HDPµÄ¸÷×é¼þ£¬×îºóÓÉÓÚ½ÚµãÒÑÓÐÔËÐÐ×é¼þµÄ¶Ë¿Ú³åÍ»»áµ¼ÖÂStart ʧ°Ü£¬²»¹ý²»Ó°ÏìAmbari ³É¹¦Íê³É²¿ÊðHDP ¸÷×é¼þ¡£

µÚ¶þ¡¢AmbariÏßÉÏÉý¼¶Ç°»·¾³×¼±¸Ê×ÏÈ×îÖØÒªµÄÊÇÓëÏÖÓм¯ÈºµÄÅäÖÃͬ²½£¬Í¬ÑùÔÚAmbari Web½çÃæÖвÙ×÷£¬ÕâÀïÐèҪעÒâµÄÊÇÏÖÓм¯Èº²»Í¬½ÚµãµÄ²îÒ컯ÅäÖÃÔÚAmbariÖÐʹÓÃConfig GroupͬÑù½øÐвîÒ컯ÅäÖ㬱ÈÈ缯ȺÖÐDataNode»úÆ÷½ÚµãÔÚ´ÅÅÌÉϵIJîÒìÇé¿ö£¬ÔÚAmbariÖÐÅäÖò»Í¬½Úµã×é¶ÔÓ¦µÄÅäÖÃÈçÏÂͼ£º

ͼ10 ²»Í¬DataNode½Úµã×éBlocksĿ¼²îÒ컯ÅäÖÃ

ÒÀ´Î¶ÔHadoop¡¢HiveµÈ×é¼þÍê³ÉÅäÖÃͬ²½£»½Ó×ÅÊÇ×¼±¸ËùÓÐÖ´ÐÐÂß¼­½Å±¾£¬°üÀ¨¸Õ²ÅÌáµ½µÄÉæ¼°µ½¹¦ÄÜÐ޸ĵÄÏà¹ØAmbari Agent python¹¦Äܽű¾ÒÔ¼°Éý¼¶ÉÏÏß²Ù×÷ʱµÄ°üÀ¨±¸·ÝNN¡¢JNÔªÊý¾Ý¡¢Í³Ò»ÐÞ¸Äϵͳ»·¾³±äÁ¿µÈÃüÁî½Å±¾£¬ÖÁ´ËÉý¼¶Ç°µÄËùÓÐ×¼±¸¹¤×÷È«²¿Íê³É¡£

ÏßÉÏÉý¼¶²Ù×÷²¿·ÖÒ²·ÖΪÁ½²¿·Ö£ºµÚÒ»¡¢AmbariÏßÉÏÉý¼¶Hadoop£¬Ê×ÏÈÊÇZookeeper¼¯ÈºµÄÉý¼¶£¬²ÉÓôÓZookeeperµÄfollower»úÆ÷¿ªÊ¼Ò»Ì¨Ò»Ì¨Í£µôÏßÉÏ¡¢AmbariÆô¶¯ÏàÓ¦½Úµã£¬ÒòΪÔÚÅäÖÃͬ²½¹ý£¬ËùÒÔAmbari Æô¶¯µÄzkÊǶÁȡԭÓÐzkµÄÊý¾Ý£¬´ýËùÓÐfollower½Úµã²Ù×÷Íê±ÏÖ®ºó²Ù×÷leader½Úµã¡£È»ºóÊÇHadoopµÄÉý¼¶£¬HadoopÉý¼¶Ç°ÔÝʱ¹Ø±ÕËùÓгÌÐò·ÃÎÊÈë¿Ú(Ìáǰ¹«¸æÍ¨Öª)£¬HadoopÉý¼¶ÖÐ×îÖØÒªµÄÊÇHdfsµÄÉý¼¶£¬HdfsµÄÉý¼¶·ÖΪSNNÀ䱸·½°¸HDFSÆô¶¯ÓëEnable HA with QJMÁ½²½£ºµÚÒ»²½ÈÃÔ­Óм¯Èº½øÈ밲ȫģʽȷ±£Ã»ÓÐÊý¾ÝдÈëʱ£¬±¸·ÝËùÓÐNamenode¡¢Journalnode½ÚµãÔªÊý¾Ý£¬Ö´Ðйرռ¯Èº½Å±¾ÔÚÈ·±£Hadoop×é¼þÈ«²¿¹Ø±ÕºóÖ´ÐÐÐÞ¸ÄËùÓнڵãϵͳ»·¾³±äÁ¿½Å±¾(ÐÞ¸ÄΪÐÂHDP¼¯ÈºµÄϵͳ»·¾³±äÁ¿)£¬¸ù¾ÝAmbariÖÐÌáʾÆô¶¯HDFS£¬ÓÉÓÚNamenodeÖØÆôÐèÒªÒ»¶¨Ê±¼ä(ÔÚÕâÀï²»½éÉÜNamenodeÖØÆôÓÅ»¯ÁË)£¬µÈ´ý¼¯Èºcheck blocksÖ±ÖÁ×Ô¶¯Í˳ö°²È«Ä£Ê½ºóÖÁ´ËSNNÀ䱸·½°¸µÄHDFSÕýʽÆô¶¯³É¹¦£»µÚ¶þ²½ÔÚAmbariÖвÙ×÷Enbale HA with QJM£¬Ã¿Ò»²½µÄ²Ù×÷¸ù¾Ý²Ù×÷Ö¸Äϼ´¿É£¬ÐèҪעÒâµÄÊǹý³Ìµ±ÖпÉÄÜ»á³öÏÖÔ­ÓеÄStandByNamenodeÔªÊý¾ÝȱÉÙÒòΪµÚÒ»²½Öе¥NamenodeÔËÐйý³ÌÖвúÉúµÄ²¿·ÖÔªÊý¾Ý£¬¿ÉÒÔͬ²½ Namenode ÖÐfsimageÓëeditLogÎļþÖÁStandbyNamenode²¢ÖØÐÂinitializeShareEdits£¬Õý³£Çé¿öÏÂÔÚEnable HA ×îºóAmbari ÓÖ»áÖØÆôÒ»´ÎHDFS£¬ÖØÆôÍê³ÉÖ®ºóÖÁ´ËHDFSÉý¼¶Íê±Ï£¬ÒÀ´ÎÆô¶¯Mapreduce2¡¢Yarn·þÎñ£¬ÕûÌåHadoopÉý¼¶Íê±Ï¡£ µÚ¶þ¡¢AmbariÏßÉÏÉý¼¶Hive£¬ÔÚµÚÒ»²¿·ÖHadoop³É¹¦Éý¼¶ºóÏà¶ÔÀ´ËµHiveµÄÉý¼¶±È½ÏÈÝÒ×£¬ÔÚ¸üÐÂHive MetastoreÖÐÏà¹ØÔªÊý¾ÝÐÅÏ¢(DB SCHEMA)֮ǰÊ×ÏȶÔÊý¾Ý¿â½øÐб¸·Ý£¬¸üÐÂHive MetaStore Schema¡¢Ö´ÐÐÆô¶¯Hive¼´¿É£¬ÒòΪÒѾ­²¿ÊðÁËÐÞ¸ÄÂß¼­ºóµÄ´úÂ벿·Ö£¬Hive½«ÒÔHive v2.1.0ÔÚÏßÉÏÌṩ·þÎñ¡£

ÉÏÃæËÄ´ó²½Öè˳ÀûÍê³ÉÖ®ºó£¬Ambari¾Í³É¹¦½Ó¹ÜÁËÏßÉϼ¯Èº£¬¼¯ÈºÖ§³ÅµÄÉϲã·þÎñ¿ÉÒÔ¿ª·ÅÈë¿Ú¸øÊ¹ÓÃÕßʹÓÃÁË¡£ºóÐøÎ§ÈÆAmbariµÄ¼à¿Ø¹¦ÄÜ£¬Ê¹ÓÃÆäapi½Ó¿Ú¿ÉÒÔ¶¨ÖƸ÷ÖÖ¸öÐÔ»¯µÄ¼à¿ØºÍ¸æ¾¯·þÎñ£¬ÖÁ´ËAmbari³É¹¦½Ó¹ÜÏßÉϼ¯Èº¡£

Ambari½Ó¹ÜÏßÉÏHadoop¼¯ÈºÊµ¼ù

ÉÏÎÄÖÐÏë±Ø¶ÁÕßÒѾ­Á˽âÁËÎÒÃÇAmbariʵ¼ù×îÖÕÏëÒª´ïµ½µÄÄ¿±ê£¬ÆäÖдæÔÚµÄÖ÷ÒªÎÊÌâÒÔ¼°ÎÊÌâ½â¾öµÄ˼·£¬ÏÖÔÚÎÒÃǽéÉÜAmbari½Ó¹ÜÏßÉÏHadoop¼¯ÈºµÄʵ¼ù¹ý³Ì¡£ÒòΪ´Ë´ÎAmbari½Ó¹ÜÏßÉÏHadoop¼¯Èº¶¯µÄÊÇÎÒÃǼ¯Èº»òÕß˵ÊÇ´óÊý¾Ýƽ̨µÄ×îµ×²ã£¬Ó°Ï췶Χ´óËùÒÔÿ¸ö²½Öè»·½ÚÎÒÃǶ¼½÷СÉ÷΢ȷ±£ÎÞÎ󣬷ÀÖ¹Ò»¶¡µãµÄÊèºöµ¼ÖÂÕûÌå´óÊý¾Ýƽ̨±ÀÅ̵ġ±ºûµûЧӦ¡±³öÏÖ¡£

ËùÒÔÎÒÃÇ´Ó¿ª·¢¼¯Èº¿ªÊ¼£¬Ä¿±êÊÇÔÚʹÓÃAmbari´ÓÁã´î½¨¼¯Èº¹ý³ÌÖУ¬Á˽âÆäºËÐÄÌØÐԺͶԻúÆ÷ÔËÐл·¾³µÄËùÓÐÒÀÀµ£»È»ºóÊÇÔÚÎÒÃÇHadoop²âÊÔ¼¯ÈºÉÏ£¬Hadoop²âÊÔ¼¯Èº²»½öÓÐÓëÉú²úHadoop¼¯ÈºÍ¬ÑùµÄ»·¾³ÓëÅäÖ㬲¢ÇÒÒ²Ö§³Å×ÅͬÑùµÄÓÃÓÚ²âÊÔÄ¿µÄµÄÉϲãÓ¦ÓÃϵͳ£¬ÔڻҶȼ¯ÈºÉÏÎÒÃǰ´ÕÕÉÏÎÄÖÐËIJ½ÖèÍêÕûÑÝÁ·Á˽϶à´Î£¬×ܽáÁËһЩÆäÖÐÅö¼ûµÄÎÊÌâºÍÓ¦¼±½â¾ö·½°¸£¬³ý¿ª½Úµã¹æÄ£ºÍÊý¾ÝÁ¿±È²»ÉÏÏßÉÏHadoop¼¯ÈºÖ®Í⣬Éý¼¶·½°¸·½ÃæÒѾ­È·¶¨£»×îºóÊÇʹÓÃÔÚ²âÊÔ¼¯ÈºÖеÄÉÏÏß·½°¸£¬Ñ¡ÔñÇ¡µ±µÄʱ»úÔÚÏßÉÏ»·¾³ÍêÕûÖ´ÐÐÁËÒ»±é£¬AmbariÏßÉϲÙ×÷²¿·ÖÕûÌåºÄʱ¿ØÖÆÔÚÁË2hÒÔÄÚ£¬Ambari½Ó¹Üºó¼¯ÈºÕûÌåÔËÐÐÕý³££¬Ö§³ÅµÄÉϲãÓ¦ÓÃÎÞ±¨´í¡£

ÏÂÃæ½«°ÑAmbari½Ó¹ÜÏßÉÏHadoop¼¯ÈºÊµ¼ù¹ý³ÌÖеĹؼüµã×ÅÖØ½²Êö£¬ÈöÁÕßÁ˽â½Ó¹ÜÉý¼¶Êµ¼ù¹ý³ÌÖÐÐèÒª¹Ø×¢µÄ²¿·Ö¡£

ÅäÖÃͬ²½

Ambari½Ó¹ÜµÄÄ¿±êÊǶÔÓÚ¼¯ÈºÊ¹ÓÃÕßÀ´Ëµ¸ÐÊܲ»µ½¼¯Èº±¾ÉíµÄ±ä»¯£¬ËùÒÔÄÜ·ñ½Ó¹ÜÏßÉϼ¯ÈºµÄ¹Ø¼üµãÖ®Ò»ÔÚÓÚ¼¯ÈºÅäÖõÄͬ²½£¬×¼È·µãÊÇ˵AmbariʹÓõÄHDPÖи÷¸öComponent×é¼þϵͳ²ÎÊý¡¢Ó¦ÓòÎÊý¡¢ÔËÐÐʱ»·¾³±äÁ¿µÈ¶¼ÐèÒª±£³ÖÒ»Ö£¬ÏÂÃæ½«½éÉܼ¸¸öÖ÷ÒªÅäÖÃÎļþÖеÄÖØÒªÅäÖÃÏî¡£ÒÔÏÂͼÖеÄHDFS core-site.xmlÅäÖÃΪÀý£¬core-site.xmlÅäÖÃÎļþÊÇHDFSÖØÒªÅäÖÃÎļþÖ®Ò»£¬¿ÉÒÔ¿´¼û»ÆÉ«±ê

ͼ11 HDFS core-site.xml Ö÷ÒªÅäÖÃÏî

×¢²¿·ÖΪÎÒÃÇÔÚAmbari ÏßÉÏÉý¼¶Hadoop HDFS ʱ·Ö½×¶Îfs.defaultFSµÄ²»Í¬ÅäÖ㬵ÚÒ»²½µ¥µãÆô¶¯Ê±ÅäÖñ£Ö¤Á˵¥NamenodeÆô¶¯µÄ˳Àû½øÐУ¬µ½µÚ¶þ²½Enable HAʱ£¬ÐÞ¸ÄΪHAʱºòµÄ±ØÒªÅäÖã»È»ºóÔÚ¶ÔÓÚHadoop¼¯ÈºÊ¹ÓÃÕßÀ´Ëµ£¬Ôö¼ÓÁËroot¡¢hive Óû§ÓëÓû§×éµÄ·ÃÎÊÒ²ÊÇΪÁ˼æÈÝAmbari½Ó¹ÜºóµÄHDFSÔËÐÐroleΪhdfsÓû§µÄ·ÃÎʼæÈÝ£¬µ±È»Ö»ÓÐȨÏÞ¼¶±ð±È½Ï¸ßµÄrootºÍhiveÓû§Äܹ»ÏíÓÐÕâ¸öȨÏÞ£»½Ó×ÅÊÇNamenodeÔËÐеÄ×î´óÄÚ´æ´óСµÈ²ÎÊý£¬AmbariĬÈϵͼ±È½ÏС£¬ÕâÒ»µãÐèÒªÌØ±ð×¢Òâ¸ù¾ÝÔ­Óм¯ÈºµÄÔËÐÐNamenode½ø³ÌÔËÐÐʱÄÚ´æ²ÎÊýÀ´µ÷½ÚÕâЩ²ÎÊý¡£È»ºóÔÙÀ´¿´¿´YarnÏà¹ØµÄÅäÖÃÏÎÒÃÇÒÔyarn-site.xml

ͼ12 YARN yarn-site.xml Ö÷ÒªÅäÖÃÏî

ÅäÖÃÎļþÖÐÖ÷ÒªÅäÖÃÏîΪÀý£º³ÈÉ«±ê×¢µÄ²¿·ÖΪÐèÒª¸ù¾ÝÔ­Óм¯Èº×öµ÷ÕûµÄ²¿·Ö£¬ÆäÖаüÀ¨ÐèÒª¸ù¾Ý¾ßÌå½ÚµãÄÚ´æ´óСÇé¿öÀ´ºÏÀíÑ¡ÔñNodeManager¿ÉÓÃÓÚ·ÖÅäµÄ×î´óÄڴ棬Ôö¼Ómapreduce_shuffleÑ¡ÏîÒÔÖ§³Ö¼¯ÈºÖеÄMapReduce³ÌÐò£¬µ±È»»¹ÓÐYarnµÄµ÷¶È²ßÂÔ£¬ÔÚÉú²ú¼¯Èº»·¾³½éÉÜÖÐÒÑÌᵽʹÓõÄÊǸù¾ÝÒµÎñ»®·ÖµÄFairScheduler£¬¶øAmbariÖÐĬÈÏʹÓõÄCapacityScheduler£¬ËùÒÔÐèÒªÌØ±ð×¢Òâµ÷¶È²ßÂÔÒÔ¼°Ïà¹ØµÄÅäÖÃÓëÔ­Óб£³ÖÒ»Ö¡£

×îºóÊÇһЩ×é¼þµÄÊý¾Ý´æ´¢Â·¾¶µÄÅäÖã¬AmbariÄܹ»½Ó¹ÜÏßÉϼ¯Èº±ØÐëHDP¸÷×é¼þʹÓÃ֮ǰµÄÊý¾ÝÀ´±£Ö¤£¬ËùÒÔÊý¾Ý´æ´¢Â·¾¶µÄÅäÖÃÒ²ÊÇÖÁ¹ØÖØÒªµÄ¡£

ͼ13 Ö÷Òª×é¼þµÄÖ÷ÒªÊý¾Ý´æ´¢Â·¾¶ÅäÖÃÏî

Éý¼¶²Ù×÷

ͼ14 Éý¼¶²Ù×÷¾ßÌå²½ÖèºÍϸÔò

ÔÚËùÓÐÉý¼¶Ç°×¼±¸Íê³ÉÖ®ºóÎÒÃÇ¿ªÊ¼½øÐÐAmbariÏßÉÏÉý¼¶²Ù×÷£¬ÏßÉÏÉý¼¶²Ù×÷·ÖΪÁ½²¿·Ö¼¸´ó²½ÖèÈçÏÂÖ´ÐУº

ÔÚÉý¼¶²Ù×÷ǰÎÒÃÇ»á¹Ø±ÕËùÓзÃÎʼ¯ÈºµÄÓ¦ÓÃÈë¿Ú£¬ÌرðÊǼ¯ÈºÊý¾Ý½ÓÈëÓ붨ʱ×÷ÒµÕâÒ»¿é£¬±£Ö¤¼¯ÈºÃ»ÓÐÊý¾Ý¼ÌÐøÐ´Èëºó£¬ÎÒÃǽÓ׏رÕËùÓÐ֮ǰµÄ¼¯Èº½ø³ÌÔËά¼à¿Ø½Å±¾£¬·ÀÖ¹Éý¼¶¹ý³ÌÖÐÔ­Óм¯Èº×é¼þ½ø³ÌÔËÐеĻָ´Ó°ÏìÉý¼¶¡£½Ó×ÅΪÁË·½±ãÔÚNamenodeͳһִÐйرռ¯Èº²Ù×÷£¬ÎÒÃǸù¾Ý¹ØÍ£½Å±¾µÄÂß¼­¼´¸÷½Úµã»áÕÒµ½´æ·Å¶ÔÓ¦½ø³Ì(Datanode¡¢NodeManager) PIDÎļþ·¾¶£¬¸ù¾ÝÎļþ¼Ç¼µÄPIDÖ´ÐÐKill²Ù×÷£¬µ«ÊÇÓÉÓÚ²¿·ÖPIDÎļþ´æ·ÅÔÚϵͳtmpÎļþ¼ÐÏ¿ÉÄÜÒѾ­±»É¾³ý£¬ËùÒÔÎÒÃÇÌáǰÔÚ¸÷¸ö½Úµã²¿ÊðÁ˼ì²é¸÷×ÔÔËÐнø³Ì²¢»¹Ô­¿ÉÄÜȱʧµÄPIDÎļþµÄ½Å±¾£¬²¢ÇÒÔÚÕýʽ¹ØÍ£Ç°£¬Í³Ò»Ö´Ðл¹Ô­½ø³ÌPIDÎļþ£¬NN¡¢JN½ÚµãÔªÊý¾ÝÎļþÐÅÏ¢±¸·Ýºó²ÅÖ´ÐйØÍ£²Ù×÷¡£È»ºóÔÚAmbariÉý¼¶Hadoop֮ǰÎÒÃÇͨ¹ýHdfs ¹ÜÀí½çÃæ¼Ç¼ϵͳµÄÔªÊý¾ÝÐÅÏ¢£¬²¢ÇÒÔÚAmbari Íê³ÉÕûÌåHadoopÉý¼¶ºó£¬ÎÒÃÇÏêϸ¶Ô±ÈÁËHdfs ¼Ç¼µÄÔªÊý¾ÝÐÅÏ¢(ÏÂͼÖÐÑ¡ÔñµÄΪAmbari½Ó¹Ü²âÊÔ¼¯ÈºµÄͳ¼ÆÊý¾Ý)£º

ͼ15 Ambari½Ó¹Ü²âÊÔ¼¯ÈºÉý¼¶Ç°ºóÎļþ¶Ô±È

ÔÚÈ·¶¨Éý¼¶Ç°ºóBlocksÍêȫһÖºóÕûÌåHadoopÉý¼¶È·ÈÏÍê³É¡£×îºóÊÇAmbariÉý¼¶Hive£¬ÔÚ²½Öè2¼¯Èº¹ØÍ£²Ù×÷Íê³ÉÖ®ºó£¬ÎÒÃÇͬ²½½øÐÐÁËHive MetaStore DBµÄ±¸·Ý£¬ÒòΪHive MetaStore DBÖ»´æ´¢HiveÏà¹ØÔªÊý¾ÝÐÅÏ¢£¬ËùÒÔhivemeta DB±¾Éí²»´ó£¬±¸·ÝÆðÀ´ËÙ¶ÈÒ²½Ï¿ì¡£ÔÚÕýʽAmbari HiveÉý¼¶Ö®Ç°£¬Ê¹ÓÃSchemaTool¹¤¾ß¸üÐÂhivemeta¿â£¬×îºóÆô¶¯Hive¡£

ÎÒÃÇÔÚHadoopÓëHiveÉý¼¶Æô¶¯Íê±ÏÖ®ºó£¬ÎÒÃÇѸËÙʹÓÃÃüÁî½Å±¾Ä£Äâ°üÀ¨µ÷¶Èϵͳ¡¢Êý¾ÝÖÐÐĵÈÏßÉÏϵͳ·ÃÎʼ¯Èº£¬²âÊÔÐÂÉÏÏß¼¯Èº¶ÔÍâ½Ó¿ÚµÄ¿ÉÓÃÐÔ£¬È·±£²âÊÔ¶¼Í¨¹ýºó£¬ÎÒÃÇÕýʽ¿ª·ÅÁ˸÷¸öÉϲãÓ¦Óã¬ÖÁ´ËÕûÌåµÄÉÏÏßʱ¼äºÄʱ¿ØÖÆÔÚÁË2hÒÔÄÚ£¬ÕûÌåÉý¼¶²Ù×÷ʱ¼äÖáÈçÏ£º

ͼ16 ÏßÉϼ¯ÈºÉý¼¶¸÷¹ý³Ìʱ¼äÖá

ºóÐøÔËÓÃ

Ambari½Ó¹ÜÏßÉϼ¯Èººó£¬ÔÚAmbari WebÖпÉÒÔ¶Ô¼¯ÈºÖÐËùÓÐ×é¼þ½øÐÐͳһ¹ÜÀí£º

ͼ17 ¼¯Èº×é¼þ²Ù×÷½çÃæ

ÉÏͼÖÐΪ¼¯ÈºÖÐ×é¼þÁÐ±í£¬ÒÔHDFSΪÀý£¬¶ÔÓÚHDFSµÄ²Ù×÷ÁбíÖаüÀ¨Á˶ÔNameNode¡¢DataNode¡¢JournalNodeµÈµÄ³£ÓòÙ×÷£¬Í¨¹ý½çÃæ¼´¿Éͳһ²Ù×÷¡£

ͼ18 ¼¯Èº×é¼þHDFSͳһÅäÖùÜÀí

ͳһÅäÖùÜÀí½«²»Í¬µÄÅäÖÃÎļþ·ÖÀà¸ø³ö£¬Ê¹ÓÃÕ߸ù¾ÝÏàÓ¦µÄÅäÖÃÏîÊôÐÔÃûÌîдÊôÐÔֵͬ²½¼´¿É£¬Óû§¿É×Ô¶¨ÒåÅäÖÃÏÅäÖÃͬ²½ºóÓÐÀúÊ·°æ±¾¸ÅÄ¶à°æ±¾Ö®¼ä¿ÉÒԶԱȡ£

Ambari WebÖн«¼à¿Ø¼¯Èº²¶»ñµ½µÄ¹Ø¼ü²Ù×÷Ö¸±êֵͨ¹ýÁ¼ºÃµÄWidget¿ÉÊÓ»¯£¬°ïÖúÎÒÃÇÈÕ³£Äܹ»¿ìËÙÅŲéºÍ½â¾öÎÊÌ⣬Ö÷¶¯Ô¤·ÀÎÊÌâÉÏÃæÌá¸ßÁ˲»ÉÙЧÂÊ¡£ÀýÈçÎÒÃÇͨ¹ý¹Û²ìYarn Pending AppsµÄ¸öÊý£¬·¢ÏÖ¶Ñ»ý±È½ÏÑÏÖØµÄʱ¶Îºó£¬»áºÏÀíÈ¥µ÷Õû×÷ÒµµÄÖ´ÐÐʱ¼ä£»Í¨¹ý¹Û²ì¼¯ÈºÕûÌåCPUÓëÄÚ´æµÄÀûÓÃÂÊ£¬¿ÉÒÔ¿ìËÙ¶¨Î»¼¯Èº¼ÆËãÄÜÁ¦µÄÆ¿¾±¼´CPUʹÓÃÂʽϸߵ«ÊÇÄÚ´æÊ¹ÓÃÂÊÏà¶Ô½ÏµÍ£¬È»ºóÎÒÃÇ»áºÏÀíµ÷ÕûYarnÖÐContainer¶ÔÓÚCPUÀûÓõIJßÂԵȡ£

ͼ19 ¼à¿ØÖ¸±êÖµ¿ÉÊÓ»¯

ÓÉÓÚÎÒÃÇ¿ÉÒÔÔÚͳһµÄAmbari Web½çÃæÖжԼ¯Èº×é¼þ½øÐвÙ×÷¡¢ÅäÖùÜÀí£¬»ùÓÚAmbari¼¯ÈºÍ³Ò»¹ÜÀíÌØÐÔ±ê×¼Óë¹æ·¶»¯Á˼¯ÈºµÄÔËά¹ÜÀí²Ù×÷£¬ÏàÓ¦µÄ²Ù×÷ÀýÈçÔö¼Óɾ³ý½Úµã¡¢×é¼þÇ¨ÒÆ¡¢ÅäÖÃÐ޸ĵȣ¬¶¼ÓÐÃ÷È·µÄȨÏÞ·¶Î§ÒÔ¼°ÍêÕûµÄ²Ù×÷ÀúÊ·¼Ç¼£¬²¢ÇÒ½«Ambari ËùÓÐʹÓÃÕßÈë¿Ú×öͳһ¹ÜÀí£¬¹«Ë¾ÄÚ²¿Ïà¹ØÈËÔ±Ö»ÄÜÔÚȨÏÞ·¶Î§ÄÚ¶Ô¼¯Èº½øÐÐÓм£¿ÉÑ­µÄ²Ù×÷¡£

ͼ20 ¼¯Èº¹ÜÀíÕ߸÷½ÇɫȨÏÞ±í

ÈçÉÏ±í½«¶ÔÓÚ¼¯ÈºµÄÔËά¹ÜÀí²Ù×÷½ÇɫȨÏÞ·Ö³ÉËĸöLevel£¬×îµÍµÄLevelÊÇÄܹ»ÔÚAmbari WebÖв鿴¼¯ÈºµÄÔËÐÐ״̬¡¢ÅäÖᢸ澯µÈÐÅÏ¢£¬µ«ÊǶÔÓÚ¼¯ÈºÃ»ÓÐÈκεIJÙ×÷ȨÏÞ£¬´ËÀàȨÏÞ¿ª·Å¸øËùÓÐÐèÒª¶Ô¼¯ÈºÔËÐн¡¿µ×´Ì¬ÓйØ×¢µÄ¼¯ÈºÊ¹ÓÃÕߣ¬ÀýÈç¿ÉÒÔÔÚTez ViewÖв鿴×Ô¼ºµÄ×÷ÒµÔËÐÐÇé¿ö£¬ÔÚYarn ¹ÜÀí½çÃæÖв鿴¸ºÔصȵȡ£È»ºóÔÚÕë¶Ô¼¯Èº¿É²Ù×÷ÈËȺ£¬Í¬Ñù»®·ÖÁ˲Ù×÷×é¼þ¼¶±ð¡¢¼¯ÈºÕûÌå¼¶±ðÁ½¸öLevel£¬Ò»°ãµÄ¼¯ÈºÔËάÈËÔ±¿ÉÒÔÈ¥¹ÜÀíÆäÖÐ×é¼þ¡¢½øÐе÷ÓÅ£¬¶øÉÏÉýµ½¼¯ÈºÍ³³ï¹æ»®ÕâÒ»²ãÃæ£¬ÔòÐèÒª¶ÔÕûÌå¼Ü¹¹ÊìÖªµÄ¼¯Èº¼Ü¹¹ÈËԱȥ¹ÜÀí£¬×îºó³¬¼¶¹ÜÀíÔ±³ý¿ªÉÏÊöËùÓÐȨÏÞÖ®Í⣬¶àÁËÒ»²ãAmbari±¾Éíϵͳ¼¶±ðµÄ¹ÜÀí¡£¹ÜÀíȨÏÞ°´²ã¼¶»®·Ö£¬¼´Äܹ»Âú×㲻ͬ¼¯ÈºÊ¹ÓÃÕßµÄÒªÇó£¬Í¬ÑùÒ²±£»¤Á˼¯ÈºµÄÔËÐа²È«ºÍÎȶ¨¡£

È»ºóÎÒÃǸù¾ÝAmbariÌṩµÄ¼à¿Ø¹¦ÄÜ¿ª·¢ÁËÏàÓ¦µÄÅäÌ×´¦Àí³ÌÐò£¬Ä¿µÄÔÚÓÚµÚһʹÓÃÎÒÃÇ×Ô¼ºµÄ¸æ¾¯ÏµÍ³È¥Ìæ´úAmbariÖв»Ì«ÓѺõĸ澯ϵͳ£»µÚ¶þ³ä·ÖÀûÓÃAmbari api²»½öʵÏָ澯¶øÇÒÄܹ»ÔÚ¹ÊÕϳöÏÖʱһ¶¨³Ì¶ÈÉϳ¢ÊÔ×Ô¶¯»Ö¸´¡£Ìá¸ßÎÒÃÇÔÚ¼¯Èº¼à¿Ø¡¢¹ÜÀí·½ÃæµÄЧÂÊ¡£

Ê×ÏÈAmbariÌṩÁËÁ¼ºÃµÄRestapiÓÃÓÚÓ뼯ȺµÄ¸÷ÖÖÖ±½Ó½»»¥£¬ÏÂÃæÎÒÁоÙÒ»×éRestapiʾÀý£º

http://ambari /api/v1 /clusters/hdp /hosts /${host_ name}/ host_components/ ZKFC

{
"RequestInfo": {
"context": "ReStart ZKFC",
"operation_ level": {
"cluster_ name": "hdp",
"host_ name": "${host_ name}",
"service_ name": "HDFS"
}
},
"Body": {
"HostRoles": {
"state": "STARTED"
}
}
}

ÉÏÊöURLΪµäÐ͵IJÙ×÷Ö¸¶¨»úÆ÷ZKFC½ø³ÌµÄÃüÁÈç¹ûHttp¶¯×÷ÊÇGETÔò·µ»Ø¸Ã½ø³ÌµÄ״̬ÐÅÏ¢£¬Èç¹ûÊÇPUTÇÒÔö¼ÓjsonÇëÇóÄÚÈÝÔòÊǶÔZKFCµÄÒ»´Î¾ßÌå²Ù×÷£¬´ÓRequestInfoÖÐcontextµÄÃèÊö¿ÉÒÔ¿´³öÊǶÔZKFCµÄÖØÆô²Ù×÷£¬operation_levelÃèÊöÁ˾ßÌå²Ù×÷¶ÔÏóµÄÐÅÏ¢ÊôÓÚÄĸö¼¯ÈºÄĸö½Úµã£¬ÒÔ¼°ZKFCÊôÓÚHDFS·þÎñµÄÒ»¸ö×é¼þ£¬×îºóBody HostRolesÃèÊöÁËZKFCÖØÆô²Ù×÷ºóÓ¦¸ÃÊôÓÚÆô¶¯×´Ì¬¡£

½éÉÜÍêÁËAmbariÖеIJÙ×÷API£¬ÎÒÃÇÀûÓÃapiµÄÌØÐÔÉè¼ÆÁËÒ»Ì×ÍêÕûµÄ×Ô¶¯·¢ÏÖ×é¼þÒÉËÆÑÏÖØ´íÎó¡¢È·ÈÏ´íÎ󲢸澯¡¢³¢ÊÔ»Ö¸´µÄ¹¦ÄÜÅä¼þ£¬ÍêÕûÂß¼­Í¼ÈçÏ£º

ͼ21 ÀûÓÃAmbari²Ù×÷¼¯Èºapi½øÐÐ×Ô¶¯»Ö¸´Âß¼­

¶¨ÆÚɨÃèdm_monitor_info AmbariÖж¨ÒåµÄ¸æ¾¯ÏîµÄÖÜÆÚɨÃè״̬£¬·¢ÏÖ×é¼þ´æÔÚµÄ×î½üÒ»´ÎµÄÒþ»¼£¬È·ÈÏ×é¼þÊÇ·ñÕæÕý´¦ÓÚ·þÎñ²»¿ÉÓõÄ״̬(¿ÉÄÜÊǼ¯ÈºÔÚά»¤¼´maintainance_state=¡®ON¡¯)ºó£¬¼Ç¼¸Ã´Î¸æ¾¯ÐÅÏ¢£¬ÖÜÆÚÐÔ³¢ÊÔ×Ô¶¯»Ö¸´Õý³£Ö®Ç°¸æ¾¯ÏµÍ³±¨¸æÏûÏ¢£¬Ö±µ½»Ö¸´ºó×îºóÒ»´ÎÏò¸æ¾¯ÏµÍ³±¨¸æ³É¹¦»Ö¸´ÏûÏ¢ºó£¬Ïû³ý´Ë´Î¸æ¾¯ÐÅÏ¢¡£

¸ù¾ÝÉÏÏߺóÔËÐнü°ëÄêµÄͳ¼Æ£¬ÀÛ¼Æ×Ô¶¯»Ö¸´×é¼þʱ¼ä·Ö²¼ÈçÏÂͼ£¬AmbariÖÐ×îСɨÃèÖÜÆÚΪ1·ÖÖÓ£¬ËùÒÔ°´ÕÕ·ÖÖÓ¼¶±ðµÄɨÃè³öÒÉËÆ×é¼þÎÊÌâÓë×Ô¶¯»Ö¸´µÄƽ¾ùʱ¼äÔÚÎå·ÖÖÓÖ®ÄÚ£¬ÇÒ¾ø´ó¶àÊý¹ÊÕϻָ´ÔÚÒ»·ÖÖÓ£¬´ó´óÌá¸ßÁË×é¼þµÄ·þÎñ¿ÉÓÃÐÔ¡£

ͼ22 ÀûÓÃAmbari¼à¿Ø×ö×Ô¶¯¹ÊÕϻָ´Ê±¼ä·Ö²¼

ºó¼Ç

ÔÚAmbari½Ó¹ÜÏßÉϼ¯ÈººóÒѾ­Îȶ¨ÔËÐÐÁ˰ëÄêÖ®¾Ã£¬Ëü°ïÖúÎÒÃÇ´ó´óÌá¸ßÁ˼¯Èº¹ÜÀí¡¢¼à¿Ø·½ÃæµÄЧÂÊ£¬ÔÚ°ïÖúÎÒÃÇÐÔÄÜÅŲ顢¿ÆÑ§µ÷ÓÅ·½Ãæ¸øÁ˺ܴóµÄ°ïÖú¡£µ±È»Ambari¹ÜÀíÓë¼à¿Ø¼¯ÈºÖ»ÊÇ´óÊý¾Ýƽ̨»ù´¡½¨ÉèµÄµÚÒ»²½£¬ÔÚÖÇÄÜ»¯¡¢ÆóÒµ¼¶´óÊý¾Ýƽ̨»ù´¡½¨Éè¹ý³ÌÖУ¬ÎÒÃÇ»áÀûÓÃÆäÌṩµÄHDPƽ̨·þÎñ²»¶ÏÌá¸ß´óÊý¾Ýƽ̨»ù´¡·þÎñˮƽ¡£

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

»ùÓÚEAµÄÊý¾Ý¿â½¨Ä£
Êý¾ÝÁ÷½¨Ä££¨EAÖ¸ÄÏ£©
¡°Êý¾Ýºþ¡±£º¸ÅÄî¡¢ÌØÕ÷¡¢¼Ü¹¹Óë°¸Àý
ÔÚÏßÉ̳ÇÊý¾Ý¿âϵͳÉè¼Æ ˼·+Ч¹û
 
Ïà¹ØÎĵµ

GreenplumÊý¾Ý¿â»ù´¡Åàѵ
MySQL5.1ÐÔÄÜÓÅ»¯·½°¸
ijµçÉÌÊý¾ÝÖÐ̨¼Ü¹¹Êµ¼ù
MySQL¸ßÀ©Õ¹¼Ü¹¹Éè¼Æ
Ïà¹Ø¿Î³Ì

Êý¾ÝÖÎÀí¡¢Êý¾Ý¼Ü¹¹¼°Êý¾Ý±ê×¼
MongoDBʵս¿Î³Ì
²¢·¢¡¢´óÈÝÁ¿¡¢¸ßÐÔÄÜÊý¾Ý¿âÉè¼ÆÓëÓÅ»¯
PostgreSQLÊý¾Ý¿âʵսÅàѵ