Nesta postagem, falaremos como criar um VM dentro do Compute Engine do GCP.
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLnZU0O22UOghYCvz5rgILltNOmKfazVonDW4AusJ8BS51EZcKExpF7XzmOpgZi0EXKZ7UJr50rug65V6kl0Afu5zSeAo_ETQN1b4EmY_xgQuzosOKSI9u1OV_PC0qPSfPKXu-m9MvmSjR/w528-h264/Untitled.png)
O que é Nifi?
O Apache NiFi é um projeto de software mantido pela Apache Software Foundation projetado para automatizar a integração de dados entre sistemas de software, suportando lógica de roteamento, transformação e mediação de dados.
Foi baseado no software "NiagaraFiles", desenvolvido pela NSA (National Security Agency), que também é a fonte de uma parte de seu nome atual - NiFi .
O que é Compute Engine?
O Google Compute Engine permite a criação de uma infraestrutura dentro do Google Cloud no formato de máquinas virtuais sob demanda, é considerado como IAS (Infraestrutura como serviço).
Passo a Passo
1. O primeiro passo a fazer é o login em sua conta do GCP, para este tutorial você vai precisar de uma conta que possua um projeto.
![](https://miro.medium.com/max/625/0*Krq7iUXz_wUIfv2D.png)
2. Vá até menu, selecione Compute Engine>Instâncias de VM.
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjcX2LW6NotEwIshcQ2DpBLTAsmJNxl5m8W5sWhgLrUbqxk7Yb0Gpya6IV7lEtb8PhTyw1UyeTX7srYHWq6C9RK74ZK1EC6pDlbGwLQXBCgnlWHxDwXLS25GAh0S2Bufm4AdHC-r870ZWSy/w446-h542/Untitled+1.png)
3.Clique em Criar:
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhLkq-4Gu9nmgY1y1fSaN2RIiR6P3hBuhCVAfioVPdh52wUD22uOr0gSjaebOiZ9he3p4y4JZbB82kzfxQp-5WSFcY5F32r-uPfDmWr_Dp7judSHKgtrG2F7nXCh0GPdzj_d_y1KTDdemZp/w619-h201/Untitled+2.png)
4.Especifique um nome para sua VM:
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj5kI7DHS1gPVE9-6xpCK_8loRRT6jmARlrQCIE7TBUtHyUy3Uhvx8VQ9FQhxbqWiyNbJ8uUwbwDnfjAniMQ7O8PWIFkXM1vWY0d4WbBjF-Lt_xuAvzJHPFBC1oCIl7DhyCoIbJter4Jt-L/w469-h521/Untitled+3.png)
5. Permita o tráfego HTTP e HTTPS:
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjovIFqKpYikGV78D3F0X0SeislAwBv8J_hOcCde8q6EJHGId5ts7yJEb_rYHUGASFCqx4MODtY_k1RzA0ED5w3Q0Yzdw6wz9zF4ZcP60M4uHzMgbdKGIcCcmtJN8Umsmw9vOBUrhvfq8Hs/w585-h152/Untitled+4.png)
6. Na opção Disco de inicialização é possível selecionar o sistema operacional da VM, clique em alterar:
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi6p8D-y20jH8yiSEjD_6KSWVq29NXv9eoCPAyvC1cmaKsx8a8JoKWdI0Dx0Ru26Ooa0VAiSY5rkwMLqinyBt8gzt8Ake-7ZBOBbscYOTIJ_nej0_B3fE4PsSGDK7e3VD0Nd88AMqQxiRpN/w445-h524/Untitled+5.png)
7. Selecione Ubuntu e clique em Selecionar:
8. Clique em Criar:
Observação: Ao clicar em linha de comando ao fim da página aparecerá o comando de criação via Cloud Shell:
gcloud beta compute --project=$PROJECT_ID instances create minha-vm-linux \
--zone=us-central1-a \
--machine-type=n1-standard-1 \
--subnet=default \
--image=ubuntu-1604-xenial-v20200923 \
--image-project=ubuntu-os-cloud \
--boot-disk-size=10GB \
--boot-disk-type=pd-standard \
--boot-disk-device-name=minha-vm-linux
9.Aguarde a criação da VM:
10. Após a criação será possível se conectar na VM, clique em SSH:
11. Será necessário instalar o java 8, execute o comando abaixo no terminal da VM:
sudo apt-get update
sudo apt-get install openjdk-8-jdk
12. Baixe os binários do Nifi:
sudo mkdir /apache-nifi -p
cd /apache-nifi
sudo wget http://ftp.unicamp.br/pub/apache/nifi/1.12.1/nifi-1.12.1-bin.tar.gz
Observação: Caso o comando wget apresente falha por não encontrar o arquivo, verifique o link atualizado no site do Nifi.
13. Descompacte o pacote e movimente a pasta para o diretório /opt/
sudo tar -zxvf nifi-1.12.1-bin.tar.gz
sudo mv nifi-1.12.1 /opt/
cd /opt/nifi-1.12.1
bin/nifi.sh install
14. Instale o nifi:
sudo bin/nifi.sh install
15. Verifique onde está instalado o java:
java -XshowSettings:properties -version 2>&1 > /dev/null | grep 'java.home'
16. Altere o arquivo nifi-env.sh para adicionar o valor do comando anterior no campo java_home, use o comando abaixo para editar o arquivo:
sudo nano /opt/nifi-1.12.1/bin/nifi-env.sh
Altere o trecho:
Adicione o caminho do java_home:
17. Inicie o serviço do nifi:
sudo /etc/init.d/nifi start
O comando terá um retorno semelhante a este:
http://<SEU_IP_EXTERNO>:8080/nifi/
19. Caso não tenha entrado, será preciso criar uma regra de firewall para a porta 8080. Vá até menu, selecione Rede VPC>Firewall.
20.Clique em Criar Firewall:
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgnjcl-An1zE3xAAGWug-UcSZQR6q5Ehny8tDQYFre8-bfh_Z0a_VlQ4xC95AoXwDg7ERXbSuvadCxf3poGh0vECwfG0WGshWFDfLWRNehWHeNYv51UlVQ49Gqki7UA5cfH0RFX2B55f1Fo/w660-h167/Untitled+14.png)
18.Preencha as informações conforme abaixo e clique em criar:
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOb5837m5m9Czk-ICdHE0-NW5GwBBeCDAvakOm9r0J5efeD3p4Dv5LAD99khzSShpz8CIFB_-hVmAGqecJSYWIlGPq5JEpwUANde8-YrcPrGIGdQ696TxroA96uycSSE9ttu0gtu7nvr6q/w551-h436/Untitled+15.png)
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiq90O5j3EiaVTJR4Jv3QvcQmcbGCpVxZQEbSztRlZv2IWBIXLXRsDO2d48XCEl4HkRLW4sP3WzEZ7JPkTdMOHiRaMPOKPO8vwQ-ZgGXgbhBbrD-y8Jnvg4BQTtmkADXg633yrizJfiYeyY/w560-h441/Untitled+16.png)
Observação: As propriedades desta tela significam:
- Nome: Nome da regra de firewall, considere apenas letras minúsculas e nenhum espaço.
- Descrição: É opcional mas importante colocar algo significativo para informação.
- Rede: São as redes VPC já criadas, selecione a rede onde deseja aplicar as regras de firewall.
- Prioridade: É a prioridade da regra aplicada à rede. Quanto menor o valor a prioridade será mais alta, o padrão é 1000.
- Direção do tráfego: Define se o trafego será de entrada saída.
- Ação se houver correspondência: Define se o trafego será permitido ou negado.
- Destinos: Será onde será aplicada a regra, é possível aplicar as regras em todas as instâncias da rede, permitir apenas em tags ou contas de serviço específicas.
- Filtro de origem: Uma fonte que será validada para permitir ou negar. Você pode filtrar por intervalos de IP, sub-redes, tags de origem e contas de serviço.
- Intervalos de IP de origem: Especifica os intervalos de IP em que será aplicado a regra.
- Segundo filtro de origem: Permite colocar outro filtro para aplicação de regra.
- Protocolo e portas: Permite especificar as portas/protocolos que serão trabalhados nessa regra, é possível ter várias portas em uma única regra.
21. Tente acessar o link novamente, deverá aparecer a interface do nifi:
Referências
- Compute Engine
https://cloud.google.com/compute
- Apache Nifi