Apache Bigtop ΠΈ ΠΈΠ·Π±ΠΎΡ€ Π½Π° Hadoop дистрибуция днСс

Apache Bigtop ΠΈ ΠΈΠ·Π±ΠΎΡ€ Π½Π° Hadoop дистрибуция днСс

ВСроятно, Π·Π° Π½ΠΈΠΊΠΎΠ³ΠΎ Π½Π΅ Π΅ Ρ‚Π°ΠΉΠ½Π°, Ρ‡Π΅ ΠΌΠΈΠ½Π°Π»Π°Ρ‚Π° Π³ΠΎΠ΄ΠΈΠ½Π° Π·Π° Apache Hadoop бСшС Π³ΠΎΠ΄ΠΈΠ½Π° Π½Π° Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ. ΠœΠΈΠ½Π°Π»Π°Ρ‚Π° Π³ΠΎΠ΄ΠΈΠ½Π° сС случи сливСнС Π½Π° Cloudera ΠΈ Hortonworks (ΠΏΠΎ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΠΎ, ΠΏΠΎΠ³Π»ΡŠΡ‰Π°Π½Π΅ Π½Π° втория), Π° Mapr, ΠΏΠΎΡ€Π°Π΄ΠΈ сСриозни финансови ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ, бСшС ΠΏΡ€ΠΎΠ΄Π°Π΄Π΅Π½ Π½Π° Hewlett Packard. И Π°ΠΊΠΎ ΠΏΡ€Π΅Π΄ΠΈ няколко Π³ΠΎΠ΄ΠΈΠ½ΠΈ, Π² случай Π½Π° on-premises инсталации, ΠΈΠ·Π±ΠΎΡ€ΡŠΡ‚ чСсто падашС ΠΌΠ΅ΠΆΠ΄Ρƒ Cloudera ΠΈ Hortonworks, Ρ‚ΠΎ днСс, Π·Π° съТалСниС, Ρ‚ΠΎΠ·ΠΈ ΠΈΠ·Π±ΠΎΡ€ Π²Π΅Ρ‡Π΅ Π½Π΅ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°. ИзнСнада бСшС ΠΈ Ρ„Π°ΠΊΡ‚ΡŠΡ‚, Ρ‡Π΅ Cloudera ΠΎΡ‚ Ρ„Π΅Π²Ρ€ΡƒΠ°Ρ€ΠΈ Π½Π° Ρ‚Π°Π·ΠΈ Π³ΠΎΠ΄ΠΈΠ½Π° обяви спиранС Π½Π° ΠΈΠ·Π΄Π°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π±ΠΈΠ½Π°Ρ€Π½ΠΈ вСрсии Π½Π° своя дистрибутив Π² публичния Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, ΠΈ сСга Ρ‚Π΅ са Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΈ само с ΠΏΠ»Π°Ρ‚Π΅Π½ Π°Π±ΠΎΠ½Π°ΠΌΠ΅Π½Ρ‚. Π Π°Π·Π±ΠΈΡ€Π° сС, Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° изтСглянС Π½Π° послСднитС вСрсии Π½Π° CDH ΠΈ HDP, ΠΈΠ·Π΄Π°Π΄Π΅Π½ΠΈ Π΄ΠΎ края Π½Π° 2019 Π³ΠΎΠ΄ΠΈΠ½Π°, всС ΠΎΡ‰Π΅ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°, ΠΈ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° тях сС ΠΏΡ€Π΅Π΄Π²ΠΈΠΆΠ΄Π° Π·Π° ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ ΠΎΡ‚ Π΅Π΄Π½Π°-Π΄Π²Π΅ Π³ΠΎΠ΄ΠΈΠ½ΠΈ. Но ΠΊΠ°ΠΊΠ²ΠΎ Π΄Π° ΠΏΡ€Π°Π²ΠΈΠΌ Π½Π°Ρ‚Π°Ρ‚ΡŠΠΊ? Π—Π° Ρ‚Π΅Π·ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ ΠΏΡ€Π΅Π΄ΠΈ са ΠΏΠ»Π°Ρ‰Π°Π»ΠΈ Π·Π° Π°Π±ΠΎΠ½Π°ΠΌΠ΅Π½Ρ‚, Π½ΠΈΡ‰ΠΎ Π½Π΅ сС Π΅ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΠ»ΠΎ. А Π·Π° Ρ‚Π΅Π·ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Π½Π΅ искат Π΄Π° ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Ρ‚ Π½Π° ΠΏΠ»Π°Ρ‚Π΅Π½Π° вСрсия Π½Π° дистрибутива, Π½ΠΎ всС ΠΏΠ°ΠΊ искат Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°Ρ‚ Π°ΠΊΡ‚ΡƒΠ°Π»Π½ΠΈ вСрсии Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈΡ‚Π΅ Π½Π° ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€Π°, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ ΠΏΠ°Ρ‡ΠΎΠ²Π΅ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ обновлСния, Π½ΠΈΠ΅ ΠΏΠΎΠ΄Π³ΠΎΡ‚Π²ΠΈΡ…ΠΌΠ΅ Ρ‚Π°Π·ΠΈ статия. Π’ нСя Ρ‰Π΅ Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ възмоТни Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΈ Π·Π° ΠΈΠ·Π»ΠΈΠ·Π°Π½Π΅ ΠΎΡ‚ ΡΡŠΠ·Π΄Π°Π»Π°Ρ‚Π° сС ситуация.

Бтатията Π΅ ΠΏΠΎ-скоро ΠΎΠ±Π·ΠΎΡ€Π½Π°. Π’ нСя няма Π΄Π° ΠΈΠΌΠ° сравнСния Π½Π° дистрибутиви ΠΈ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Ρ€Π°Π·Π³Π»Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° Ρ‚Π΅Ρ…Π½ΠΈΡ‚Π΅ особСности, Π½ΠΈΡ‚ΠΎ Ρ€Π΅Ρ†Π΅ΠΏΡ‚ΠΈ Π·Π° инсталация ΠΈ конфигурация. Какво Ρ‰Π΅ ΠΈΠΌΠ°? Накратко, Ρ‰Π΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Π·Π° дистрибутива Arenadata Hadoop, ΠΊΠΎΠΉΡ‚ΠΎ заслуТава Π½Π°ΡˆΠ΅Ρ‚ΠΎ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π·Π°Ρ€Π°Π΄ΠΈ своята Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΎΡΡ‚, ΠΊΠΎΠ΅Ρ‚ΠΎ Π΅ голяма рядкост Π² наши Π΄Π½ΠΈ. Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π° Ρ‰Π΅ обсъдим Vanilla Hadoop, основно ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС β€žΠΏΡ€ΠΈΠ³ΠΎΡ‚Π²Π΅Π½β€œ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° Apache Bigtop. Π“ΠΎΡ‚ΠΎΠ²ΠΈ Π»ΠΈ стС? Π’ΠΎΠ³Π°Π²Π° Π΄ΠΎΠ±Ρ€Π΅ дошли ΠΏΠΎΠ΄ ΠΊΠ°Ρ‚.

Arenadata Hadoop

Apache Bigtop ΠΈ ΠΈΠ·Π±ΠΎΡ€ Π½Π° Hadoop дистрибуция днСс

Π’ΠΎΠ²Π° Π΅ съвсСм Π½ΠΎΠ² ΠΈ, Π·Π° ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°, ΠΌΠ°Π»ΠΊΠΎ извСстСн дистрибутив ΠΎΡ‚ отСчСствСна Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°. Π—Π° съТалСниС, Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π² Ρ…Π°Π±Ρ€Π° Π·Π° Π½Π΅Π³ΠΎ ΠΈΠΌΠ° само Ρ‚Π°Π·ΠΈ статия.

По-ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π° информация ΠΌΠΎΠΆΠ΅ Π΄Π° сС Π½Π°ΠΌΠ΅Ρ€ΠΈ Π½Π° официалния сайта ΠΏΡ€ΠΎΠ΅ΠΊΡ‚. ΠŸΠΎΡΠ»Π΅Π΄Π½ΠΈΡ‚Π΅ вСрсии Π½Π° дистрибутива са Π±Π°Π·ΠΈΡ€Π°Π½ΠΈ Π½Π° Hadoop 3.1.2 Π·Π° 3-Ρ‚Π° вСрсия ΠΈ 2.8.5 Π·Π° 2-Ρ€Π° вСрсия.

Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ Π·Π° roadmap ΠΌΠΎΠΆΠ΅ Π΄Π° сС Π½Π°ΠΌΠ΅Ρ€ΠΈ Ρ‚ΡƒΠΊ.

Apache Bigtop ΠΈ ΠΈΠ·Π±ΠΎΡ€ Π½Π° Hadoop дистрибуция днСс
Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡŠΡ‚ Π½Π° Arenadata Cluster Manager

ΠšΠ»ΡŽΡ‡ΠΎΠ²ΠΈΡΡ‚ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ Π½Π° Arenadata Π΅ Arenadata Cluster Manager (ADCM), ΠΊΠΎΠΉΡ‚ΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° инсталиранС, ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°Π½Π΅ ΠΈ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ софтуСрни Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π½Π° компанията. ADCM сС разпространява Π±Π΅Π·ΠΏΠ»Π°Ρ‚Π½ΠΎ, Π° функционалността ΠΌΡƒ сС Ρ€Π°Π·ΡˆΠΈΡ€ΡΠ²Π° Ρ‡Ρ€Π΅Π· добавянС Π½Π° Π±Π°Π½Π΄Π»ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ прСдставляват Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ ansible-playbooks. Π‘Π°Π½Π΄Π»ΠΈΡ‚Π΅ сС дСлят Π½Π° Π΄Π²Π° Π²ΠΈΠ΄Π°: enterprise ΠΈ community. ΠŸΠΎΡΠ»Π΅Π΄Π½ΠΈΡ‚Π΅ са Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΈ Π·Π° Π±Π΅Π·ΠΏΠ»Π°Ρ‚Π½ΠΎ изтСглянС ΠΎΡ‚ сайта Π½Π° Arenadata. Π‘ΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° ΠΈΠΌΠ° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π΄Π° сС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΈ собствСн Π±Π°Π½Π΄Π» ΠΈ Π΄Π° сС ΡΠ²ΡŠΡ€ΠΆΠ΅ с ADCM.

Π—Π° Π΄Π΅ΠΏΠ»ΠΎΠΉ ΠΈ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Hadoop 3 сС ΠΏΡ€Π΅Π΄Π»Π°Π³Π° community вСрсия Π½Π° Π±Π°Π½Π΄Π»Π° Π² комбинация с ADCM, Π° Π·Π° hadoop 2 ΠΈΠΌΠ° само Apache Ambari ΠΊΠ°Ρ‚ΠΎ Π°Π»Ρ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π°. Π©ΠΎ сС отнася Π΄ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°Ρ‚Π° с ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ, Ρ‚Π΅ са ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ΠΈ Π·Π° ΠΏΡƒΠ±Π»ΠΈΡ‡Π΅Π½ Π΄ΠΎΡΡ‚ΡŠΠΏ, ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС изтСглят ΠΈ инсталират ΠΏΠΎ обичайния Π½Π°Ρ‡ΠΈΠ½ Π·Π° всички ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ Π½Π° ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€Π°. Π’ ΠΎΠ±Ρ‰ΠΈ Π»ΠΈΠ½ΠΈΠΈ, дистрибуцията ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° ΠΌΠ½ΠΎΠ³ΠΎ интСрСсно. Π£Π²Π΅Ρ€Π΅Π½ съм, Ρ‡Π΅ Ρ‰Π΅ сС намСрят Ρ…ΠΎΡ€Π°, ΠΊΠΎΠΈΡ‚ΠΎ са свикнали с Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°Ρ‚ΠΎ Cloudera Manager ΠΈ Ambari ΠΈ ΠΊΠΎΠΈΡ‚ΠΎ Ρ‰Π΅ оцСнят самия ADCM. Π—Π° някои Ρ‰Π΅ бъдС ΠΎΠ³Ρ€ΠΎΠΌΠ΅Π½ плюс ΠΈ Ρ„Π°ΠΊΡ‚ΡŠΡ‚, Ρ‡Π΅ дистрибуцията Π²Π»ΠΈΠ·Π° Π² Ρ€Π΅Π³ΠΈΡΡ‚ΡŠΡ€Π° Π½Π° софтуСрното Π·Π° замСстванС Π½Π° вноса.

Ако Π³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Π·Π° Π½Π΅Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ†ΠΈΡ‚Π΅, Ρ‚Π΅ Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ ΡΡŠΡ‰ΠΈΡ‚Π΅, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ Π·Π° всички останали дистрибуции Π½Π° Hadoop. А ΠΈΠΌΠ΅Π½Π½ΠΎ:

  • Π’Π°ΠΊΠ° нарСчСният Β«vendor lock-inΒ». На ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° с Cloudera ΠΈ Hortonworks Π²Π΅Ρ‡Π΅ Ρ€Π°Π·Π±Ρ€Π°Ρ…ΠΌΠ΅, Ρ‡Π΅ Π²ΠΈΠ½Π°Π³ΠΈ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π° риск ΠΎΡ‚ промяна Π½Π° ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ°Ρ‚Π° Π½Π° компанията.
  • Π‘ΡŠΡ‰Π΅ΡΡ‚Π²Π΅Π½ΠΎ изоставанС ΠΎΡ‚ апстрима Π½Π° Apache.

Vanilla Hadoop

Apache Bigtop ΠΈ ΠΈΠ·Π±ΠΎΡ€ Π½Π° Hadoop дистрибуция днСс

ΠšΠ°ΠΊΡ‚ΠΎ Π·Π½Π°Π΅Ρ‚Π΅, Hadoop Π½Π΅ Π΅ ΠΌΠΎΠ½ΠΎΠ»ΠΈΡ‚Π΅Π½ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚, Π° Π²ΡΡŠΡ‰Π½ΠΎΡΡ‚ цяла ΠΏΠ°Π»ΠΈΡ‚Ρ€Π° ΠΎΡ‚ услуги ΠΎΠΊΠΎΠ»ΠΎ Π½Π΅Π³ΠΎΠ²Π°Ρ‚Π° Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ²Π°Ρ‚Π° систСма HDFS. Малко Π½Π° ΠΊΠΎΠ³ΠΎ Ρ‰Π΅ ΠΌΡƒ Π΅ Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π΅Π½ само Π΅Π΄ΠΈΠ½ Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€. На Π΅Π΄Π½ΠΈ ΠΈΠΌ трябва Hive, Π½Π° Π΄Ρ€ΡƒΠ³ΠΈ Presto, Π° ΠΈΠΌΠ° ΠΈ HBase ΠΈ Phoenix, всС ΠΏΠΎ-чСсто сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Spark. Π—Π° оркСстрация ΠΈ Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ понякога сС срСщат Oozie, Sqoop ΠΈ Flume. А Π°ΠΊΠΎ възникнС Π²ΡŠΠΏΡ€ΠΎΡΡŠΡ‚ Π·Π° осигуряванС Π½Π° бСзопасност, Π²Π΅Π΄Π½Π°Π³Π° сС сСщамС Π·Π° Kerberos Π² комбинация с Ranger.

Π‘ΠΈΠ½Π°Ρ€Π½ΠΈΡ‚Π΅ вСрсии Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈΡ‚Π΅ Π½Π° Hadoop са Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΈ Π½Π° сайта Π½Π° всСки ΠΎΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ‚Π΅ Π² СкосистСмата ΠΏΠΎΠ΄ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π½Π° Ρ‚Π°Ρ€Π±ΠΎΠ»ΠΈ. ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π³ΠΈ ΠΈΠ·Ρ‚Π΅Π³Π»ΠΈΡ‚Π΅ ΠΈ Π΄Π° Π·Π°ΠΏΠΎΡ‡Π½Π΅Ρ‚Π΅ инсталацията, Π½ΠΎ с Π΅Π΄Π½ΠΎ условиС: освСн самостоятСлно ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ ΠΎΡ‚ "сурови" Π±ΠΈΠ½Π°Ρ€Π½ΠΈΡ†ΠΈ, Π² ΠΊΠΎΠ΅Ρ‚ΠΎ вСроятно Ρ‰Π΅ искатС Π΄Π° сС Π·Π°Π½ΠΈΠΌΠ°Π²Π°Ρ‚Π΅, Π²ΠΈΠ΅ няма Π΄Π° ΠΈΠΌΠ°Ρ‚Π΅ Π½ΠΈΠΊΠ°ΠΊΠ²Π° увСрСност Π·Π° ΡΡŠΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚Ρ‚Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΈΠ·Ρ‚Π΅Π³Π»Π΅Π½ΠΈΡ‚Π΅ вСрсии Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈΡ‚Π΅. По-ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°Π½ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Π΅ компилацията с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° Apache Bigtop. Bigtop Ρ‰Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈ Π΄Π° сС ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Ρ‚ вСрсии ΠΎΡ‚ maven Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°Ρ‚Π° Π½Π° Apache, Π΄Π° сС ΠΈΠ·ΠΏΡŠΠ»Π½ΡΡ‚ тСстовСтС ΠΈ Π΄Π° сС ΡΡŠΠ±Π΅Ρ€Π°Ρ‚ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈΡ‚Π΅. Но, ΠΊΠΎΠ΅Ρ‚ΠΎ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π²Π°ΠΆΠ½ΠΎ Π·Π° нас, Bigtop Ρ‰Π΅ ΡΡŠΠ±Π΅Ρ€Π΅ Ρ‚Π΅Π·ΠΈ вСрсии Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈΡ‚Π΅, ΠΊΠΎΠΈΡ‚ΠΎ Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ ΡΡŠΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΈ ΠΏΠΎΠΌΠ΅ΠΆΠ΄Ρƒ си. Π—Π° Π½Π΅Π³ΠΎ Ρ‰Π΅ Ρ€Π°Π·ΠΊΠ°ΠΆΠ΅ΠΌ ΠΏΠΎ-ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΏΠΎ-късно.

Apache Bigtop

Apache Bigtop ΠΈ ΠΈΠ·Π±ΠΎΡ€ Π½Π° Hadoop дистрибуция днСс

Apache Bigtop Π΅ инструмСнт Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Π½Π΅, ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈΡ€Π°Π½Π΅ ΠΈ тСстванС Π½Π° Ρ€Π΅Π΄ΠΈΡ†Π°
open source ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ, ΠΊΠ°Ρ‚ΠΎ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Hadoop ΠΈ Greenplum. Bigtop Ρ€Π°Π·ΠΏΠΎΠ»Π°Π³Π° с мноТСство
издания. Към ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π½Π° написванСто Π½Π° статията послСдното стабилно ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ бСшС вСрсия 1.4,
Π° Π² master сС Π½Π°ΠΌΠΈΡ€Π°ΡˆΠ΅ 1.5. Π’ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈΡ‚Π΅ вСрсии Π½Π° изданията сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ вСрсии
Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈΡ‚Π΅. НапримСр, Π·Π° 1.4 основнитС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ Π½Π° Hadoop ΠΈΠΌΠ°Ρ‚ вСрсия 2.8.5, Π° Π² master
2.10.0. Π‘ΡŠΡΡ‚Π°Π²ΡŠΡ‚ Π½Π° ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ ΡΡŠΡ‰ΠΎ сС промСня. НСщо старо ΠΈ
нСобновяСмо ΠΎΡ‚ΠΏΠ°Π΄Π°, Π° Π½Π° Π½Π΅Π³ΠΎΠ²ΠΎ място ΠΈΠ΄Π²Π° Π½Π΅Ρ‰ΠΎ Π½ΠΎΠ²ΠΎ, ΠΏΠΎ-Ρ‚ΡŠΡ€ΡΠ΅Π½ΠΎ, ΠΈ
Π½Π΅ Π΅ Π·Π°Π΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½ΠΎ Ρ‚ΠΎ Π΄Π° Π΅ Π½Π΅Ρ‰ΠΎ ΠΎΡ‚ сСмСйството Π½Π° самия Apache.

ОсвСн Ρ‚ΠΎΠ²Π°, Bigtop Ρ€Π°Π·ΠΏΠΎΠ»Π°Π³Π° с мноТСство Ρ„ΠΎΡ€ΠΊΠΎΠ²Π΅..

ΠšΠΎΠ³Π°Ρ‚ΠΎ Π·Π°ΠΏΠΎΡ‡Π½Π°Ρ…ΠΌΠ΅ Π΄Π° сС Π·Π°ΠΏΠΎΠ·Π½Π°Π²Π°ΠΌΠ΅ с Bigtop, Π½Π°ΠΉ-Π½Π°ΠΏΡ€Π΅Π΄ Π½ΠΈ ΠΈΠ·Π½Π΅Π½Π°Π΄Π° скромната ΠΌΡƒ популярност Π² сравнСниС с Π΄Ρ€ΡƒΠ³ΠΈΡ‚Π΅ Apache ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ ΠΈΠ·ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΌΠ°Π»ΠΊΠΎΡ‚ΠΎ общСство. ΠžΡ‚ Ρ‚ΠΎΠ²Π° слСдва, Ρ‡Π΅ информацията Π·Π° ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° Π΅ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ, Π° Ρ‚ΡŠΡ€ΡΠ΅Π½Π΅Ρ‚ΠΎ Π½Π° Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π½Π° възникнали ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ ΠΏΠΎ Ρ„ΠΎΡ€ΡƒΠΌΠΈΡ‚Π΅ ΠΈ ΠΈΠΌΠ΅ΠΉΠ» Ρ€Π°Π·ΠΏΡ€Π°Ρ‚ΠΊΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° Π½Π΅ Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ Π½ΠΈΡ‰ΠΎ. ΠŸΡŠΡ€Π²ΠΎΠ½Π°Ρ‡Π°Π»Π½ΠΎ Π·Π° нас бСшС прСдизвикатСлство Π΄Π° изпълним пълна компилация Π½Π° дистрибутива ΠΏΠΎΡ€Π°Π΄ΠΈ особСноститС Π½Π° самия инструмСнт, Π½ΠΎ Π·Π° Ρ‚ΠΎΠ²Π° Ρ‰Π΅ Ρ€Π°Π·ΠΊΠ°ΠΆΠ΅ΠΌ ΠΌΠ°Π»ΠΊΠΎ ΠΏΠΎ-късно.

ΠšΠ°Ρ‚ΠΎ Ρ‚ΠΈΠ·Π΅Ρ€ β€” Π½Π° Ρ‚Π΅Π·ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Π² своСто Π²Ρ€Π΅ΠΌΠ΅ сС Ρ€Π°Π΄Π²Π°Ρ…Π° Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ ΠΎΡ‚ Linux всСлСната, ΠΊΠ°Ρ‚ΠΎ Gentoo ΠΈ LFS, ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠΌ сС стори носталгично приятно Π΄Π° работят с Ρ‚ΠΎΠ²Π° ΠΈ Π΄Π° си спомнят ΠΎΠ½Π΅Π·ΠΈ "Π»Π΅Π³Π΅Π½Π΄Π°Ρ€Π½ΠΈ" Π²Ρ€Π΅ΠΌΠ΅Π½Π°, ΠΊΠΎΠ³Π°Ρ‚ΠΎ сами Ρ‚ΡŠΡ€ΡΠΈΡ…ΠΌΠ΅ (Π° Π΄ΠΎΡ€ΠΈ ΠΈ писахмС) Π΅Π±ΠΈΠ»Π΄ΠΈ ΠΈ Ρ€Π΅Π΄ΠΎΠ²Π½ΠΎ ΠΏΡ€Π΅ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Ρ…ΠΌΠ΅ с Π½ΠΎΠ²ΠΈ ΠΏΠ°Ρ‡ΠΎΠ²Π΅ Мозила.

ГолСмият плюс Π½Π° Bigtop Π΅ отворСността ΠΈ унивСрсалността Π½Π° инструмСнтитС, Π½Π° ΠΊΠΎΠΈΡ‚ΠΎ Π΅ основан. Π’ основата ΠΌΡƒ стоят Gradle ΠΈ Apache Maven. Gradle Π΅ доста извСстСн инструмСнт, Ρ‡Ρ€Π΅Π· ΠΊΠΎΠΉΡ‚ΠΎ Google ΡΡŠΠ±ΠΈΡ€Π° Android. Π’ΠΎΠΉ Π΅ гъвкав ΠΈ, ΠΊΠ°ΠΊΡ‚ΠΎ сС ΠΊΠ°Π·Π²Π°, "ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½ Π² дСйствиС". Maven Π΅ стандартният инструмСнт Π·Π° ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ Π² самия Apache, Π° Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ ΠΏΠΎΠ²Π΅Ρ‡Π΅Ρ‚ΠΎ ΠΎΡ‚ Π½Π΅Π³ΠΎΠ²ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈ сС пускат ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‡Ρ€Π΅Π· Maven, Ρ‚ΡƒΠΊ ΡΡŠΡ‰ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΌΠΈΠ½Π° Π±Π΅Π· Π½Π΅Π³ΠΎ. Π‘Ρ‚Ρ€ΡƒΠ²Π° си Π΄Π° ΠΎΠ±ΡŠΡ€Π½Π΅ΠΌ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° POM (project object model) – "Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»Π΅Π½" xml-Ρ„Π°ΠΉΠ» с описаниС Π½Π° всичко Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π° Ρ€Π°Π±ΠΎΡ‚Π° с Maven с вашия ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, ΠΎΠΊΠΎΠ»ΠΎ ΠΊΠΎΠΉΡ‚ΠΎ сС ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π° цялата Ρ€Π°Π±ΠΎΡ‚Π°. ИмСнно Π²
частта Π½Π° Maven Π²ΡŠΠ·Π½ΠΈΠΊΠ²Π°Ρ‚ някои ΠΏΡ€Π΅Ρ‡ΠΊΠΈ, Π½Π° ΠΊΠΎΠΈΡ‚ΠΎ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ сС Π½Π°Ρ‚ΡŠΠΊΠ²Π°Ρ‚ Π·Π° ΠΏΡŠΡ€Π²ΠΈ ΠΏΡŠΡ‚, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π·Π°ΠΏΠΎΡ‡Π²Π°Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π° с Bigtop.

ΠŸΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°

И Ρ‚Π°ΠΊΠ°, ΠΎΡ‚ΠΊΡŠΠ΄Π΅ Π΄Π° Π·Π°ΠΏΠΎΡ‡Π½Π΅ΠΌ? ΠŸΡ€Π΅ΠΌΠΈΠ½Π°Π²Π°ΠΌΠ΅ Π½Π° страницата Π·Π° изтСглянС ΠΈ свалямС послСдната стабилна вСрсия ΠΏΠΎΠ΄ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π½Π° Π°Ρ€Ρ…ΠΈΠ². Π’Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π½Π°ΠΌΠ΅Ρ€ΠΈΡ‚Π΅ ΠΈ Π±ΠΈΠ½Π°Ρ€Π½ΠΈΡ‚Π΅ Π°Ρ€Ρ‚Π΅Ρ„Π°ΠΊΡ‚ΠΈ, ΡΡŠΠ±Ρ€Π°Π½ΠΈ ΠΎΡ‚ Bigtop. ΠœΠ΅ΠΆΠ΄Ρƒ Π΄Ρ€ΡƒΠ³ΠΎΡ‚ΠΎ, ΠΎΡ‚ популярнитС ΠΏΠ°ΠΊΠ΅Ρ‚Π½ΠΈ ΠΌΠ΅Π½ΠΈΠ΄ΠΆΡŠΡ€ΠΈ сС ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚ YUM ΠΈ APT.

АлтСрнативно, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΈΠ·Ρ‚Π΅Π³Π»ΠΈΡ‚Π΅ послСдния стабилСн Ρ€Π΅Π»ΠΈΠ· Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΎ ΠΎΡ‚
github:

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

ΠšΠ»ΠΎΠ½ΠΈΡ€Π° сС Π² "bigtop"...

remote: Π˜Π·Π±Ρ€ΠΎΡΠ²Π°Π½Π΅ Π½Π° ΠΎΠ±Π΅ΠΊΡ‚ΠΈ: 46, Π³ΠΎΡ‚ΠΎΠ²ΠΎ.
remote: Π‘Ρ€ΠΎΠ΅Π½Π΅ Π½Π° ΠΎΠ±Π΅ΠΊΡ‚ΠΈ: 100% (46/46), Π³ΠΎΡ‚ΠΎΠ²ΠΎ.
remote: Π‘ΠΆΠ°Ρ‚ΠΈΠ΅ Π½Π° ΠΎΠ±Π΅ΠΊΡ‚ΠΈ: 100% (41/41), Π³ΠΎΡ‚ΠΎΠ²ΠΎ.
remote: ΠžΠ±Ρ‰ΠΎ 40217 (delta 14), ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ 10 (delta 1), повтарящи сС 40171
ΠŸΠΎΠ»ΡƒΡ‡Π°Π²Π°Π½Π΅ Π½Π° ΠΎΠ±Π΅ΠΊΡ‚ΠΈ: 100% (40217/40217), 43.54 MiB | 1.05 MiB/s, Π³ΠΎΡ‚ΠΎΠ²ΠΎ.
ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ½Π΅ Π½Π° ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ: 100% (20503/20503), Π³ΠΎΡ‚ΠΎΠ²ΠΎ.
АктуализиранС Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅: 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 ΡΡŠΡ‰ΠΎ Π΅ Π½Π°Π»ΠΈΡ‡Π΅Π½ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Π·Π° сглобяванС Π² ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°Π½ΠΈ ΠΈ Π½Π°Π»ΠΈΡ‡Π½ΠΈ docker ΠΎΠ±Ρ€Π°Π·ΠΈ, с ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° сС Π·Π°ΠΏΠΎΠ·Π½Π°Π΅Ρ‚Π΅ Ρ‚ΡƒΠΊ.

Π©ΠΎ сС отнася Π΄ΠΎ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ°Ρ‚Π° Π½Π° ΠΎΠΊΠΎΠ»Π½Π°Ρ‚Π° срСда, ΠΈΠΌΠ°ΠΌΠ΅ ΠΏΠΎΠΌΠΎΡ‰Π½ΠΈΠΊ β€” Puppet.

МоТСм Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ слСднитС ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ, стартиранСто сС ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π° ΠΎΡ‚ ΠΊΠΎΡ€Π΅Π½ΠΎΠ²Π°Ρ‚Π° дирСктория
Π½Π° инструмСнта, .\/bigtop:

.\/gradlew toolchain\n.\/gradlew toolchain-devtools\n.\/gradlew toolchain-puppetmodules

Или Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΎ ΠΏΡ€Π΅Π· puppet:

puppet apply --modulepath= -e "include bigtop_toolchain::installer"\npuppet apply --modulepath= -e "include bigtop_toolchain::deployment-tools"\npuppet apply --modulepath= -e "include bigtop_toolchain::development-tools"

Π—Π° съТалСниС, Π²Π΅Ρ‡Π΅ Π½Π° Ρ‚ΠΎΠ·ΠΈ Π΅Ρ‚Π°ΠΏ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π²ΡŠΠ·Π½ΠΈΠΊΠ½Π°Ρ‚ трудности. ΠžΠ±Ρ‰ΠΈΡΡ‚ ΡΡŠΠ²Π΅Ρ‚ Π΅ – Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Π½ дистрибутив, Π°ΠΊΡ‚ΡƒΠ°Π»Π΅Π½ Π½Π° хостинга Π·Π° сборка ΠΈΠ»ΠΈ Π΄Π° сС ΠΎΠΏΠΈΡ‚Π° ΠΏΡŠΡ‚ΡΡ‚ с docker.

БглобяванС

Какво ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΎΠΏΠΈΡ‚Π°ΠΌΠ΅ Π΄Π° сглобим? ΠžΡ‚Π³ΠΎΠ²ΠΎΡ€ΡŠΡ‚ Π½Π° Ρ‚ΠΎΠ·ΠΈ Π²ΡŠΠΏΡ€ΠΎΡ Ρ‰Π΅ Π΄Π°Π΄Π΅ ΠΈΠ·Ρ…ΠΎΠ΄ΡŠΡ‚ ΠΎΡ‚ ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π°

.\/gradlew tasks

Π’ Ρ€Π°Π·Π΄Π΅Π»Π° Package tasks ΠΈΠΌΠ° Ρ€Π΅Π΄ΠΈΡ†Π° ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ са ΠΊΡ€Π°ΠΉΠ½ΠΈ Π°Ρ€Ρ‚Π΅Ρ„Π°ΠΊΡ‚ΠΈ Π½Π° Bigtop.
МоТСм Π΄Π° Π³ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ ΠΏΠΎ суфикса -rpm ΠΈΠ»ΠΈ -pkg-ind (Π² случай Π½Π° сглобяванС
Π² docker). Π’ нашия случай Π½Π°ΠΉ-интСрСсСн Π΅ Hadoop.

НСка ΠΎΠΏΠΈΡ‚Π°ΠΌΠ΅ Π΄Π° изпълним сглобяванСто Π² срСдата Π½Π° нашия dev-ΡΡŠΡ€Π²ΡŠΡ€:

.\/gradlew hadoop-rpm

Bigtop Ρ‰Π΅ ΠΈΠ·Ρ‚Π΅Π³Π»ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΈΡ‚Π΅ ΠΈΠ·Ρ…ΠΎΠ΄Π½ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅, Π½ΡƒΠΆΠ½ΠΈ Π·Π° конкрСтния ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚, ΠΈ Ρ‰Π΅ Π·Π°ΠΏΠΎΡ‡Π½Π΅ компилация. По Ρ‚ΠΎΠ·ΠΈ Π½Π°Ρ‡ΠΈΠ½ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° Π½Π° инструмСнта Π΅ ΡΠ²ΡŠΡ€Π·Π°Π½Π° с Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°Ρ‚Π° Π½Π° 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 @@


central
- http:\/\/repo1.maven.org\/maven2
+ https:\/\/repo1.maven.org\/maven2

false

Π‘ΠΊΠΎΡ€Π΅Π΅ всСго, Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ чтСния этой ΡΡ‚Π°Ρ‚ΡŒΠΈ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π²Ρ‹ΡˆΠ΅ исправлСниС Π²Π°ΠΌ Π½Π΅ придСтся Π΄Π΅Π»Π°Ρ‚ΡŒ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ.

ΠŸΡ€ΠΈ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠΈ ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ ΠΏΠ°Ρ‚Ρ‡Π΅ΠΉ ΠΈ ΠΏΡ€Π°Π²ΠΎΠΊ Π² ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ сборки ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ Β«ΡΠ±Ρ€ΠΎΡΠΈΡ‚ΡŒΒ» сборку Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ очистки:

.\/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
Π‘Ρ‚Ρ€ΠΎΠΈΠΌ 1.2.1 hadoop-pkg Π½Π° centos-7 Π² 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
....
ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ‹Π²ΠΎΠ΄Π°
....
Записано: \/bigtop\/build\/hadoop\/rpm\/RPMS\/x86_64\/hadoop-2.8.5-1.el7.x86_64.rpm
Записано: \/bigtop\/build\/hadoop\/rpm\/RPMS\/x86_64\/hadoop-hdfs-2.8.5-1.el7.x86_64.rpm
Записано: \/bigtop\/build\/hadoop\/rpm\/RPMS\/x86_64\/hadoop-yarn-2.8.5-1.el7.x86_64.rpm
Записано: \/bigtop\/build\/hadoop\/rpm\/RPMS\/x86_64\/hadoop-mapreduce-2.8.5-1.el7.x86_64.rpm
Записано: \/bigtop\/build\/hadoop\/rpm\/RPMS\/x86_64\/hadoop-hdfs-namenode-2.8.5-1.el7.x86_64.rpm
Записано: \/bigtop\/build\/hadoop\/rpm\/RPMS\/x86_64\/hadoop-hdfs-secondarynamenode-2.8.5-
1.el7.x86_64.rpm
Записано: \/bigtop\/build\/hadoop\/rpm\/RPMS\/x86_64\/hadoop-hdfs-zkfc-2.8.5-1.el7.x86_64.rpm
Записано: \/bigtop\/build\/hadoop\/rpm\/RPMS\/x86_64\/hadoop-hdfs-journalnode-2.8.5-
1.el7.x86_64.rpm
Записано: \/bigtop\/build\/hadoop\/rpm\/RPMS\/x86_64\/hadoop-hdfs-datanode-2.8.5-1.el7.x86_64.rpm
Записано: \/bigtop\/build\/hadoop\/rpm\/RPMS\/x86_64\/hadoop-httpfs-2.8.5-1.el7.x86_64.rpm
Записано: \/bigtop\/build\/hadoop\/rpm\/RPMS\/x86_64\/hadoop-yarn-resourcemanager-2.8.5-
1.el7.x86_64.rpm
Записано: \/bigtop\/build\/hadoop\/rpm\/RPMS\/x86_64\/hadoop-yarn-nodemanager-2.8.5-
1.el7.x86_64.rpm
Записано: \/bigtop\/build\/hadoop\/rpm\/RPMS\/x86_64\/hadoop-yarn-proxyserver-2.8.5-
1.el7.x86_64.rpm
Записано: \/bigtop\/build\/hadoop\/rpm\/RPMS\/x86_64\/hadoop-yarn-timelineserver-2.8.5-
1.el7.x86_64.rpm
Записано: \/bigtop\/build\/hadoop\/rpm\/RPMS\/x86_64\/hadoop-mapreduce-historyserver-2.8.5-
1.el7.x86_64.rpm
Записано: \/bigtop\/build\/hadoop\/rpm\/RPMS\/x86_64\/hadoop-client-2.8.5-1.el7.x86_64.rpm
Записано: \/bigtop\/build\/hadoop\/rpm\/RPMS\/x86_64\/hadoop-conf-pseudo-2.8.5-1.el7.x86_64.rpm
Записано: \/bigtop\/build\/hadoop\/rpm\/RPMS\/x86_64\/hadoop-doc-2.8.5-1.el7.x86_64.rpm
Записано: \/bigtop\/build\/hadoop\/rpm\/RPMS\/x86_64\/hadoop-libhdfs-2.8.5-1.el7.x86_64.rpm
Записано: \/bigtop\/build\/hadoop\/rpm\/RPMS\/x86_64\/hadoop-libhdfs-devel-2.8.5-1.el7.x86_64.rpm
Записано: \/bigtop\/build\/hadoop\/rpm\/RPMS\/x86_64\/hadoop-hdfs-fuse-2.8.5-1.el7.x86_64.rpm
Записано: \/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
ИзпълнСниС(%clean): \/bin\/sh -e \/var\/tmp\/rpm-tmp.uQ2FCn
+ exit 0
+ umask 022
ИзпълнСниС(--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] БъздаванС на \/bigtop\/build\/hadoop\/ .rpm
:hadoop-rpm (Thread[Task worker for ':',5,main]) Π·Π°Π²ΡŠΡ€ΡˆΠ΅Π½ΠΎ. ΠžΡ‚Π½Π΅ 38 ΠΌΠΈΠ½ 1.151 сСк.
:hadoop-pkg (Thread[Task worker for ':',5,main]) Π·Π°ΠΏΠΎΡ‡Π½Π°Ρ‚.
> Task :hadoop-pkg
Task ':hadoop-pkg' Π½Π΅ Π΅ Π°ΠΊΡ‚ΡƒΠ°Π»Π΅Π½, Π·Π°Ρ‰ΠΎΡ‚ΠΎ:
Task Π½Π΅ Π΅ Π΄Π΅ΠΊΠ»Π°Ρ€ΠΈΡ€Π°Π» ΠΈΠ·Ρ…ΠΎΠ΄ΠΈ, Π²ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‡Π΅ Π΅ изпълнил дСйствия.
:hadoop-pkg (Thread[Task worker for ':',5,main]) Π·Π°Π²ΡŠΡ€ΡˆΠ΅Π½ΠΎ. ΠžΡ‚Π½Π΅ 0.0 сСк.
BUILD Π£Π‘ΠŸΠ•Π¨Π•Π Π·Π° 40ΠΌ 37с
6 дСйствия: 6 изпълнСни
+ 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
Π“Ρ€Π΅ΡˆΠΊΠ°: Няма Ρ‚Π°ΠΊΡŠΠ² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€:
ac46014fd9501bdc86b6c67d08789fbdc6ee46a2645550ff6b6712f7d02ffebb
BUILD Π£Π‘ΠŸΠ•Π¨Π•Π Π·Π° 41ΠΌ 24с
1 дСйствия: 1 изпълнСна

БглобяванСто бСшС ΠΈΠ·Π²ΡŠΡ€ΡˆΠ΅Π½ΠΎ ΠΏΠΎΠ΄ CentOS, Π½ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·Π²ΡŠΡ€ΡˆΠΈ ΠΈ ΠΏΠΎΠ΄ Ubuntu:

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

ОсвСн сглобяванСто Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ ΠΏΠΎΠ΄ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ дистрибуции Π½Π° Linux, ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚ΡŠΡ‚ ΡƒΠΌΠ΅e Π΄Π° Ρ„ΠΎΡ€ΠΌΠΈΡ€Π° Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ с сглобСни ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

.\/gradlew yum

Π‘ΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ°, ΠΌΠΎΠΆΠ΅ Π΄Π° сС спомСнС Π·Π° smoke тСстовСтС ΠΈ Ρ€Π°Π·Π³Ρ€ΡŠΡ‰Π°Π½Π΅Ρ‚ΠΎ Π² docker.

Π‘ΡŠΠ·Π΄Π°ΠΉΡ‚Π΅ ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ ΠΎΡ‚ Ρ‚Ρ€ΠΈ възСла:

.\/gradlew -Pnum_instances=3 docker-provisioner

Π‘Ρ‚Π°Ρ€Ρ‚ΠΈΡ€Π°ΠΉΡ‚Π΅ smoke тСстовСтС Π² ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€Π° ΠΎΡ‚ Ρ‚Ρ€ΠΈ възСла:

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

Π˜Π·Ρ‚Ρ€ΠΈΠΉΡ‚Π΅ ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€Π°:

.\/gradlew docker-provisioner-destroy

ΠŸΠΎΠ»ΡƒΡ‡Π΅Ρ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈΡ‚Π΅ Π·Π° ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅ Π²ΡŠΡ‚Ρ€Π΅ Π² docker ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈΡ‚Π΅:

.\/gradlew docker-provisioner-ssh

ПоказванС Π½Π° ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅Ρ‚ΠΎ:

.\/gradlew docker-provisioner-status

По-ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Π·Π° Deployment tasks ΠΌΠΎΠΆΠ΅ Π΄Π° сС Ρ‡Π΅Ρ‚Π΅ Π² докумСнтацията.

Ако Π³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Π·Π° тСстовСтС, Ρ‚Π΅ са Π² голямо количСство, основно smoke ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΈ. ΠΠ½Π°Π»ΠΈΠ·ΡŠΡ‚ ΠΈΠΌ Π΅ извън Ρ€Π°ΠΌΠΊΠΈΡ‚Π΅ Π½Π° Ρ‚Π°Π·ΠΈ статия. Π©Π΅ ΠΊΠ°ΠΆΠ° само, Ρ‡Π΅ сглобяванСто Π½Π° дистрибуцията Π½Π΅ Π΅ Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° слоТна Π·Π°Π΄Π°Ρ‡Π°, ΠΊΠΎΠ»ΠΊΠΎΡ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° Π½Π° ΠΏΡ€ΡŠΠ² ΠΏΠΎΠ³Π»Π΅Π΄. Всички ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Π² продукцията Π½ΠΈ, успяхмС Π΄Π° сглобим ΠΈ Π΄Π° ΠΏΡ€Π΅ΠΌΠΈΠ½Π΅ΠΌ тСстовС, Π° ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° Π½Π΅ срСщнахмС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ с тяхното Ρ€Π°Π·Π³Ρ€ΡŠΡ‰Π°Π½Π΅ ΠΈ ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Π½Π΅ Π½Π° основни ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² тСстовата срСда.

ОсвСн Π½Π°Π»ΠΈΡ‡Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ Π² Bigtop, ΠΈΠΌΠ° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡ‚Π΅ Π½Π΅Ρ‰ΠΎ ΠΎΡ‰Π΅, Π΄ΠΎΡ€ΠΈ собствСна софтуСрна Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°. Всичко Ρ‚ΠΎΠ²Π° сС Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€Π° ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ ΠΈ сС вписва Π² концСпцията CI/CD.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

ΠžΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ Π΅, Ρ‡Π΅ сглобСната ΠΏΠΎ Ρ‚ΠΎΠ·ΠΈ Π½Π°Ρ‡ΠΈΠ½ дистрибуция Π½Π΅ Π±ΠΈΠ²Π° Π²Π΅Π΄Π½Π°Π³Π° Π΄Π° сС ΠΈΠ·ΠΏΡ€Π°Ρ‰Π° Π² продукция. Врябва Π΄Π° сС Ρ€Π°Π·Π±ΠΈΡ€Π°, Ρ‡Π΅ Π°ΠΊΠΎ ΠΈΠΌΠ° Ρ€Π΅Π°Π»Π½Π° Π½ΡƒΠΆΠ΄Π° ΠΎΡ‚ сглобяванС ΠΈ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° своя дистрибуция, трябва Π΄Π° сС Π²Π»ΠΎΠΆΠ°Ρ‚ срСдства ΠΈ Π²Ρ€Π΅ΠΌΠ΅.

ВсС ΠΏΠ°ΠΊ, Π² комбинация с правилния ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΈ профСсионалСн Π΅ΠΊΠΈΠΏ, Π΅ възмоТно Π΄Π° сС ΠΌΠΈΠ½Π΅ ΠΈ Π±Π΅Π· Ρ‚ΡŠΡ€Π³ΠΎΠ²ΡΠΊΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ.

Π’Π°ΠΆΠ½ΠΎ Π΅ Π΄Π° сС ΠΎΡ‚Π±Π΅Π»Π΅ΠΆΠΈ, Ρ‡Π΅ самият ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Bigtop ΠΈΠΌΠ° Π½ΡƒΠΆΠ΄Π° ΠΎΡ‚ Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ ΠΈ, ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π°, към ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π°ΠΊΡ‚ΠΈΠ²Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π² Π½Π΅Π³ΠΎ Π½Π΅ сС ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°. Π‘ΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° Π½Π΅ Π΅ ясна пСрспСктивата Π·Π° появата Π½Π° Hadoop 3 Π² Π½Π΅Π³ΠΎ. Към Π΄ΡƒΠΌΠΈΡ‚Π΅, Π°ΠΊΠΎ ΠΈΠΌΠ°Ρ‚Π΅ Ρ€Π΅Π°Π»Π½Π° Π½ΡƒΠΆΠ΄Π° ΠΎΡ‚ сглобяванС Π½Π° Hadoop 3, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅Ρ‚Π΅ Π½Π° Ρ„ΠΎΡ€ΠΊΠ° ΠΎΡ‚ Arenadata, Π² ΠΊΠΎΠΉΡ‚ΠΎ освСн стандартнитС
ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ ΠΈΠΌΠ° ΠΈ Ρ€Π΅Π΄ΠΈΡ†Π° Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ (Ranger, Knox, NiFi).

Π©ΠΎ сС отнася Π΄ΠΎ РостСлСком, Π·Π° нас Bigtop – Ρ‚ΠΎΠ²Π° Π΅ Π΅Π΄ΠΈΠ½ ΠΎΡ‚ Ρ€Π°Π·Π³Π»Π΅ΠΆΠ΄Π°Π½ΠΈΡ‚Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΈ към днСшна Π΄Π°Ρ‚Π°. Π”Π°Π»ΠΈ Ρ‰Π΅ спрСм ΠΈΠ·Π±ΠΎΡ€Π° си Π½Π° Π½Π΅Π³ΠΎ ΠΈΠ»ΠΈ Π½Π΅ – Ρ‰Π΅ ΠΏΠΎΠΊΠ°ΠΆΠ΅ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ.

Appendix

Π—Π° Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡ‚Π΅ Π½ΠΎΠ² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Π² сглобката, трябва Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡ‚Π΅ Π½Π΅Π³ΠΎΠ²ΠΎΡ‚ΠΎ описаниС Π² bigtop.bom ΠΈ .\/bigtop-packages. ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΎΠΏΠΈΡ‚Π°Ρ‚Π΅ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ ΠΏΠΎ аналогия с Π²Π΅Ρ‡Π΅ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‰ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ. ΠžΠΏΠΈΡ‚Π°ΠΉΡ‚Π΅ сС Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅Ρ‚Π΅. НС Π΅ Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° слоТно, ΠΊΠΎΠ»ΠΊΠΎΡ‚ΠΎ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° Π½Π° ΠΏΡ€ΡŠΠ² ΠΏΠΎΠ³Π»Π΅Π΄.

Какво мислитС Π²ΠΈΠ΅? Π©Π΅ сС Ρ€Π°Π΄Π²Π°ΠΌΠ΅ Π΄Π° Π²ΠΈΠ΄ΠΈΠΌ Π²Π°ΡˆΠ΅Ρ‚ΠΎ ΠΌΠ½Π΅Π½ΠΈΠ΅ Π² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΡ‚Π΅ ΠΈ Π²ΠΈ Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€ΠΈΠΌ Π·Π° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅Ρ‚ΠΎ!

Бтатията Π΅ ΠΏΠΎΠ΄Π³ΠΎΡ‚Π²Π΅Π½Π° ΠΎΡ‚ Π΅ΠΊΠΈΠΏΠ° ΠΏΠΎ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ Π½Π° β€žΠ ΠΎΡΡ‚Π΅Π»Π΅ΠΊΠΎΠΌβ€œ

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster