Spark Lite Cluster
Este projeto oferece uma implementação Lite de um Cluster Apache Spark e conta com um CIFS File System para compartilhamento de arquivos em rede assim como Ganglia para observabilidade. Essa implementação foi apresentada e publicada no Seminário de Iniciação Científica do Litoral Norte (ISSN 2674-6689)
Autores:
Instalação
Este sistema é compatível com Arquiteturas do tipo ARMv7.
Recomendamos o uso das imagens prontas pois o seu uso requer menos gerenciamento de dependências e Know-how acerca dos assuntos tratados pelos scripts de instalação manual
Uso
Faça SSH via ip da máquina mestre ssh root@<IP-MASTER>
Use a senha padrão 0880 para instalação feita via Imagem ou sua senha definida na instalação Manual.
Execute o script para reiniciar o servidor de métricas:
./restart-ganglia.sh
Após a execução desse comandos o servidor ganglia estará disponível no URL:
Execute o script para relizar o mount do diretório de rede compartilhado
./mount-cifs.sh
Execute para habilitar os comandos de ambiente:
source .bashrc
E Finalmente execute o comando abaixo para inicializar o cluster:
start_cluster
Esse comando irá inicializar o Cluster Spark e seu servidor de métricas.
Após a execução desses comandos o cluster estará operacional no URL:
E o servidor de métricas no URL:
Executando Aplicações no Cluster:
Para executar aplicações basta executar o comando spark-submit para sua aplicação spark (.jar
ou .py
)
spark-submit --master spark://<IP/DO/MASTER> \
--executor-cores 4 \
--executor-memory 400M \
--conf spark.default.parallelism=24 \
--conf spark.executor.memoryOverhead=100M \
Caminho/para/aplicacao/main.py
Interface Gráfica e Observabilidade
Interface gráfica da Máquina Mestre (Orquestradora) do Apache Spark
Servidor de Metricas de Trabalho do Apache Spark
Servidor de Metricas de Cluster do agente de Observabilidade Ganglia
Utilitários
Estão presentes sobre o diretório /root
e foram pensados para facilitar algumas ações dentro do cluster.
Reinício do Ganglia
- Necessário executar
restart-ganglia.sh
para reiniciar o monitor Ganglia em todos os nós. - Reinicia o Servidor acessível na URL http://IP-do-mestre/ganglia/
Mount Point compartilhado
- Necessário executar
mount-cifs.sh
para reiniciar o CIFS (File System) para acesso ao diretório compartilhado de rede sobre o mount point/mnt/cifs_shared/
Desliga Cluster
- Necessário executar
shutdown-cluster.sh
para desligar todas as máquinas do cluster a partir da máquina mestre