Java
Para el funcionamiento de las herramientas que utilizaremos es necesario realiza la instalación de un JRE de Java.
Por compatibilidad (en particular con Apache Spark) recomendamos utilizar Oracle Java, pero se especifica al final de la guía la alternativa con openjdk (que en nuestras pruebas funciono correctamente con Pig).
Instalacion del Oracle Java 9
Realizaremos la instalación de Java 9 provisto por Oracle que fue empaquetada para Ubuntu y Debian por webupd8team
Para realizar la instalación es necesario seguir los siguientes pasos.
# installation of Oracle Java JDK.
sudo apt-get -y update
sudo apt-get -y install software-properties-common
sudo apt-get -y install python-software-properties
sudo apt-get -y install apt-transport-https
sudo add-apt-repository -y ppa:webupd8team/java
sudo apt-get -y update
sudo apt-get -y install oracle-java9-installer
sudo apt-get -y install oracle-java9-set-default
Es posible que durante el proceso de instalación les pida la aceptación de licencia a través de la linea de comando, ya sea ingresando enter o ingresando yes.
Al final de la guía se indica, como instalar como alternativa a esta distribución openjdk.
Configuración de variable de entorno JAVA_HOME
Para poder ejecutar correctamente java en el entorno debemos indicar en el mismo cual es el path donde encuentra instalado mediante la variable de entorno JAVA_HOME.
Buscando el path de instalacion de JAVA.
Con el siguiente comando obtendremos las distintas versiones de Java instaladas en el sistema.
sudo update-alternatives --config java
Por ejemplo en caso de tener una única, obtendremos el siguiente output.
root@00129134affc:/# sudo update-alternatives --config java
There is 1 choice for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-9-oracle/bin/java 1081 auto mode
* 1 /usr/lib/jvm/java-9-oracle/bin/java 1081 manual mode
En caso de tener varias, la interfaz pedirá que seleccionemos cual utilizaremos dando también el path de instalación de cada una.
El path de instalación de JAVA es el que se obtiene al eliminar el bin/java de la salida anterior.
En este caso, el valor correcto de JAVA_HOME será /usr/lib/jvm/java-9-oracle/
Esta información la deberemos tener disponible para el siguiente paso.
Configurando JAVA_HOME en ~/.bashrc
Una forma posible de configurar JAVA_HOME es incluir su definicion en ~/.bashrc (siendo ~, el home directory del usuario que estan usando i.e: /home/misusario).
Abrir entonces con su editor favorito ~/.bashrc.
vim ~/.bashrc
y agregar la variable de entorno, por ejemplo para nuestro ejemplo la variable seria:
export JAVA_HOME="/usr/lib/jvm/java-9-oracle/"
De esta forma para nuevas sesiones, la variable de entorno estará disponible.
Para tener seteada la variable en la sesion actual del shell pueden realizar un source ~/.bashrc, para volver a evaluar ese archivo en el shell actual.
Verificando JAVA_HOME en el shell
Para verificar la variable de entorno en cualquier sesión de shell pueden realizar un echo de la misma, obteniendo su definición, realizando un echo.
echo $JAVA_HOME
/usr/lib/jvm/java-9-oracle
Instalacion Alternativa: Java Openjdk
Otra alternativa es utilizar openjdk.
sudo apt-get update
sudo apt-get install default-jre
Es importante en esos casos seguir pasos similares de instalación pero configurar la versión correcta de Java que se este usando con update-alternatives.