Está en la página 1de 5

Instalación de Apache Spark

Para la presente guía se va realizar una instalación de Apache Spark versión 1.6.0 en el sistema
operativo Ubuntu versión 16.04

1. Se debe instalar la Java ejecutando los siguientes comandos:


$ sudo apt-add-repository ppa:webupd8team/java
$ sudo apt-get update
$ sudo apt-get install oracle-java7-installer

2. Luego de la instalación de todos los paquetes se debe verificar la versión


$ java –version

Desplegando la siguiente pantalla

3. Luego se hace la instalación del Scala ejecutando los siguientes comandos:

$ wget http://www.scala-lang.org/files/archive/scala-2.11.7.deb
$ sudo dpkg -i scala-2.11.7.deb

4. Verificamos su correcta instalación con lo siguiente:


scala -version

El cual nos desplegara el siguiente mensaje:

5. Si no tenemos git y phyton instalados realizamos su instalación con las siguiente


sentencias:
sudo apt-get install git
sudo pip install py4j

6. Con esos paquetes previos ya instalados podemos instalar Apache Spark

$ wget http://d3kbcqa49mib13.cloudfront.net/spark-1.6.0.tgz
$ tar xvf spark-1.6.0.tgz
El código de arriba permite descargar el paquete necesario de Apache Spark en el
directorio home.

7. Una vez descargados extraemos este paquete y lo compilamos


$ cd spark-1.6.0
$ sbt/sbt assembly
Esta instalación dura aproximadamente una media hora.
8. Acabada esta instalación se debe instalar el test de Spark
$ cp conf/log4j.properties.template conf/log4j.properties
$ nano conf/log4j.properties

Aquí reemplazar la línea "log4j.rootCategory = INFO, console" con "log4j.rootCategory =


ERROR, console". Esto reduce la verbosidad del registrador log4j.

9. Ahora corremos el ejemplo por defecto que viene instalado


$ ./bin/run-example SparkPi 10

10. Ahora se define las variables de entorno en el sistema operativo correspondientes a Spark
y a Pyhton
export SPARK_HOME='/home/rsk/spark-1.6.0'
export PATH=$SPARK_HOME:$PATH
export PYTHONPATH=$SPARK_HOME/python:$PYTHONPATH

11. Por ultimo ya podemos utilizar spark tranquilamente y poder trabajar en este caso con
phtyon
Instalación de Nodos en Apache Spark
Antes de realizar la instalación de los nodos se debe considerar lo siguiente que el nodo Master y
los nodos Slaves deben estar en la misma red y se tiene que habilitar SSH sin contraseñas (Secure
Shell) para Spark master en los Spark Slaves (este paso solo es necesario para habilitar el inicio de
sesión remoto para las acciones de inicio y apagado del daemon esclavo).

Teniendo en cuenta lo siguiente:

1. Verificar el si el protocolo ssh esta intalado


1.1. Mirar el estado del protocolo
service ssh status

Si le retorna "unrecognized service" se debe realizar los siguientes pasos:

1.2. Instalar el openssh-server


sudo apt-get install openssh-server

1.3. Despues de que se instale se verifica el estado del servidor de openssh


service ssh status

1.4. Si no está habilitado entonces se procede a iniciar el servicio.


service ssh start

2. Generar el acceso remoto por ssh entre el/los esclavos frente al master
2.1. Generar la nueva llave publica en el nodo master y esclavo.
ssh-keygen

2.2. Añadir la llave autorizada en la maquina remota


ssh-copy-id <user>@<ip>
Donde <user> es el nombre del usuario de la maquina remota o local y <ip> es la dirección
Ip de la maquina remota o el localhost si es maquina local.

Al finalizar este proceso se genera automáticamente las claves ssh en el nodo master y
esclavo.

Nota: este paso 2 se lo debe hacer tanto en el nodo master y esclavo/s.

Instalación de Nodo Master


1. Configurar el archivo spark-env.sh la URL a utilizar en el nodo master. En este caso se pone
la siguiente línea de código:
SPARK_MASTER_IP=192.168.10.1

2. Ahora definida la ip del master se ejecuta en el siguiente comando para que la maquina
inicialice en modo master:

./sbin/start-master.sh

3. Para verificar que el nodo trabaja correctamente ingresamos en el browser la siguiente url
<ip:8080> el cual le abrirá la consola de administración del nodo master:

Instalación de Nodos Slaves


Algo muy similar a la configuración del nodo master es con el/los nodos slaves:
1. Configurar en todos los nodos slaves el archivo de configuración spark-defaults.conf donde
se especifica la url del nodo master.
2. Configurar el archivo spark-env.sh la URL a utilizar en el nodo master. En este caso se pone
la siguiente línea de código:
SPARK_MASTER_IP=192.168.10.1
3. Ejecutar el siguiente commando

./sbin/start-slave.sh <master-spark-URL>

4. Para verificar que el nodo trabaja correctamente ingresamos en el browser la siguiente url
<ip:8081> el cual le abrirá la consola de administración del nodo slave: