æšå¹Žã Apache Hadoop ã«ãšã£ãŠå€§ããªå€åã®å¹Žã§ãã£ãããšã¯ãããããåšç¥ã®äºå®ã§ããããæšå¹ŽãCloudera ãš Hortonworks ãå䜵ã (å®è³ªçã«ã¯ Hortonworks ãè²·å)ãMapr ã¯æ·±å»ãªè²¡ååé¡ã«ãã Hewlett Packard ã«å£²åŽãããŸãããæ°å¹Žåããªã³ãã¬ãã¹ã®ã€ã³ã¹ããŒã«ã®å ŽåãCloudera ãš Hortonworks ã®ã©ã¡ãããéžæããå¿ èŠãããããšãå€ãã£ãã®ã§ããã仿¥ã§ã¯æ®å¿µãªããããã®éžæè¢ã¯ãªããªããŸãããããã²ãšã€ã®é©ãã¯ãCloudera ãä»å¹Ž 2019 æã«ããã£ã¹ããªãã¥ãŒã·ã§ã³ã®ãã€ã㪠ãã«ããå ¬éãªããžããªã«ãªãªãŒã¹ããããšã忢ããçŸåšã¯ææãµãã¹ã¯ãªãã·ã§ã³ãéããŠã®ã¿å ¥æå¯èœãšãªããšçºè¡šããããšã§ãããã¡ãããXNUMX 幎æ«ãŸã§ã«ãªãªãŒã¹ããã CDH ãš HDP ã®ææ°ããŒãžã§ã³ãããŠã³ããŒãããããšã¯åŒãç¶ãå¯èœã§ããããããã®ãµããŒã㯠XNUMX ïœ XNUMX 幎éæäŸãããäºå®ã§ããããããæ¬¡ã«äœããã¹ãã§ãããã?以åã«å®æè³Œèªæãæ¯æã£ã人ã«ã¯äœãå€ãããŸããããŸãããã£ã¹ããªãã¥ãŒã·ã§ã³ã®ææçã«åãæ¿ããããªãããã¯ã©ã¹ã¿ãŒ ã³ã³ããŒãã³ãã®ææ°ããŒãžã§ã³ããããããã®ä»ã®ã¢ããããŒããåãåãããæ¹ã®ããã«ããã®èšäºãçšæããŸããããã®äžã§ãçŸåšã®ç¶æ³ããæãåºãããã®å¯èœãªéžæè¢ãæ€èšããŸãã
ãã®èšäºã¯ã©ã¡ãããšèšããšã¬ãã¥ãŒã§ãããã£ã¹ããªãã¥ãŒã·ã§ã³ã®æ¯èŒã詳现ãªåæã¯å«ãŸããŸããããŸããã€ã³ã¹ããŒã«ãæ§æã®æé ãå«ãŸããŸãããããã§äœãèµ·ããã§ãããã?ããã§ã¯ãArenadata Hadoop ãªã©ã®ãã£ã¹ããªãã¥ãŒã·ã§ã³ã«ã€ããŠç°¡åã«èª¬æããŸããããã¯ã仿¥ã§ã¯éåžžã«çãããã®ã§ããããã®å¯çšæ§ããåœç¶æ³šç®ã«å€ããŸããæ¬¡ã«ãVanilla Hadoop ã«ã€ããŠã䞻㫠Apache Bigtop ã䜿çšããŠã©ã®ããã«ã調çãã§ãããã«ã€ããŠèª¬æããŸããæºåãã§ããŠïŒããã§ã¯ã«ããã®äžãžããããã
ã¢ãªãŒãããŒã¿ Hadoop

ããã¯ãåœå
éçºã®ãŸã£ããæ°ããããããŠãŸã ããŸãç¥ãããŠããªãååžã§ããæ®å¿µãªãããçŸæç¹ã§ã¯åœŒã«é¢ããæ
å ±ã¯Habrã ãã«ããã .
詳ããæ å ±ã¯å ¬åŒãŠã§ããµã€ããã芧ãã ããã ãããžã§ã¯ãããã£ã¹ããªãã¥ãŒã·ã§ã³ã®ææ°ããŒãžã§ã³ã¯ãããŒãžã§ã³ 3.1.2 ã®å Žå㯠Hadoop 3ãããŒãžã§ã³ 2.8.5 ã®å Žå㯠2 ã«åºã¥ããŠããŸãã
ããŒããããã«é¢ããæ å ±ã¯ä»¥äžãã芧ãã ããã .

Arenadata ã¯ã©ã¹ã¿ ãããŒãžã£ ã€ã³ã¿ãŒãã§ãŒã¹
ã¢ãªãŒãããŒã¿ã®äž»å補å㯠ã¯ãå瀟ã®ããŸããŸãªãœãããŠã§ã¢ ãœãªã¥ãŒã·ã§ã³ãã€ã³ã¹ããŒã«ãæ§æãç£èŠããããã«äœ¿çšãããŸãã ADCM ã¯ç¡æã§é åžãããŠãããAnsible ãã¬ã€ããã¯ã®ã»ããã§ãããã³ãã«ã远å ããããšã§æ©èœãæ¡åŒµãããŸãããã³ãã«ã¯ããšã³ã¿ãŒãã©ã€ãºãšã³ãã¥ããã£ã® 2 ã€ã®ã¿ã€ãã«åãããŠããŸããææ°çã¯ãArenadata Web ãµã€ãããç¡æã§ããŠã³ããŒãã§ããŸããç¬èªã®ãã³ãã«ãéçºã㊠ADCM ã«æ¥ç¶ããããšãå¯èœã§ãã
Hadoop 3ã®å°å ¥ãšç®¡çã«ã¯ãADCMãšé£æºããã³ãã¥ããã£çãã³ãã«ãæäŸãããŠãããHadoop 2ã®å Žå㯠代æ¿ãšããŠãããã±ãŒãž ãªããžããªã¯ãããªã㯠ã¢ã¯ã»ã¹çšã«å ¬éãããŠããããã¹ãŠã®ã¯ã©ã¹ã¿ãŒ ã³ã³ããŒãã³ãã«å¯ŸããŠéåžžã®æ¹æ³ã§ããŠã³ããŒãããã³ã€ã³ã¹ããŒã«ã§ããŸããå šäœçã«ãååžã¯éåžžã«è峿·±ãããã§ãã Cloudera Manager ã Ambari ã®ãããªãœãªã¥ãŒã·ã§ã³ã«æ £ããŠãã人ã®äžã«ã¯ãADCM èªäœãæ°ã«å ¥ã人ãããã§ããããäžéšã®äººã«ãšã£ãŠã¯ãååžã èŒžå ¥ä»£æ¿ã®ããã
æ¬ ç¹ã«ã€ããŠèšãã°ãããã¯ä»ã®ãã¹ãŠã® Hadoop ãã£ã¹ããªãã¥ãŒã·ã§ã³ãšåãã§ããã€ãŸãïŒ
- ããããããã³ããŒããã¯ã€ã³ãã§ãã Cloudera ãš Hortonworks ã®äŸãããäŒæ¥ãããªã·ãŒã倿Žãããªã¹ã¯ãåžžã«ååšããããšããã§ã«ããã£ãŠããŸãã
- Apache ã¢ããã¹ããªãŒã ã«æ¯ã¹ãŠå€§å¹ ã«é ããŠããŸãã
ããã©Hadoop

ãåç¥ã®ãšãããHadoop ã¯ã¢ããªã·ãã¯ãªè£œåã§ã¯ãªããå®éã«ã¯åæ£ãã¡ã€ã« ã·ã¹ãã HDFS ãäžå¿ãšããäžé£ã®ãµãŒãã¹ã§ãã 1 ã€ã®ãã¡ã€ã« ã¯ã©ã¹ã¿ãŒã§ååã ãšèãã人ã¯ã»ãšãã©ããŸããã Hive ãå¿
èŠãªäººãããã°ãPresto ãå¿
èŠãªäººãããŸããããã«ãHBase ã Phoenix ããããSpark ã®äœ¿çšãå¢ããŠããŸãããªãŒã±ã¹ãã¬ãŒã·ã§ã³ãšããŒã¿ã®ããŒãã§ã¯ãOozieãSqoopãFlume ã䜿çšãããããšããããŸããã»ãã¥ãªãã£ã«é¢ããçåãçããå ŽåãKerberos ãš Ranger ã®çµã¿åãããããã«æãæµ®ãã³ãŸãã
Hadoop ã³ã³ããŒãã³ãã®ãã€ã㪠ããŒãžã§ã³ã¯ãåãšã³ã·ã¹ãã ãããžã§ã¯ãã® Web ãµã€ãã§ tarball 圢åŒã§å ¥æã§ããŸããããããããŠã³ããŒãããŠã€ã³ã¹ããŒã«ãéå§ã§ããŸãããæ¡ä»¶ã 1 ã€ãããŸããããã¯ãããããå®è¡ããå¿ èŠããããçã®ããã€ããªããããã±ãŒãžãåå¥ã«ã¢ã»ã³ãã«ããããšã«å ããŠãããŠã³ããŒãããã³ã³ããŒãã³ãã®ããŒãžã§ã³éã®äºææ§ã«èªä¿¡ãæãŠãªããªãããšã§ãããã奜ãŸãããªãã·ã§ã³ã¯ãApache Bigtop ã䜿çšããŠãã«ãããããšã§ãã Bigtop ã䜿çšãããšãApache Maven ãªããžããªãããã«ããããã¹ããå®è¡ããããã±ãŒãžããã«ãã§ããããã«ãªããŸããããããç§ãã¡ã«ãšã£ãŠéåžžã«éèŠãªã®ã¯ãBigtop ãçžäºã«äºææ§ã®ããã³ã³ããŒãã³ãã®ããŒãžã§ã³ãçµã¿ç«ãŠããšããããšã§ãã以äžã§ããã«è©³ãã説æããŸãã
ã¢ããã ããã°ããã

Apache Bigtopã¯ãããŸããŸãªãã®ãæ§ç¯ãããã±ãŒãžåããã¹ãããããã®ããŒã«ã§ãã
Hadoop ã Greenplum ãªã©ã®ãªãŒãã³ãœãŒã¹ ãããžã§ã¯ããããã°ãããã«ã¯ããããã®
ãªãªãŒã¹ãå·çæç¹ã§ã¯ãææ°ã®å®å®ãªãªãŒã¹ã¯ããŒãžã§ã³1.4ã§ããã
ãã¹ã¿ãŒã§ã¯1.5ã§ããããªãªãŒã¹ã®ããŒãžã§ã³ã«ãã£ãŠããŒãžã§ã³ãç°ãªã
ã³ã³ããŒãã³ããäŸãã°ã1.4ã®å ŽåãHadoopã®ã³ã¢ã³ã³ããŒãã³ãã¯ããŒãžã§ã³2.8.5ã§ããã¹ã¿ãŒã§ã¯
2.10.0ããµããŒããããã³ã³ããŒãã³ãã®æ§æãå€åããŠããŸããæä»£é
ãã®ãã®ã§
æŽæ°ãããŠããªããã®ã¯æ¶ãã代ããã«æ°ãããããéèŠã®ãããã®ãç»å Žãã
ããã¯å¿
ããã Apache ãã¡ããªãŒèªäœããã®ãã®ã§ã¯ãããŸããã
Bigtopã«ã¯æ§ã 㪠.
ç§ãã¡ã Bigtop ã«ã€ããŠç¥ãå§ãããšãããŸãé©ããã®ã¯ãä»ã® Apache ãããžã§ã¯ããšæ¯èŒããŠããã®æ®å床ãšç¥ååºŠãæ§ããã§ããããšããããŠã³ãã¥ããã£ãéåžžã«å°ããããšã§ããããã®ããã補åã«é¢ããæ å ±ã¯æå°éã§ããããã©ãŒã©ã ãã¡ãŒãªã³ã° ãªã¹ãã§çºçããåé¡ã®è§£æ±ºçãæ€çŽ¢ããŠããäœãåŸãããªãå¯èœæ§ããããŸããåœåãããŒã«èªäœã®ç¹æ®æ§ã«ããããã£ã¹ããªãã¥ãŒã·ã§ã³ã®å®å šãªã¢ã»ã³ããªãå®è¡ããã®ã¯å°é£ãªäœæ¥ã§ããããããã«ã€ããŠã¯åŸã»ã©èª¬æããŸãã
åœæãããããããžã§ã¯ãã«èå³ãæã£ãŠãã人ãã¡ãžã®äºåç·šãšã㊠LinuxGentooãLFSã®ãããª-universeã䜿ããšãæããããæããŠãèªåãã¡ã§ebuildãæ¢ãããïŒããã«ã¯æžãããïŒããŠãæ°ãããããã䜿ã£ãŠMozillaã宿çã«åã³ã³ãã€ã«ããŠããã壮倧ãªãæä»£ãæãåºããããããŸããã
Bigtopã®å€§ããªå©ç¹ã¯ãåºç€ãšãªãããŒã«ã®ãªãŒãã³æ§ãšæ±çšæ§ã®é«ãã§ããGradleãšApache MavenãããŒã¹ã«æ§ç¯ãããŠããŸããGradleã¯ãGoogleããã«ãããŒã«ãšããŠãã䜿çšããŠããããšã§ç¥ãããŠããŸãã Androidæè»æ§ããããããããã宿Šã§éãããããããŒã«ã§ããMavenã¯Apacheã®ãã€ãã£ããããžã§ã¯ããã«ãããŒã«ã§ãããApacheã®è£œåã®ã»ãšãã©ã¯Mavençµç±ã§ãªãªãŒã¹ãããŠãããããããã§ãå€ãããšã¯ã§ããŸãããPOMïŒãããžã§ã¯ããªããžã§ã¯ãã¢ãã«ïŒã«æ³šç®ãã䟡å€ããããŸããããã¯ãMavenããããžã§ã¯ããæäœããããã«å¿
èŠãªãã¹ãŠãèšè¿°ãããåºæ¬ãã®XMLãã¡ã€ã«ã§ããããã¹ãŠã®äœæ¥ã¯ãã®ãã¡ã€ã«ãäžå¿ã«æ§ç¯ãããŸãã
Maven ã®äžéšã§ãããBigtop ãåããŠäœ¿çšããå Žåãéåžžãããã€ãã®é害ãçºçããŸãã
ç·Žç¿
ã§ã¯ã©ãããå§ããã°ããã§ãããã?ããŠã³ããŒã ããŒãžã«ã¢ã¯ã»ã¹ããææ°ã®å®å®ããŒãžã§ã³ãã¢ãŒã«ã€ããšããŠããŠã³ããŒãããŸãã Bigtop ã«ãã£ãŠåéããããã€ã㪠ã¢ãŒãã£ãã¡ã¯ããããã§èŠã€ãããŸããã¡ãªã¿ã«ãäžè¬çãªããã±ãŒãž ãããŒãžã£ãŒã§ã¯ãYUM ãš APT ããµããŒããããŠããŸãã
ãŸãã¯ãææ°ã®å®å®çãªãªãŒã¹ãçŽæ¥ããŠã³ããŒãããããšãã§ããŸãã
githubïŒ
$ git clone --branch branch-1.4 https://github.com/apache/bigtop.gitãããã°ããããã§ã®ã¯ããŒã³äœæ...
remote: Enumerating objects: 46, done.
remote: Counting objects: 100% (46/46), done.
remote: Compressing objects: 100% (41/41), done.
remote: Total 40217 (delta 14), reused 10 (delta 1), pack-reused 40171
ÐПлÑÑеМОе ПбÑекÑПв: 100% (40217/40217), 43.54 MiB | 1.05 MiB/s, гПÑПвП.
ÐпÑеЎелеМОе ОзЌеМеМОй: 100% (20503/20503), гПÑПвП.
Updating files: 100% (1998/1998), гПÑПвП.çµæãšããŠåŸããã ./bigtop ãã£ã¬ã¯ããªã¯æ¬¡ã®ããã«ãªããŸãã
./bigtop-bigpetstore â ãã¢ã¢ããªã±ãŒã·ã§ã³ãåæäŸ
./bigtop-ci â CIããŒã«ããããJenkins
./bigtop-data-generators â ããŒã¿çæãåæãã¹ã¢ãŒã¯ãã¹ãçšãªã©ã
./bigtop-deploy â ãããã€ã¡ã³ãããŒã«
./bigtop-packages â æ§æãã¹ã¯ãªãããã¢ã»ã³ããªçšã®ããããããŒã«ã®äž»èŠéšå
./bigtop-test-framework â ãã¹ããã¬ãŒã ã¯ãŒã¯
./bigtop-tests â ãã¹ãèªäœãè² è·ãšç
./bigtop_toolchain â çµã¿ç«ãŠç°å¢ãããŒã«ãåäœããããã®ç°å¢ã®æºå
./build â ã¢ã»ã³ããªã®äœæ¥ãã£ã¬ã¯ããª
./dl â ããŠã³ããŒããããœãŒã¹ã®ãã£ã¬ã¯ããª
./docker â Dockerã€ã¡ãŒãžã§ã®ã¢ã»ã³ããªããã¹ã
./gradle â Gradle èšå®
./output â ãã«ãææç©ã眮ããããã£ã¬ã¯ããª
./provisioner - ããããžã§ãã³ã°
ãã®æ®µéã§ç§ãã¡ã«ãšã£ãŠæãè峿·±ãã®ã¯ãã¡ã€ã³æ§æã§ã ./bigtop/bigtop.bomã«ã¯ããµããŒããããŠãããã¹ãŠã®ã³ã³ããŒãã³ããšãã®ããŒãžã§ã³ã衚瀺ãããŸããããã§ã補åã®å¥ã®ããŒãžã§ã³ (çªç¶ãã«ããå®è¡ãããå Žå) ãŸãã¯ãã«ã ããŒãžã§ã³ (ããšãã°ãéèŠãªãããã远å ããå Žå) ãæå®ã§ããŸãã
ãµããã£ã¬ã¯ããªãéåžžã«è峿·±ããã®ã§ãã ./bigtop/bigtop-packagesããã¯ãã³ã³ããŒãã³ããšããã±ãŒãžãçµã¿ç«ãŠãããã»ã¹ã«çŽæ¥é¢ä¿ããŠããŸãã
ã¢ãŒã«ã€ããããŠã³ããŒãããŠè§£åããããgithub ããã¯ããŒã³ãäœæãããããã«ããéå§ã§ããŸãã?
ãããããŸãã¯ç°å¢ãæŽããŸãããã
ç°å¢ã®æºå
ããã§å°ãäœè«ãå¿ èŠã§ããã»ãŒããããè€éãªè£œåãæ§ç¯ããã«ã¯ãç¹å®ã®ç°å¢ãå¿ èŠã§ãããã®å Žåããã㯠JDKãåãå ±æã©ã€ãã©ãªãããã㌠ãã¡ã€ã«ãªã©ãantãivy2 ãªã©ã®ããŒã«ãªã©ã§ãã Bigtop ã«å¿ èŠãªç°å¢ãååŸãã 1.0 ã€ã®ãªãã·ã§ã³ã¯ããã«ã ãã¹ãã«å¿ èŠãªã³ã³ããŒãã³ããã€ã³ã¹ããŒã«ããããšã§ããæç³»åã«ã€ããŠã¯ééã£ãŠãããããããŸããããããŒãžã§ã³ XNUMX 以éã§ã¯ãäºåæ§ææžã¿ã§å©çšå¯èœãª Docker ã€ã¡ãŒãžãçµã¿èŸŒããªãã·ã§ã³ãããããã§ãããã¡ãã§ç¢ºèªã§ããŸãã
ç°å¢ã®æºåã«é¢ããŠã¯ããããã¢ã·ã¹ã¿ã³ããã Puppet ããããŸãã
次ã®ã³ãã³ãã䜿çšã§ããŸããèµ·åã¯ã«ãŒããã£ã¬ã¯ããªããè¡ãããŸãã
éå
·ã ./bigtop:
./gradlew toolchain
./gradlew toolchain-devtools
./gradlew toolchain-puppetmodules
ãŸãã¯çŽæ¥ Puppet çµç±ã§:
puppet apply --modulepath=<path_to_bigtop> -e "include bigtop_toolchain::installer"
puppet apply --modulepath=<path_to_bigtop> -e "include bigtop_toolchain::deployment-tools"
puppet apply --modulepath=<path_to_bigtop> -e "include bigtop_toolchain::development-tools"æ®å¿µãªããããã®æ®µéã§ãã§ã«å°é£ãçããå¯èœæ§ããããŸããããã§ã®äžè¬çãªã¢ããã€ã¹ã¯ããµããŒããããŠãããã£ã¹ããªãã¥ãŒã·ã§ã³ã䜿çšãããããã«ã ãã¹ããææ°ã«ããããdocker ãã¹ã詊ãããšã§ãã
çµç«
äœãéããŠã¿ãã°ããã§ãããã?ãã®è³ªåãžã®çãã¯ã³ãã³ãåºåã«ãã£ãŠç€ºãããã
./gradlew tasks ããã±ãŒãž ã¿ã¹ã¯ ã»ã¯ã·ã§ã³ã«ã¯ãBigtop ã®æçµçãªææç©ãšãªã補åãããã€ããããŸãã
ãããã¯ã-rpm ãŸã㯠-pkg-ind (ãã«ãã®å Žå) ãšããæ¥å°ŸèŸã§èå¥ã§ããŸãã
docker ã§)ãç§ãã¡ã®å Žåãæãè峿·±ãã®ã¯ Hadoop ã§ãã
ãã«ã ãµãŒããŒç°å¢ã§ãã«ãããŠã¿ãŸãã
./gradlew hadoop-rpmBigtop ã¯ç¹å®ã®ã³ã³ããŒãã³ãã«å¿ èŠãªãœãŒã¹ ãã¡ã€ã«ãããŠã³ããŒããããã«ããéå§ããŸãããããã£ãŠãããŒã«ã®æäœã¯ Maven ãªããžããªããã®ä»ã®ãœãŒã¹ã«é¢é£ä»ããããŠãããã€ã³ã¿ãŒããã ã¢ã¯ã»ã¹ãå¿ èŠã§ãã
äœæ¥ããã»ã¹äžã«æšæºåºåãçæãããŸããå Žåã«ãã£ãŠã¯ããããšãšã©ãŒ ã¡ãã»ãŒãžããäœãééã£ãŠããã®ãããããããšããããŸããå Žåã«ãã£ãŠã¯è¿œå æ
å ±ãååŸããå¿
èŠãããããšããããŸãããã®å ŽåãåŒæ°ã远å ãã䟡å€ããã --info ãŸã㯠--debugããŸã圹ã«ç«ã€ãããããªã âstacktraceãã¡ãŒãªã³ã°ãªã¹ããšã®ãã®åŸã®é£çµ¡ã®ããã®ããŒã¿ã»ããã圢æãã䟿å©ãªæ¹æ³ããããŸãã --scan.
ãã®å©ããåããŠãbigtopã¯ãã¹ãŠã®æ
å ±ãåéãããããGradleã«é
眮ãããã®åŸãªã³ã¯ãæäŸããŸãã
ããã«åŸãã°ãæèœãªäººã¯ã¢ã»ã³ããªã倱æããçç±ãçè§£ã§ããããã«ãªããŸãã
ãã®ãªãã·ã§ã³ã䜿çšãããšããŠãŒã¶ãŒåãããŒããç°å¢å€æ°ãªã©ã®äžèŠãªæ
å ±ãå
¬éãããå¯èœæ§ããããããæ³šæããŠãã ããã
å€ãã®å Žåããšã©ãŒã¯çµã¿ç«ãŠã«å¿
èŠãªã³ã³ããŒãã³ããå
¥æã§ããªãããšãåå ã§çºçããŸããéåžžããœãŒã¹ã®ã«ãŒã ãã£ã¬ã¯ããªã«ãã pom.xml å
ã®ã¢ãã¬ã¹ãªã©ããœãŒã¹å
ã®äœããä¿®æ£ããããããäœæããããšã§ããã®åé¡ã解決ã§ããŸããããã¯ãé©åãªãã£ã¬ã¯ããªã«äœæããŠé
眮ããããšã«ãã£ãŠè¡ãããŸãã ./bigtop/bigtop-packages/src/common/oozie/ ãããã¯ãäŸãã°ã patch2-fix.diffã
--- a/pom.xml
+++ b/pom.xml
@@ -136,7 +136,7 @@
<repositories>
<repository>
<id>central</id>
- <url>http://repo1.maven.org/maven2</url>
+ <url>https://repo1.maven.org/maven2</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
ããããããã®èšäºãèªãã§ããæç¹ã§ã¯ãäžèšã®ä¿®æ£ãèªåã§è¡ãå¿ èŠã¯ãªãã§ãããã
ãã«ã ã¡ã«ããºã ã«ãããã倿Žãé©çšããå Žåã¯ãclean ã³ãã³ãã䜿çšããŠãã«ããããªã»ãããããå¿ èŠãããå ŽåããããŸãã
./gradlew hadoop-clean
> Task :hadoop_vardefines
> Task :hadoop-clean
BUILD SUCCESSFUL in 5s
2 actionable tasks: 2 executedãã®æäœã«ããããã®ã³ã³ããŒãã³ãã®ã¢ã»ã³ããªã«å¯Ÿãããã¹ãŠã®å€æŽãããŒã«ããã¯ããããã®åŸã¢ã»ã³ããªãå床å®è¡ãããŸããä»åã¯ãdocker ã€ã¡ãŒãžã§ãããžã§ã¯ãããã«ãããŠã¿ãŸãã
./gradlew -POS=centos-7 -Pprefix=1.2.1 hadoop-pkg-ind
> Task :hadoop-pkg-ind
Building 1.2.1 hadoop-pkg on centos-7 in Docker...
+++ dirname ./bigtop-ci/build.sh
++ cd ./bigtop-ci/..
++ pwd
+ BIGTOP_HOME=/tmp/bigtop
+ '[' 6 -eq 0 ']'
+ [[ 6 -gt 0 ]]
+ key=--prefix
+ case $key in
+ PREFIX=1.2.1
+ shift
+ shift
+ [[ 4 -gt 0 ]]
+ key=--os
+ case $key in
+ OS=centos-7
+ shift
+ shift
+ [[ 2 -gt 0 ]]
+ key=--target
+ case $key in
+ TARGET=hadoop-pkg
+ shift
+ shift
+ [[ 0 -gt 0 ]]
+ '[' -z x ']'
+ '[' -z x ']'
+ '[' '' == true ']'
+ IMAGE_NAME=bigtop/slaves:1.2.1-centos-7
++ uname -m
+ ARCH=x86_64
+ '[' x86_64 '!=' x86_64 ']'
++ docker run -d bigtop/slaves:1.2.1-centos-7 /sbin/init
+
CONTAINER_ID=0ce5ac5ca955b822a3e6c5eb3f477f0a152cd27d5487680f77e33fbe66b5bed8
+ trap 'docker rm -f
0ce5ac5ca955b822a3e6c5eb3f477f0a152cd27d5487680f77e33fbe66b5bed8' EXIT
....
ЌМПгП вÑвПЎа
....
Wrote: /bigtop/build/hadoop/rpm/RPMS/x86_64/hadoop-2.8.5-1.el7.x86_64.rpm
Wrote: /bigtop/build/hadoop/rpm/RPMS/x86_64/hadoop-hdfs-2.8.5-1.el7.x86_64.rpm
Wrote: /bigtop/build/hadoop/rpm/RPMS/x86_64/hadoop-yarn-2.8.5-1.el7.x86_64.rpm
Wrote: /bigtop/build/hadoop/rpm/RPMS/x86_64/hadoop-mapreduce-2.8.5-1.el7.x86_64.rpm
Wrote: /bigtop/build/hadoop/rpm/RPMS/x86_64/hadoop-hdfs-namenode-2.8.5-1.el7.x86_64.rpm
Wrote: /bigtop/build/hadoop/rpm/RPMS/x86_64/hadoop-hdfs-secondarynamenode-2.8.5-
1.el7.x86_64.rpm
Wrote: /bigtop/build/hadoop/rpm/RPMS/x86_64/hadoop-hdfs-zkfc-2.8.5-1.el7.x86_64.rpm
Wrote: /bigtop/build/hadoop/rpm/RPMS/x86_64/hadoop-hdfs-journalnode-2.8.5-
1.el7.x86_64.rpm
Wrote: /bigtop/build/hadoop/rpm/RPMS/x86_64/hadoop-hdfs-datanode-2.8.5-1.el7.x86_64.rpm
Wrote: /bigtop/build/hadoop/rpm/RPMS/x86_64/hadoop-httpfs-2.8.5-1.el7.x86_64.rpm
Wrote: /bigtop/build/hadoop/rpm/RPMS/x86_64/hadoop-yarn-resourcemanager-2.8.5-
1.el7.x86_64.rpm
Wrote: /bigtop/build/hadoop/rpm/RPMS/x86_64/hadoop-yarn-nodemanager-2.8.5-
1.el7.x86_64.rpm
Wrote: /bigtop/build/hadoop/rpm/RPMS/x86_64/hadoop-yarn-proxyserver-2.8.5-
1.el7.x86_64.rpm
Wrote: /bigtop/build/hadoop/rpm/RPMS/x86_64/hadoop-yarn-timelineserver-2.8.5-
1.el7.x86_64.rpm
Wrote: /bigtop/build/hadoop/rpm/RPMS/x86_64/hadoop-mapreduce-historyserver-2.8.5-
1.el7.x86_64.rpm
Wrote: /bigtop/build/hadoop/rpm/RPMS/x86_64/hadoop-client-2.8.5-1.el7.x86_64.rpm
Wrote: /bigtop/build/hadoop/rpm/RPMS/x86_64/hadoop-conf-pseudo-2.8.5-1.el7.x86_64.rpm
Wrote: /bigtop/build/hadoop/rpm/RPMS/x86_64/hadoop-doc-2.8.5-1.el7.x86_64.rpm
Wrote: /bigtop/build/hadoop/rpm/RPMS/x86_64/hadoop-libhdfs-2.8.5-1.el7.x86_64.rpm
Wrote: /bigtop/build/hadoop/rpm/RPMS/x86_64/hadoop-libhdfs-devel-2.8.5-1.el7.x86_64.rpm
Wrote: /bigtop/build/hadoop/rpm/RPMS/x86_64/hadoop-hdfs-fuse-2.8.5-1.el7.x86_64.rpm
Wrote: /bigtop/build/hadoop/rpm/RPMS/x86_64/hadoop-debuginfo-2.8.5-1.el7.x86_64.rpm
+ umask 022
+ cd /bigtop/build/hadoop/rpm//BUILD
+ cd hadoop-2.8.5-src
+ /usr/bin/rm -rf /bigtop/build/hadoop/rpm/BUILDROOT/hadoop-2.8.5-1.el7.x86_64
Executing(%clean): /bin/sh -e /var/tmp/rpm-tmp.uQ2FCn
+ exit 0
+ umask 022
Executing(--clean): /bin/sh -e /var/tmp/rpm-tmp.CwDb22
+ cd /bigtop/build/hadoop/rpm//BUILD
+ rm -rf hadoop-2.8.5-src
+ exit 0
[ant:touch] Creating /bigtop/build/hadoop/.rpm
:hadoop-rpm (Thread[Task worker for ':',5,main]) completed. Took 38 mins 1.151 secs.
:hadoop-pkg (Thread[Task worker for ':',5,main]) started.
> Task :hadoop-pkg
Task ':hadoop-pkg' is not up-to-date because:
Task has not declared any outputs despite executing actions.
:hadoop-pkg (Thread[Task worker for ':',5,main]) completed. Took 0.0 secs.
BUILD SUCCESSFUL in 40m 37s
6 actionable tasks: 6 executed
+ RESULT=0
+ mkdir -p output
+ docker cp
ac46014fd9501bdc86b6c67d08789fbdc6ee46a2645550ff6b6712f7d02ffebb:/bigtop/build .
+ docker cp
ac46014fd9501bdc86b6c67d08789fbdc6ee46a2645550ff6b6712f7d02ffebb:/bigtop/output .
+ docker rm -f ac46014fd9501bdc86b6c67d08789fbdc6ee46a2645550ff6b6712f7d02ffebb
ac46014fd9501bdc86b6c67d08789fbdc6ee46a2645550ff6b6712f7d02ffebb
+ '[' 0 -ne 0 ']'
+ docker rm -f ac46014fd9501bdc86b6c67d08789fbdc6ee46a2645550ff6b6712f7d02ffebb
Error: No such container:
ac46014fd9501bdc86b6c67d08789fbdc6ee46a2645550ff6b6712f7d02ffebb
BUILD SUCCESSFUL in 41m 24s
1 actionable task: 1 executedéäŒã¯ CentOSããããããã¯ä»¥äžã®æ¹æ³ã§ãå®è¡ã§ããŸãã Ubuntu:
./gradlew -POS=ubuntu-16.04 -Pprefix=1.2.1 hadoop-pkg-indããŸããŸãªãã£ã¹ããªãã¥ãŒã·ã§ã³åãã®ããã±ãŒãžãäœæããããšã«å ã㊠Linuxãã®ããŒã«ã¯ãã³ã³ãã€ã«æžã¿ã®ããã±ãŒãžãå«ããªããžããªãäœæã§ããŸããäŸãã°ã次ã®ããã«ãªããŸãã
./gradlew yumãŸããDocker ã§ã®ã¹ã¢ãŒã¯ ãã¹ããšãããã€ã¡ã³ãã«ã€ããŠãèŠããŠããå¿ èŠããããŸãã
3 ã€ã®ããŒãã®ã¯ã©ã¹ã¿ãŒãäœæããŸãã
./gradlew -Pnum_instances=3 docker-provisioner3 ã€ã®ããŒãã®ã¯ã©ã¹ã¿ãŒã§ã¹ã¢ãŒã¯ ãã¹ããå®è¡ããŸãã
./gradlew -Pnum_instances=3 -Prun_smoke_tests docker-provisionerã¯ã©ã¹ã¿ãŒãåé€:
./gradlew docker-provisioner-destroyDocker ã³ã³ããå ã§æ¥ç¶ããããã®ã³ãã³ããååŸããŸãã
./gradlew docker-provisioner-sshã¹ããŒã¿ã¹ã衚瀺:
./gradlew docker-provisioner-statusãããã€ã¡ã³ã ã¿ã¹ã¯ã®è©³çްã«ã€ããŠã¯ãããã¥ã¡ã³ããã芧ãã ããã
ãã¹ãã«ã€ããŠèšãã°ãäž»ã«ã¹ã¢ãŒã¯ãã¹ããšçµ±åãã¹ããäžå¿ã«ãããªãã®æ°ã®ãã¹ãããããŸãã圌ãã®åæã¯ãã®èšäºã®ç¯å²ãè¶ ããŠããŸãããã£ã¹ããªãã¥ãŒã·ã§ã³ãçµã¿ç«ãŠãããšã¯ãäžèŠããã»ã©é£ããäœæ¥ã§ã¯ãªããšã ãèšã£ãŠãããŸããçç£çŸå Žã§äœ¿çšããŠãããã¹ãŠã®ã³ã³ããŒãã³ããçµã¿ç«ãŠãŠãã¹ãã«åæ Œããããšãã§ãããã¹ãç°å¢ã§ã®å±éãåºæ¬çãªæäœã®å®è¡ã«ãåé¡ã¯ãããŸããã§ããã
Bigtop ã®æ¢åã®ã³ã³ããŒãã³ãã«å ããŠãç¬èªã®ãœãããŠã§ã¢éçºãªã©ãä»ã®ãã®ã远å ããããšãå¯èœã§ãããããã¯ãã¹ãŠå®å šã«èªååãããŠãããCI/CD ã³ã³ã»ããã«é©åããŠããŸãã
ãŸãšã
åœç¶ã§ããããã®ããã«æ§ç¯ããããã£ã¹ããªãã¥ãŒã·ã§ã³ã¯ãããã«æ¬çªç°å¢ã«éä¿¡ããã¹ãã§ã¯ãããŸãããç¬èªã®ãã£ã¹ããªãã¥ãŒã·ã§ã³ãæ§ç¯ããŠãµããŒãããããšãæ¬åœã«å¿ èŠãªå Žåã¯ãããã«è³éãšæéãæè³ããå¿ èŠãããããšãçè§£ããå¿ èŠããããŸãã
ãã ããé©åãªã¢ãããŒããšå°éããŒã ãããã°ãåçšãœãªã¥ãŒã·ã§ã³ãªãã§å®è¡ããããšã¯ååã«å¯èœã§ãã
Bigtop ãããžã§ã¯ãèªäœã«éçºãå¿
èŠã§ãããçŸæç¹ã§ã¯ã¢ã¯ãã£ããªéçºã¯è¡ãããŠããªãããã«èŠããããšã«æ³šæããããšãéèŠã§ãã Hadoop 3ãç»å Žãããã©ãããäžæã§ããã¡ãªã¿ã«ãHadoop 3ãæ§ç¯ããå¿
èŠãããå Žåã¯ã Arenadataã®æšæºã«å ããŠ
远å ã®ã³ã³ããŒãã³ãã倿°ãããŸã (RangerãKnoxãNiFi)ã
ãã¹ãã¬ã³ã ã«ãšã£ãŠãBigtop ã¯çŸåšæ€èšããŠããéžæè¢ã® 1 ã€ã§ããç§ãã¡ã圌ãéžã¶ãã©ããã¯ãæãçµãŠã°ãããã ããã
ä»é²
æ°ããã³ã³ããŒãã³ãããã«ãã«å«ããã«ã¯ãbigtop.bom ãš ./bigtop-packages ã«ãã®èª¬æã远å ããå¿ èŠããããŸããæ¢åã®ã³ã³ããŒãã³ããšé¡æšããŠãããå®è¡ããããšãã§ããŸãããããçè§£ããããšããŠãã ãããäžèŠãããšããã»ã©é£ããã¯ãããŸããã
ã©ãæããŸããïŒã³ã¡ã³ãæ¬ã§ããªãã®æèŠãæèŠã§ããã°å¹žãã§ãããæ³šç®ããã ãããããšãããããŸã!
ãã®èšäºã¯ãã¹ãã¬ã³ã ã®ããŒã¿ç®¡çããŒã ã«ãã£ãŠäœæãããŸããã
åºæïŒ habr.com
