Zoeken op website

Cloudera Manager installeren en configureren op CentOS/RHEL 7 - Deel 3


In dit artikel hebben we het stapsgewijze proces beschreven voor het installeren van Cloudera Manager volgens industriële praktijken. In deel 2 hebben we de vereisten voor Cloudera al doorgenomen, zorg ervoor dat alle servers perfect zijn voorbereid.

Vereisten

  • Best practices voor het implementeren van Hadoop Server op CentOS/RHEL 7 – Deel 1
  • Hadoop-vereisten en beveiliging instellen – Deel 2

Hier hebben we een cluster met 5 knooppunten, waar 2 meesters en 3 werkers zijn. Ik heb 5 AWS EC2-instanties gebruikt om de installatieprocedure te demonstreren. Ik heb die 5 servers een naam gegeven, zoals hieronder.

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

Cloudera Manager is een beheer- en monitoringtool voor de gehele CDH. Wij beheerders noemen het meestal een beheertool voor Cloudera Hadoop. Met behulp van deze tool kunnen we configuratiewijzigingen implementeren, monitoren, controleren en aanbrengen. Dit is zeer essentieel om het hele cluster te kunnen beheren.

Hieronder vindt u de belangrijke toepassingen van Cloudera Manager.

  • Implementeer en configureer Hadoop-clusters op een geautomatiseerde manier.
  • Bewaak de clusterstatus
  • Configureer waarschuwingen
  • Probleemoplossen
  • Rapportage
  • Clustergebruiksrapport maken
  • Resources dynamisch configureren

Stap 1: Apache Web Server installeren op CentOS

We gaan de master1 gebruiken als webserver voor Cloudera-repository's. Bovendien is Cloudera Manager WebUI, dus we moeten Apache geïnstalleerd hebben. Volg de onderstaande stappen om de apache-webserver te installeren.

yum -y install httpd

Zodra httpd is geïnstalleerd, start u het en schakelt u het in, zodat het tijdens het opstarten wordt gestart.

systemctl start httpd
systemctl enable httpd

Controleer na het starten van httpd de status.

systemctl status httpd

Nadat je httpd hebt gestart, open je een browser in je lokale systeem en plak je het IP-adres van master1 in de zoekbalk. Je zou deze testpagina moeten krijgen om er zeker van te zijn dat httpd goed werkt.

Stap 2: Configureer lokale DNS om IP en hostnaam op te lossen

We hebben een DNS-server nodig of configureren /etc/hosts om IP en hostnaam om te zetten. Hier zijn we /etc/hosts aan het configureren, maar in realtime zal er een speciale DNS-server beschikbaar zijn voor de productieomgeving.

Volg de onderstaande stappen om een invoer in te voeren voor al uw servers in /etc/hosts.

vi /etc/hosts

Dit moet op alle servers worden geconfigureerd.

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

Stap 3: Configureer SSH wachtwoordloos inloggen

Cloudera Manager wordt in deze demonstratie geïnstalleerd op master1. We moeten wachtwoordloze ssh configureren van master1 naar alle andere knooppunten. Omdat de Cloudera Manager ssh zal gebruiken om alle andere knooppunten te communiceren om pakketten te installeren.

Volg de onderstaande stappen om wachtwoordloze ssh van master1 naar alle overige servers te configureren. We hebben een gebruiker ‘tecmint’ nodig om verder te gaan.

Maak een gebruiker ‘tecmint‘ voor alle 4 de servers met behulp van de opdracht useradd, zoals weergegeven.

useradd -m tecmint

Om het root-privilege aan de gebruiker ‘tecmint‘ te geven, voegt u de onderstaande regel toe aan het bestand /etc/sudoers. Je kunt deze regel onder root toevoegen, zoals aangegeven in de schermafbeelding.

tecmint   ALL=(ALL)    ALL

Schakel over naar gebruiker ‘tecmint‘ en maak een ssh-sleutel in de master1 met behulp van het onderstaande commando.

sudo su tecmint
ssh-keygen

Kopieer nu de gemaakte sleutel naar alle vier de servers met behulp van de opdracht ssh-copy-id, zoals weergegeven.

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 

Nu zou je in staat moeten zijn om vanaf master1 naar alle overige servers te sshten zonder wachtwoord, zoals weergegeven.

ssh master2
ssh worker1
ssh worker2
ssh worker3

Stap 4: Cloudera Manager installeren en configureren

We kunnen de repository van leverancier (Cloudera) gebruiken om alle pakketten te installeren met behulp van de pakketbeheertools in RHEL/CentOS. In realtime is het creëren van onze eigen repository de beste praktijk, omdat we mogelijk geen internettoegang hebben op de productieservers.

Hier gaan we de Cloudera Manager 6.3.1 release installeren. Omdat we master1 als reposerver gaan gebruiken, downloaden we de pakketten via het hieronder genoemde pad.

Maak de onderstaande mappen aan op de master1-server.

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

We kunnen de wget-tool gebruiken om pakketten via http te downloaden. Installeer dus wget met behulp van de onderstaande opdracht.

sudo yum -y install wget

Download vervolgens het Cloudera Manager tar-bestand met behulp van de volgende wget-opdracht.

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

Pak het tar-bestand uit in /var/www/html/cloudera-repos/cm6, we hebben master1 al als webserver gemaakt door http te installeren en we hebben het in de browser getest.

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

Controleer nu of alle Cloudera-rpm-bestanden zich in de map /var/www/html/cloudera-repos/cm6/RPMS/x86_64 bevinden.

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

Maak /etc/yum.repos.d/cloudera-manager.repo bestanden op alle servers in de clusterhosts met de volgende inhoud, hier is master1 (65.0.101.148) de webserver.

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

Nu de repository is toegevoegd, voert u de onderstaande opdracht uit om de ingeschakelde repository's te bekijken.

yum repolist

Voer de onderstaande opdracht uit om alle beschikbare Cloudera-gerelateerde pakketten in de repository te bekijken.

yum list available | grep cloudera*

Installeer 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

Voer de onderstaande opdracht uit om alle geïnstalleerde Cloudera-pakketten te bekijken.

yum list installed | grep cloudera*

Voer de onderstaande opdracht uit om de cloudera-scm-server-db te starten. Dit is een onderliggende database waarin metagegevens van Cloudera Manager en andere services worden opgeslagen.

Standaard komt Cloudera met postgre-sql dat is ingebed in Cloudera Manager. We installeren de ingebouwde versie in een realtime externe database die kan worden gebruikt. Dit kan Oracle, MySQL of PostgreSQL zijn.

sudo systemctl start cloudera-scm-server-db

Voer de onderstaande opdracht uit om de status van de database te controleren.

sudo systemctl status cloudera-scm-server-db

Configureer de db.properties voor de Cloudera Manager-server.

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

Configureer de onderstaande waarde EMBEDDED om Cloudera Manager de Embedded Database te laten gebruiken.

com.cloudera.cmf.db.setupType=EMBEDDED

Voer de onderstaande opdracht uit om de Cloudera Manager-server te starten.

sudo systemctl start cloudera-scm-server

Voer de onderstaande opdracht uit om de status van de Cloudera Manager-server te controleren.

sudo systemctl status cloudera-scm-server

Voer de onderstaande opdracht uit om de Cloudera Manager-agent te starten en te controleren.

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

Zodra de Cloudera Manager Server goed werkt, kunt u de WebUI (inlogpagina) in de browser bekijken met behulp van het IP-adres en poortnummer 7180, wat het poortnummer is van Cloudera-manager.

https://65.0.101.148:7180

Samenvatting

In dit artikel hebben we het stapsgewijze proces gezien voor het installeren van Cloudera Manager op CentOS 7. De CDH en andere service-installaties zullen we in het volgende artikel zien.