Apache Bigtop en it kiezen fan in Hadoop-distribúsje hjoed

Apache Bigtop en it kiezen fan in Hadoop-distribúsje hjoed

It is wierskynlik gjin geheim dat ferline jier in jier wie fan grutte feroaringen foar Apache Hadoop. Ferline jier fusearren Cloudera en Hortonworks (yn essinsje de oername fan 'e lêste), en Mapr, fanwegen serieuze finansjele problemen, waard ferkocht oan Hewlett Packard. En as in pear jier earder, by ynstallaasjes op it terrein, faaks de kar makke wurde moast tusken Cloudera en Hortonworks, hawwe wy hjoed, helaas, dizze kar net. In oare ferrassing wie it feit dat Cloudera yn febrewaris fan dit jier oankundige dat it soe stopje mei it frijjaan fan binêre assemblies fan har distribúsje yn it iepenbiere repository, en se binne no allinich beskikber fia in betelle abonnemint. Fansels is it noch mooglik om de lêste ferzjes fan CDH en HDP te downloaden útbrocht foar it ein fan 2019, en stipe foar har wurdt ferwachte foar ien oant twa jier. Mar wat te dwaan neist? Foar dyjingen dy't earder betelle hawwe foar in abonnemint, is neat feroare. En foar dyjingen dy't net wolle oerskeakelje nei de betelle ferzje fan 'e distribúsje, mar tagelyk de lêste ferzjes fan klusterkomponinten kinne ûntfange, lykas patches en oare updates, hawwe wy dit artikel taret. Dêryn sille wy de mooglike opsjes beskôgje om út dizze situaasje te kommen.

It artikel is mear in resinsje. It sil gjin fergeliking fan distribúsjes en in detaillearre analyze fan har befetsje, en d'r sil gjin resepten wêze foar it ynstallearjen en konfigurearjen fan se. Wat barre sil? Wy sille koart prate oer sa'n distribúsje as Arenadata Hadoop, dy't rjochtfeardich ús oandacht fertsjinnet fanwegen syn beskikberens, dy't hjoed tige seldsum is. En dan sille wy prate oer Vanilla Hadoop, benammen oer hoe't it kin wurde "kookt" mei Apache Bigtop. Klear? Dan wolkom by kat.

Arenadata Hadoop

Apache Bigtop en it kiezen fan in Hadoop-distribúsje hjoed

Dit is in folslein nij en, oant no, net folle bekende distribúsjekit fan ynlânske ûntwikkeling. Spitigernôch, op it stuit op Habré is der allinnich dit artikel.

Mear ynformaasje is te finen op de offisjele side projekt. De lêste ferzjes fan 'e distribúsje binne basearre op Hadoop 3.1.2 foar ferzje 3, en 2.8.5 foar ferzje 2.

Ynformaasje oer de roadmap is te finen hjir.

Apache Bigtop en it kiezen fan in Hadoop-distribúsje hjoed
Arenadata Cluster Manager Interface

It kearnprodukt fan Arenadata is Arenadata Cluster Manager (ADCM), dat wurdt brûkt om te ynstallearjen, konfigurearje en tafersjoch op ferskate bedriuw software oplossings. ADCM wurdt fergees ferspraat, en syn funksjonaliteit wurdt útwreide troch it tafoegjen fan bondels, dy't in set fan ansible-playbooks binne. Bundels binne ferdield yn twa soarten: bedriuw en mienskip. De lêste binne fergees te downloaden fan 'e Arenadata-webside. It is ek mooglik om jo eigen bondel te ûntwikkeljen en te ferbinen mei ADCM.

Foar ynset en behear fan Hadoop 3 wurdt in mienskipferzje fan 'e bondel oanbean yn gearhing mei ADCM, mar foar Hadoop 2 is d'r allinich Apache Ambari as alternatyf. Wat repositories mei pakketten oanbelanget, binne se iepen foar iepenbiere tagong, se kinne wurde downloade en ynstalleare op 'e gewoane manier foar alle komponinten fan it kluster. Oer it algemien sjocht de ferdieling tige nijsgjirrich. Ik bin der wis fan dat d'r sille wêze dy't wend binne oan oplossingen lykas Cloudera Manager en Ambari, en dy't ADCM sels leuk fine. Foar guon sil it ek in grut plus wêze dat de distribúsje opnommen yn it softwareregister foar ymportferfanging.

As wy prate oer de neidielen, se sille wêze itselde as foar alle oare Hadoop distribúsjes. Nammentlik:

  • De saneamde "vendor lock-in". Mei help fan de foarbylden fan Cloudera en Hortonworks hawwe wy al realisearre dat der altyd in risiko is fan feroaring fan bedriuwsbelied.
  • Signifikante efterstân efter Apache streamop.

Vanille Hadoop

Apache Bigtop en it kiezen fan in Hadoop-distribúsje hjoed

Lykas jo witte, is Hadoop gjin monolitysk produkt, mar, yn feite, in hiele galaxy fan tsjinsten om har ferspraat bestânsysteem HDFS. In pear minsken sille genôch hawwe fan ien triemkluster. Guon hawwe Hive nedich, oaren Presto, en dan binne d'r HBase en Phoenix; Spark wurdt hieltyd mear brûkt. Foar orkestraasje en gegevensladen wurde soms Oozie, Sqoop en Flume fûn. En as it probleem fan feiligens ûntstiet, dan komt Kerberos yn 'e mande mei Ranger fuortendaliks yn 't sin.

Binêre ferzjes fan Hadoop-komponinten binne beskikber op 'e webside fan elk fan' e ekosysteemprojekten yn 'e foarm fan tarballen. Jo kinne se downloade en de ynstallaasje begjinne, mar mei ien betingst: neist it selsstannich gearstallen fan pakketten út "rauwe" binaries, dy't jo nei alle gedachten wolle dwaan, sille jo gjin fertrouwen hawwe yn 'e kompatibiliteit fan' e ynladen ferzjes fan komponinten mei elk oar. De foarkarsopsje is om te bouwen mei Apache Bigtop. Bigtop lit jo bouwe fan Apache maven repositories, tests útfiere en pakketten bouwe. Mar, wat foar ús heul wichtich is, Bigtop sil dizze ferzjes fan komponinten gearstalle dy't mei-inoar kompatibel sille wêze. Wy sille it hjirûnder yn mear detail prate.

Apache Bigtop

Apache Bigtop en it kiezen fan in Hadoop-distribúsje hjoed

Apache Bigtop is in ark foar it bouwen, ferpakking en testen fan in oantal
iepen boarne projekten, lykas Hadoop en Greenplum. Bigtop hat genôch
releases. Op it momint fan skriuwen wie de lêste stabile release ferzje 1.4,
en yn master wie der 1.5. Ferskillende ferzjes fan releases brûke ferskate ferzjes
komponinten. Bygelyks, foar 1.4 Hadoop kearnkomponinten hawwe ferzje 2.8.5, en yn master
2.10.0. De gearstalling fan stipe komponinten feroaret ek. Wat ferâldere en
de unrenewable giet fuort, en yn syn plak komt wat nijs, mear yn fraach, en
it is net needsaaklik wat fan 'e Apache-famylje sels.

Dêrneist Bigtop hat in protte foarken.

Doe't wy begûn te krijen kunde mei Bigtop, wy waarden earst fan alle ferrast troch syn beskieden, yn ferliking mei oare Apache projekten, prevalens en populariteit, likegoed as in hiel lytse mienskip. Dêrút folget dat der minimaal ynformaasje is oer it produkt, en sykjen nei oplossingen foar problemen dy't ûntstien binne op foarums en mailinglisten kin hielendal neat opleverje. Yn it earstoan, it die bliken in drege taak foar ús te foltôgjen de folsleine gearstalling fan de distribúsje fanwege de funksjes fan it ark sels, mar wy sille prate oer dit in bytsje letter.

As teaser kinne dejingen dy't op in stuit ynteressearre wiene yn sokke projekten fan it Linux-universum as Gentoo en LFS it nostalgysk noflik fine om mei dit ding te wurkjen en dy "epyske" tiden te ûnthâlden dat wy sels sochten (of sels skriuwe) ebuilds en regelmjittich Mozilla opnij opboud mei nije patches.

It grutte foardiel fan Bigtop is de iepenheid en veelzijdigheid fan de ark dêr't it is basearre. It is basearre op Gradle en Apache Maven. Gradle is frij goed bekend as it ark dat Google brûkt om Android te bouwen. It is fleksibel, en, sa't se sizze, "battle-tested." Maven is in standert ark foar it bouwen fan projekten yn Apache sels, en om't de measte fan har produkten wurde frijlitten fia Maven, koe it hjir ek net sûnder. It is de muoite wurdich omtinken te jaan oan it POM (projektobjektmodel) - it "fundamentele" xml-bestân dat alles beskriuwt dat Maven nedich is om mei jo projekt te wurkjen, dêr't alle wurk omhinne is boud. Krekt at
dielen fan Maven en d'r binne wat obstakels dy't de earste kear Bigtop brûkers meastal tsjinkomme.

Praktyk

Dus wêr moatte jo begjinne? Gean nei de downloadside en download de lêste stabile ferzje as argyf. Jo kinne dêr ek binêre artefakten fine sammele troch Bigtop. Trouwens, ûnder de mienskiplike pakketbehearders wurde YUM en APT stipe.

As alternatyf kinne jo de lêste stabile release direkt downloade fan
github:

$ git clone --branch branch-1.4 https://github.com/apache/bigtop.git

Klonen yn "bigtop" ...

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), готово.

De resultearjende ./bigtop-map sjocht der sa út:

./bigtop-bigpetstore - demo-applikaasjes, syntetyske foarbylden
./bigtop-ci - CI tools, jenkins
./bigtop-data-generators - gegevensgeneraasje, syntetyske, foar reektests, ensfh.
./bigtop-deploy - ynset ark
./bigtop-packages - konfiguraasjes, skripts, patches foar gearstalling, it haaddiel fan it ark
./bigtop-test-framework - testkader
./bigtop-tests - de testen sels, lading en reek
./bigtop_toolchain - omjouwing foar montage, it tarieden fan it miljeu foar it wurk fan it ark
./build - bouwe wurkmap
./dl - map foar ynladen boarnen
./docker - ynbouwen fan dockerôfbyldings, testen
./gradle - gradle konfiguraasje
./output - de map wêr't bouwartefakten gean
./provisioner - foarsjen

It meast nijsgjirrige ding foar ús op dit stadium is de haadkonfiguraasje ./bigtop/bigtop.bom, wêryn wy alle stipe komponinten mei ferzjes sjen. Dit is wêr't wy in oare ferzje fan it produkt kinne oantsjutte (as wy ynienen wolle besykje it te bouwen) of in buildferzje (as wy bygelyks in wichtige patch tafoege hawwe).

De submap is ek fan grut belang ./bigtop/bigtop-packages, dy't direkt relatearre is oan it proses fan gearstalling fan komponinten en pakketten mei har.

Dat, wy hawwe it argyf ynladen, it útpakt of in kloon makke fan github, kinne wy ​​begjinne te bouwen?

Nee, lit ús earst it miljeu tariede.

It tarieden fan it miljeu

En hjir moatte wy in lyts retreat. Om hast elk mear of minder kompleks produkt te bouwen, hawwe jo in bepaalde omjouwing nedich - yn ús gefal is dit de JDK, deselde dielde bibleteken, koptekstbestannen, ensfh., ark, bygelyks ant, ivy2 en folle mear. Ien fan 'e opsjes om de omjouwing te krijen dy't jo nedich binne foar Bigtop is om de nedige komponinten te ynstallearjen op' e buildhost. Ik koe ferkeard wêze yn 'e gronology, mar it liket derop dat d'r mei ferzje 1.0 ek in opsje wie om foarôf ynstelde en tagonklike Docker-ôfbyldings yn te bouwen, dy't hjir te finen binne.

As foar it tarieden fan it miljeu, is d'r in assistint foar dit - Puppet.

Jo kinne de folgjende kommando's brûke, rinne fanút de rootmap
helpmiddel, ./bigtop:

./gradlew toolchain
./gradlew toolchain-devtools
./gradlew toolchain-puppetmodules

Of direkt fia 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"

Spitigernôch kinne swierrichheden al op dit stadium ûntstean. It algemiene advys hjir is om in stipe distribúsje te brûken, bywurke op 'e buildhost, of besykje de dockerrûte.

Assembly

Wat kinne wy ​​besykje te sammeljen? It antwurd op dizze fraach sil wurde jûn troch de útfier fan it kommando

./gradlew tasks

Yn 'e seksje Package taken binne d'r in oantal produkten dy't definitive artefakten binne fan Bigtop.
Se kinne wurde identifisearre troch it efterheaksel -rpm of -pkg-ind (yn it gefal fan gebou
in docker). Yn ús gefal is de meast nijsgjirrige Hadoop.

Litte wy besykje de omjouwing fan ús buildserver yn te bouwen:

./gradlew hadoop-rpm

Bigtop sels sil de nedige boarnen downloade dy't nedich binne foar in spesifyk komponint en begjinne mei gearkomste. Sa is de wurking fan it ark ôfhinklik fan Maven-repositories en oare boarnen, dat is, it fereasket ynternettagong.

Under operaasje wurdt standert útfier generearre. Soms kinne it en flaterberjochten jo helpe te begripen wat der mis gie. En soms moatte jo ekstra ynformaasje krije. Yn dit gefal is it wurdich arguminten ta te foegjen --info of --debug, en kin ek nuttich wêze –stacktrace. D'r is in handige manier om in gegevensset te generearjen foar folgjende tagong ta mailinglisten, de kaai --scan.

Mei har help sil bigtop alle ynformaasje sammelje en it yn gradle sette, wêrnei't it in keppeling sil leverje,
troch folgjen hokker, in foechhawwende persoan sil wêze kinne om te begripen wêrom't de gearkomste mislearre.
Tink derom dat dizze opsje ynformaasje kin bleatstelle dy't jo net wolle, lykas brûkersnammen, knopen, omjouwingsfariabelen, ensfh., dus wês foarsichtich.

Faak binne flaters in gefolch fan it ûnfermogen om alle komponinten te krijen dy't nedich binne foar montage. Typysk kinne jo it probleem reparearje troch in patch te meitsjen om wat yn 'e boarnen te reparearjen, bygelyks adressen yn pom.xml yn' e root-map fan 'e boarnen. Dit wurdt dien troch it oanmeitsjen en te pleatsen yn 'e passende map ./bigtop/bigtop-packages/src/common/oozie/ patch, bygelyks, yn 'e foarm 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>

Meast wierskynlik, op it momint fan it lêzen fan dit artikel, hoege jo de boppesteande net sels te reparearjen.

By it yntrodusearjen fan patches en feroarings oan it gearstallingsmeganisme, moatte jo miskien de gearstalling "weromsette" mei it opromjen kommando:

./gradlew hadoop-clean
> Task :hadoop_vardefines
> Task :hadoop-clean
BUILD SUCCESSFUL in 5s
2 actionable tasks: 2 executed

Dizze operaasje sil alle wizigingen yn 'e gearstalling fan dizze komponint weromdraaie, wêrnei't de gearstalling opnij sil wurde útfierd. Dizze kear sille wy besykje it projekt te bouwen yn in dockerôfbylding:

./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

De bou waard útfierd ûnder CentOS, mar kin ek dien wurde ûnder Ubuntu:

./gradlew -POS=ubuntu-16.04 -Pprefix=1.2.1 hadoop-pkg-ind

Neist it bouwen fan pakketten foar ferskate Linux-distribúsjes, kin it ark in repository meitsje mei kompilearre pakketten, bygelyks:

./gradlew yum

Jo kinne ek ûnthâlde oer reektests en ynset yn Docker.

Meitsje in kluster fan trije knopen:

./gradlew -Pnum_instances=3 docker-provisioner

Utfiere reektests yn in kluster fan trije knopen:

./gradlew -Pnum_instances=3 -Prun_smoke_tests docker-provisioner

In kluster wiskje:

./gradlew docker-provisioner-destroy

Krij kommando's foar ferbining binnen docker-konteners:

./gradlew docker-provisioner-ssh

Status sjen litte:

./gradlew docker-provisioner-status

Jo kinne mear lêze oer ynsettaken yn 'e dokumintaasje.

As wy it oer testen hawwe, binne d'r nochal in grut oantal, benammen reek en yntegraasje. Harren analyze is bûten it berik fan dit artikel. Lit my gewoan sizze dat it gearstallen fan in distribúsjekit net sa dreech in taak is as it op it earste each liket. Wy binne it slagge om testen te sammeljen en troch te jaan op alle komponinten dy't wy brûke yn ús produksje, en wy hiene ek gjin problemen om se yn te setten en basisoperaasjes út te fieren yn 'e testomjouwing.

Neist de besteande komponinten yn Bigtop is it mooglik om wat oars ta te foegjen, sels jo eigen softwareûntwikkeling. Dit alles is perfekt automatisearre en past yn it CI / CD-konsept.

konklúzje

Fansels moat de op dizze manier gearstalde distribúsje net fuortendaliks nei produksje stjoerd wurde. Jo moatte begripe dat as d'r in echte need is om jo distribúsje te bouwen en te stypjen, dan moatte jo jild en tiid yn dizze ynvestearje.

Yn kombinaasje mei de goede oanpak en in profesjoneel team is it lykwols hiel goed mooglik sûnder kommersjele oplossingen.

It is wichtich om te notearjen dat it Bigtop-projekt sels ûntwikkeling nedich is en hjoeddedei net aktyf liket te ûntwikkeljen. It perspektyf dat Hadoop 3 deryn ferskynt is ek ûndúdlik. Trouwens, as jo in echte need hawwe om Hadoop 3 te bouwen, kinne jo sjen nei foarke út Arenadata, wêryn, neist standert
D'r binne in oantal ekstra komponinten (Ranger, Knox, NiFi).

Wat Rostelecom oanbelanget, foar ús is Bigtop ien fan 'e opsjes dy't hjoeddedei beskôge wurde. Oft wy it kieze of net, de tiid sil it leare.

Taheakke

Om in nije komponint yn 'e gearkomste op te nimmen, moatte jo de beskriuwing tafoegje oan bigtop.bom en ./bigtop-packages. Jo kinne besykje dit te dwaan troch analogy mei de besteande komponinten. Besykje it út te finen. It is net sa dreech as it liket op it earste each.

Wat tinkt jo? Wy sille bliid wêze om jo miening te sjen yn 'e kommentaren en tankje jo foar jo oandacht!

It artikel waard taret troch it Rostelecom data management team

Boarne: www.habr.com

Add a comment