Como instalar e configurar um cluster no Ubuntu 18.04, utilizando o Apache Hadoop 3.2.1 - Multi Node
Este artigo serve como um guia para proceder a instalação e configuração de um cluster no Ubuntu 18.04.
Para os utilizadores que não possuem o Ubuntu 18.04, devem instalar uma máquina virtual no computador, e instalar o Ubuntu 18.04 na máquina virtual. A máquina virtual utilizada neste tutorial é a VirtualBox (VB) da Oracle.
Para instalar o Sistema Operativo (SO), devemos abrir a VB e realizar os seguintes passos:
De seguida, clicamos sobre a máquina que pretendemos instalar o SO, e clicamos no botão Start, como mostra a figura:
Vamos proceder agora a instalação do Ubuntu.
Ao abrir a VB, irá aparecer um output semelhante ao seguinte:
Escolhemos o idioma e carregamos em “Instalar Ubuntu”.
De seguida, escolhemos o layout do teclado.
Depois de escolher o layout do teclado, irá aparecer um output semelhante ao seguinte e deixamos estar as seguintes opções marcadas:
No próximo output vamos preencher os nossos dados de utilizador (nome, password, etc.).
E no output a seguir, vamos clicar em “Restart Now”:
De seguida clicamos em “Next” nos separadores que nos aparecem, até obter o seguinte output:
Vamos clicar em “Don’t Upgrade”, para evitar conflitos de versões do Ubuntu. Continuamos a utilizar a versão 18.04.
Pronto, a instalação do Ubuntu 18.04 está feita, vamos agora seguir com o tutorial!!
Nota: Nos próximos passos, sempre que pedir a password, é necessário inseri-la.
1º Passo: Instalar o SSH
Para instalar o SSH, vamos abrir o terminal e executamos o seguinte comando:
sudo apt install ssh
2º Passo: Instalar o PDSH
Para instalar o PDSH, executamos o seguinte comando:
sudo apt install pdsh
3º Passo: Começar as configurações
Vamos abrir o ficheiro .bashrc executando o seguinte comando:
nano .bashrc
Com a seta para baixo, vamos até ao fim do ficheiro e inserimos o seguinte código:
export PDSH_RCMD_TYPE=ssh
De seguida fazemos “ctrl+X”, e aceitamos a opção de gravar o ficheiro.
Vamos criar uma nova chave publica de SSH, executando o seguinte comando:
ssh-keygen -t rsa -P ""
Depois copiamos a chave publica que geramos para o ficheiro das chaves autorizadas, executando o seguinte comando:
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
Para verificarmos a configuração do SSH vamos conectar-nos ao localhost, executando o seguinte comando:
ssh localhost
4º Passo: Instalar o Java 8
Vamos instalar o Java 8, por razões de compatibilidade, executando o seguinte comando:
sudo apt install openjdk-8-jdk
De modo a verificar se o java foi instalado, executamos o seguinte comando:
java -version
5º Passo: Download e instalação do Hadoop
Vamos fazer o download do Hadoop 3.2.1:
sudo wget -P /home/user/Desktop https://mirrors.sonic.net/apache/hadoop/common/hadoop-3.2.1/hadoop-3.2.1.tar.gz
Antes de proceder a instalação do Hadoop, temos que descompactar o ficheiro descarregado na etapa anterior, executando os seguintes comandos:
cd Desktop
tar xzf hadoop-3.2.1.tar.gz
Agora vamos alterar o nome da pasta hadoop-3.2.1 para hadoop, para facilitar o acesso através do terminal, executando o seguinte comando:
mv hadoop-3.2.1 hadoop
Agora vamos aceder ao ficheiro hadoop-env.sh, executando o seguinte comando:
nano hadoop/etc/hadoop/hadoop-env.sh
Vamos procurar no ficheiro o código que diz: “#export JAVA_HOME”, tiramos o comentário e escrevemos o seguinte código:
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/
De seguida fazemos “ctrl+X”, e aceitamos a opção de gravar o ficheiro.
Vamos mudar a pasta hadoop para o seguinte diretório: /usr/local/hadoop, executando o seguinte comando:
sudo mv hadoop /usr/local/hadoop
Voltamos ao Desktop executando o comando: cd
.
Vamos aceder ao ficheiro “environment”, executando o seguinte comando:
sudo nano /etc/environment
E vamos adicionar o que está a negrito no seguinte código:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/local/hadoop/bin:/usr/local/hadoop/sbin"
JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64/jre"
6º Passo: Criar um novo utilizador
Vamos criar um utilizador, ao qual vamos chamar hadoopuser, para o criar executamos o comando seguinte:
sudo adduser hadoopuser
De seguida vai pedir para inserir uma nova senha UNIX, vamos criar e confirmar a senha.
Vamos executar os seguintes comandos:
sudo usermod -aG hadoopuser hadoopuser
sudo chown hadoopuser:root -R /usr/local/hadoop/
sudo chmod g+rwx -R /usr/local/hadoop/
sudo adduser hadoopuser sudo
Vamos ver qual é o IP da nossa máquina, executando ip addr
no terminal.
Neste passo obtive um erro, uma vez que o IP que eu pretendia não é o que está assinalado, e nem se encontra no output mostrado. Posto isto, não foi possível concluir o tutorial.