Com instal·lar i configurar Cloudera Manager a CentOS/RHEL 7 - Part 3


En aquest article, vam descriure el procés pas a pas per instal·lar Cloudera Manager segons les pràctiques industrials. A la part 2, ja hem revisat els requisits previs de Cloudera, assegureu-vos que tots els servidors estiguin preparats perfectament.

  • Pràctiques recomanades per implementar el servidor Hadoop a CentOS/RHEL 7 - Part 1
  • Configuració dels requisits previs i l'enduriment de la seguretat de Hadoop - Part 2

Aquí tindrem un clúster de 5 nodes on 2 mestres i 3 treballadors. He utilitzat 5 instàncies AWS EC2 per demostrar el procediment d'instal·lació. He nomenat aquests 5 servidors com a continuació.

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

Cloudera Manager és una eina administrativa i de seguiment per a tot el CDH. Normalment, l'administrador l'anomena una eina de gestió per a Cloudera Hadoop. Podem implementar, supervisar, controlar i fer canvis de configuració amb l'ús d'aquesta eina. Això és molt essencial per gestionar tot el clúster.

A continuació es mostren els usos importants de Cloudera Manager.

  • Desplegueu i configureu els clústers Hadoop de manera automatitzada.
  • Supervisa l'estat del clúster
  • Configura les alertes
  • Resolució de problemes
  • Informes
  • Elaboració d'un informe d'utilització del clúster
  • Configuració dinàmica dels recursos

Pas 1: instal·lació del servidor web Apache a CentOS

Utilitzarem el master1 com a servidor web per als repositoris de Cloudera. A més, Cloudera Manager és WebUI, de manera que hem de tenir instal·lat Apache. Seguiu els passos següents per instal·lar el servidor web Apache.

# yum -y install httpd

Un cop instal·lat httpd, inicieu-lo i habiliteu-lo perquè s'iniciï a l'arrencada.

# systemctl start httpd
# systemctl enable httpd

Després d'iniciar httpd, assegureu-vos l'estat.

# systemctl status httpd

Després d'iniciar httpd, obriu un navegador al vostre sistema local i enganxeu l'adreça IP de master1 a la barra de cerca, hauríeu d'obtenir aquesta pàgina de prova per assegurar-vos que httpd funciona bé.

Pas 2: configureu el DNS local per resoldre la IP i el nom d'amfitrió

Hem de tenir un servidor DNS o configurar /etc/hosts per resoldre la IP i el nom d'amfitrió. Aquí estem configurant /etc/hosts, però en temps real hi haurà un servidor DNS dedicat per a l'entorn de producció.

Seguiu els passos següents per fer una entrada per a tots els vostres servidors a /etc/hosts.

# vi /etc/hosts

Això s'hauria de configurar a tots els servidors.

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

Pas 3: configureu l'inici de sessió SSH sense contrasenya

Cloudera Manager s'està instal·lant a master1 en aquesta demostració. Hem de configurar ssh sense contrasenya des de master1 a tots els altres nodes. Perquè el gestor de Cloudera utilitzarà ssh per comunicar tots els altres nodes per instal·lar paquets.

Seguiu els passos següents per configurar ssh sense contrasenya des de master1 a tots els servidors restants. Tindrem un usuari tecmint per continuar més endavant.

Creeu un usuari tecmint els 4 servidors mitjançant l'ordre useradd tal com es mostra.

# useradd -m tecmint

Per donar el privilegi de root a l'usuari tecmint, afegiu la línia següent al fitxer /etc/sudoers. Podeu afegir aquesta línia a l'arrel tal com es mostra a la captura de pantalla.

tecmint   ALL=(ALL)    ALL

Canvieu a l'usuari tecmint i creeu la clau ssh al master1 mitjançant l'ordre següent.

# sudo su tecmint
$ ssh-keygen

Ara copieu la clau creada als 4 servidors mitjançant l'ordre ssh-copy-id tal com es mostra.

$ 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 

Ara hauríeu de poder fer un ssh de master1 a tots els servidors restants sense contrasenya com es mostra.

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

Pas 4: instal·lació i configuració de Cloudera Manager

Podem utilitzar el dipòsit del proveïdor (Cloudera) per instal·lar tots els paquets mitjançant les eines de gestió de paquets a RHEL/CentOS. En temps real, crear el nostre propi dipòsit és la millor pràctica perquè és possible que no tinguem accés a Internet als servidors de producció.

Aquí instal·larem la versió 6.3.1 de Cloudera Manager. Com que farem servir master1 com a servidor de repo, estem descarregant els paquets a la ruta esmentada a continuació.

Creeu els directoris esmentats a continuació al servidor master1.

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

Podem utilitzar l'eina wget per descarregar paquets a través de http. Per tant, instal·leu wget mitjançant l'ordre següent.

$ sudo yum -y install wget

A continuació, descarregueu el fitxer tar de Cloudera Manager mitjançant la següent comanda wget.

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

Extreu el fitxer tar a /var/www/html/cloudera-repos/cm6, ja hem fet master1 com a servidor web instal·lant http i ho hem provat al navegador.

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

Ara, verifiqueu que tots els fitxers rpm de Cloudera hi siguin al directori /var/www/html/cloudera-repos/cm6/RPMS/x86_64.

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

Creeu fitxers /etc/yum.repos.d/cloudera-manager.repo a tots els servidors dels amfitrions del clúster amb el contingut següent, aquí master1 (65.0.101.148) és el servidor web.

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

Ara que s'ha afegit el dipòsit, executeu l'ordre següent per veure els dipòsits habilitats.

$ yum repolist

Executeu l'ordre següent per veure tots els paquets relacionats amb Cloudera disponibles al dipòsit.

$ yum list available | grep cloudera*

Instal·leu 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

Executeu l'ordre següent per veure tots els paquets de Cloudera instal·lats.

$ yum list installed | grep cloudera*

Executeu l'ordre següent per iniciar el cloudera-scm-server-db, que és una base de dades subjacent per emmagatzemar les metadades de Cloudera Manager i altres serveis.

De manera predeterminada, Cloudera presenta postgre-sql que està incrustat al gestor de Cloudera. Estem instal·lant l'incrustat, en una base de dades externa en temps real que es pot utilitzar. Pot ser Oracle, MySQL o PostgreSQL.

$ sudo systemctl start cloudera-scm-server-db

Executeu l'ordre següent per comprovar l'estat de la base de dades.

$ sudo systemctl status cloudera-scm-server-db

Configureu el db.properties per al servidor Cloudera Manager.

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

Configureu que el valor següent sigui INCRUSAT per fer que Cloudera Manager utilitzi la base de dades incrustada.

com.cloudera.cmf.db.setupType=EMBEDDED

Executeu l'ordre següent per iniciar el servidor Cloudera Manager.

$ sudo systemctl start cloudera-scm-server

Executeu l'ordre següent per comprovar l'estat del servidor Cloudera Manager.

$ sudo systemctl status cloudera-scm-server

Executeu l'ordre següent per iniciar i comprovar l'estat de l'agent de Cloudera Manager.

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

Un cop el servidor Cloudera Manager s'hagi instal·lat i funcioni correctament, podeu veure la WebUI (pàgina d'inici de sessió) al navegador mitjançant l'adreça IP i el número de port 7180, que és el número de port de Cloudera Manager.

https://65.0.101.148:7180

En aquest article, hem vist el procés pas a pas per instal·lar Cloudera Manager a CentOS 7. Veurem les instal·lacions de CDH i altres serveis al següent article.