Kaip įdiegti ir konfigūruoti „Cloudera Manager“ sistemoje „CentOS/RHEL 7“ - 3 dalis


Šiame straipsnyje mes aprašėme žingsnis po žingsnio, kaip įdiegti „Cloudera Manager“ pagal pramonės praktiką. 2 dalyje mes jau praėjome „Cloudera“ išankstinius reikalavimus, įsitikinkite, kad visi serveriai yra tinkamai paruošti.

  • „Hadoop Server“ diegimo „CentOS/RHEL 7“ geroji patirtis - 1 dalis
  • „Hadoop“ išankstinių reikalavimų nustatymas ir saugumo grūdinimas - 2 dalis

Čia turėsime 5 mazgų grupes, kuriose bus 2 meistrai ir 3 darbuotojai. Įrengimo procedūrai parodyti panaudojau 5 AWS EC2 egzempliorius. Aš tuos 5 serverius pavadinau žemiau.

master1.linux-console.net
master2.linux-console.net
worker1.linux-console.net
worker2.linux-console.net
worker3.linux-console.net

„Cloudera Manager“ yra visos CDH administracinė ir stebėjimo priemonė. Administratorius paprastai vadina tai „Cloudera Hadoop“ valdymo įrankiu. Naudodami šį įrankį galime įdiegti, stebėti, valdyti ir atlikti konfigūracijos pakeitimus. Tai labai svarbu norint valdyti visą klasterį.

Toliau pateikiami svarbūs „Cloudera Manager“ naudojimo būdai.

  • Automatiškai įdiekite ir sukonfigūruokite „Hadoop“ grupes.
  • Stebėkite grupių būklę
  • konfigūruokite įspėjimus
  • Trikčių šalinimas
  • Pranešimas
  • Grupės naudojimo ataskaitos sudarymas
  • Dinamiškai konfigūruoti išteklius

1 žingsnis: „Apache“ tinklo serverio diegimas „CentOS“

Mes naudosime master1 kaip „Cloudera“ saugyklų tinklo serverį. Be to, „Cloudera Manager“ yra „WebUI“, todėl turime įdiegti „Apache“. Norėdami įdiegti apache žiniatinklio serverį, atlikite toliau nurodytus veiksmus.

# yum -y install httpd

Įdiegę httpd, paleiskite jį ir įjunkite, kad jis būtų paleistas įkrovos metu.

# systemctl start httpd
# systemctl enable httpd

Pradėję httpd, įsitikinkite, kad būsena.

# systemctl status httpd

Paleidę „httpd“, atidarykite naršyklę savo vietinėje sistemoje ir įklijuokite master1 IP adresą į paieškos juostą. Turėtumėte gauti šį bandomąjį puslapį, kad įsitikintumėte, jog „httpd“ veikia gerai.

2 žingsnis: konfigūruokite vietinį DNS, kad išspręstumėte IP ir pagrindinio kompiuterio pavadinimą

Turime turėti DNS serverį arba konfigūruoti/etc/hosts, kad išspręstume IP ir pagrindinio kompiuterio vardą. Čia mes konfigūruojame/etc/hosts, tačiau realiuoju laiku gamybos aplinkai bus skirtas DNS serveris.

Atlikite toliau nurodytus veiksmus, kad įrašytumėte visus savo serverius aplanke/etc/hosts.

# vi /etc/hosts

Tai turėtų būti sukonfigūruota visuose serveriuose.

13.235.27.144   master1.linux-console.net     master1
13.235.135.170  master2.linux-console.net     master2
15.206.167.94   worker1.linux-console.net     worker1
13.232.173.158  worker2.linux-console.net     worker2
65.0.182.222    worker3.linux-console.net     worker3

3 veiksmas: sukonfigūruokite prisijungimą be SSH

Šioje demonstracijoje „Cloudera Manager“ diegiama master1 . Turime sukonfigūruoti ssh be slaptažodžio iš master1 į visus kitus mazgus. Kadangi „Cloudera Manager“ naudos ssh ryšiui su visais kitais mazgais paketams įdiegti.

Atlikite toliau nurodytus veiksmus, kad sukonfigūruotumėte ssh be slaptažodžio iš master1 į visus likusius serverius. Mes turėsime vartotoją „tecmint“, kad galėtume tęsti toliau.

Sukurkite vartotojo „tecmint“ visus 4 serverius naudodami komandą useradd, kaip parodyta.

# useradd -m tecmint

Norėdami suteikti root 'privilegiją vartotojui' tecmint ', pridėkite žemiau esančią eilutę į/etc/sudoers failą. Šią eilutę galite pridėti prie šaknies, kaip pateikti ekrano kopijoje.

tecmint   ALL=(ALL)    ALL

Perjunkite į vartotojo „tecmint“ ir sukurkite ssh raktą master1 naudodami toliau pateiktą komandą.

# sudo su tecmint
$ ssh-keygen

Dabar nukopijuokite sukurtą raktą į visus 4 serverius naudodami komandą ssh-copy-id, kaip parodyta.

$ ssh-copy-id -i ~/.ssh/id_rsa.pub [email 
$ ssh-copy-id -i ~/.ssh/id_rsa.pub [email 
$ ssh-copy-id -i ~/.ssh/id_rsa.pub [email  
$ ssh-copy-id -i ~/.ssh/id_rsa.pub [email 

Dabar jūs turėtumėte galimybę ssh nuo master1 iki likusių visų serverių be slaptažodžio, kaip parodyta.

$ ssh master2
$ ssh worker1
$ ssh worker2
$ ssh worker3

4 žingsnis: „Cloudera Manager“ diegimas ir konfigūravimas

Mes galime naudoti tiekėjo („Cloudera“) saugyklą, kad galėtume įdiegti visus paketus naudodami paketų valdymo įrankius, esančius RHEL/CentOS. Realiuoju laiku kurti savo saugyklą yra geriausia praktika, nes mes galime neturėti interneto prieigos gamybos serveriuose.

Čia mes ketiname įdiegti „Cloudera Manager 6.3.1“ versiją. Kadangi kaip atpirkimo serverį ketiname naudoti master1 , atsisiunčiame paketus toliau nurodytame kelyje.

Sukurkite žemiau nurodytus katalogus serveryje master1 .

$ sudo mkdir -p /var/www/html/cloudera-repos/cm6

Mes galime naudoti „wget“ įrankį paketams atsisiųsti per http. Taigi, įdiekite wget naudodami žemiau esančią komandą.

$ sudo yum -y install wget

Tada atsisiųskite „Cloudera Manager“ dervos failą naudodami šią komandą wget.

$ wget https://archive.cloudera.com/cm6/6.3.1/repo-as-tarball/cm6.3.1-redhat7.tar.gz

Ištraukite dervos failą į/var/www/html/cloudera-repos/cm6, jau mes sukūrėme master1 kaip žiniatinklio serverį įdiegdami http ir mes išbandėme naršyklėje.

$ sudo tar xvfz cm6.3.1-redhat7.tar.gz -C /var/www/html/cloudera-repos/cm6 --strip-components=1

Dabar patikrinkite, ar visi „Cloudera rpm“ failai yra kataloge/var/www/html/cloudera-repos/cm6/RPMS/x86_64.

$ cd /var/www/html/cloudera-repos/cm6
$ ll

Sukurkite /etc/yum.repos.d/cloudera-manager.repo failus visuose sankaupos serverių serveriuose su tokiu turiniu, čia master1 (65.0.101.148) yra žiniatinklio serveris.

[cloudera-repo]
name=cloudera-manager
baseurl=http:///cloudera-repos/cm6/
enabled=1
gpgcheck=0

Dabar saugykla pridėta, paleiskite žemiau esančią komandą, kad peržiūrėtumėte įgalintas saugyklas.

$ yum repolist

Paleiskite žemiau esančią komandą, kad galėtumėte peržiūrėti visus saugykloje esančius „Cloudera“ susijusius paketus.

$ yum list available | grep cloudera*

Įdiekite „cloudera-manager-server“, „cloudera-manager-agent“, „cloudera-manager-daemons“ „cloudera-manager-server-db-2“.

$ sudo yum install cloudera-manager-daemons cloudera-manager-agent cloudera-manager-server cloudera-manager-server-db-2

Paleiskite žemiau esančią komandą, kad peržiūrėtumėte visus įdiegtus „Cloudera“ paketus.

$ yum list installed | grep cloudera*

Paleiskite žemiau esančią komandą, kad paleistumėte „cloudera-scm-server-db“, kuri yra pagrindinė duomenų bazė, skirta „Cloudera Manager“ ir kitų paslaugų metaduomenims saugoti.

Pagal numatytuosius nustatymus „Cloudera“ pateikia „postgre-sql“, kuris yra įterptas į „Cloudera Manager“. Diegiame įterptąją į realiojo laiko išorinę duomenų bazę, kurią galima naudoti. Tai gali būti „Oracle“, „MySQL“ arba „PostgreSQL“.

$ sudo systemctl start cloudera-scm-server-db

Paleiskite žemiau esančią komandą, kad patikrintumėte duomenų bazės būseną.

$ sudo systemctl status cloudera-scm-server-db

Konfigūruokite „Cloudera Manager“ serverio db.properties.

$ vi /etc/cloudera-scm-server/db.properties

Jei norite, kad „Cloudera Manager“ naudotų įterptąją duomenų bazę, sukonfigūruokite žemiau esančią vertę.

com.cloudera.cmf.db.setupType=EMBEDDED

Norėdami paleisti „Cloudera Manager“ serverį, vykdykite toliau pateiktą komandą.

$ sudo systemctl start cloudera-scm-server

Vykdykite toliau pateiktą komandą, kad patikrintumėte „Cloudera Manager“ serverio būseną.

$ sudo systemctl status cloudera-scm-server

Vykdykite žemiau esančią komandą, norėdami pradėti ir patikrinti „Cloudera Manager“ agento būseną.

$ sudo systemctl start cloudera-scm-agent
$ sudo systemctl status cloudera-scm-agent

Kai „Cloudera Manager Server“ sėkmingai veikia ir veikia, naršyklėje galite peržiūrėti „WebUI“ (prisijungimo puslapį) naudodami IP adresą ir prievado numerį 7180, kuris yra „Cloudera Manager“ prievado numeris.

https://65.0.101.148:7180

Šiame straipsnyje žingsnis po žingsnio matėme „Cloudera Manager“ diegimo procesą „CentOS 7“. CDH ir kitas paslaugų diegimo programas pamatysime kitame straipsnyje.