https://github.com/renatoelho/instalacao-configuracao-apache-nifi
O Apache NiFi é um projeto de código aberto da Apache Software Foundation que fornece uma plataforma para automatização de fluxo de dados, coleta, processamento e distribuição de dados em tempo real.
https://github.com/renatoelho/instalacao-configuracao-apache-nifi
apache-nifi flows nifi pipelines
Last synced: 3 months ago
JSON representation
O Apache NiFi é um projeto de código aberto da Apache Software Foundation que fornece uma plataforma para automatização de fluxo de dados, coleta, processamento e distribuição de dados em tempo real.
- Host: GitHub
- URL: https://github.com/renatoelho/instalacao-configuracao-apache-nifi
- Owner: Renatoelho
- License: mit
- Created: 2022-08-11T00:03:14.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2023-10-24T08:03:22.000Z (almost 2 years ago)
- Last Synced: 2025-01-25T15:09:39.406Z (9 months ago)
- Topics: apache-nifi, flows, nifi, pipelines
- Homepage:
- Size: 7.81 KB
- Stars: 1
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Instalação e Configuração Apache Nifi
### Requisitos
- Ubuntu 20.04
- Apache Nifi 1.22.0 ou +
- Java OpenJDK 1.8.0_382
- Nano 4.8 ou +
- Wget 1.20.3 ou +
- Zip/Unzip 3.0 ou +### Criando usuário para instalação e configuração (no sistema operacional)
- Criando usuário ***nifi***. (crie com o root)
```bash
su
``````bash
adduser nifi
```- Adicionando o novo usuário ao grupo de superusuários (sudo).
```bash
usermod -aG sudo nifi
```- Acessando com o novo usuário.
```bash
su - nifi
```### Atualização do ambiente
```bash
sudo apt update && sudo apt upgrade -y
```### Instalação e configuração do JAVA
```bash
sudo apt install openjdk-8-jdk -y
```- Verifique em qual diretório o JAVA está instalado:
```bash
update-alternatives --config java
```>***Observação:*** Use o local ***/usr/lib/jvm/java-8-openjdk-amd64*** para variável de ambiente do Java.
- Adicione a variável ***JAVA_HOME*** no arquivo ***.bashrc***:
```bash
nano ~/.bashrc
``````bash
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
```Salve e saía do arquivo.
- Atualize o contexto do ambiente executando o seguinte comando:
```bash
source .bashrc
```- Verifique se a variável ***JAVA_HOME*** e o ***JAVA*** foram configurados/instalados com sucesso:
```bash
env | grep -Ei java_home
``````bash
java -version
```### Baixando o Apache Nifi na versão .zip
```bash
sudo wget https://archive.apache.org/dist/nifi/1.22.0/nifi-1.22.0-bin.zip
```### Descompactando o arquivo zipado
```bash
unzip nifi-1.22.0-bin.zip
```### Movendo e já renomeando o diretório descompactado para o /opt/
```bash
sudo mv nifi-1.22.0 /opt/nifi
```### Mudando a propriedade do diretório da instalação para o usuário nifi
```bash
sudo chown -R nifi:nifi /opt/nifi
```### Adicione a variável ***JAVA_HOME*** as variáveis do Apache Nifi
Adicione ao arquivo ```nifi-env.sh``` a variável ***JAVA_HOME***.
```bash
nano /opt/nifi/bin/nifi-env.sh
``````text
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
```### Executando a instalação
```bash
sudo /opt/nifi/bin/nifi.sh install
```### Configurando o 1º acesso ao Nifi
Acesse o arquivo ***/opt/nifi/conf/nifi.properties*** e altere os seguintes parâmetros conforme a seguir:
```bash
nano /opt/nifi/conf/nifi.properties
``````text
...
nifi.web.https.host=0.0.0.0
nifi.web.https.port=8443
...
```### Ativando o serviço do Nifi
Opções de serviços ( ***start*** | ***stop*** | ***restart*** | ***status*** )
```bash
cd ~
``````bash
sudo service nifi start
``````bash
service nifi status
```Acesse via: [https://localhost:8443/nifi/](https://localhost:8443/nifi/)
### Primeiro acesso ao Apache Nifi
Acesse o navegador e digite a seguinte URL ou simplesmente clique em: [https://localhost:8443/nifi/](https://localhost:8443/nifi/).
Se você for direcionado para tela de login, as credenciais de acesso estão no arquivo de log do nifi.
```bash
cat /opt/nifi/logs/nifi-app.log | grep -Ei generated
``````text
...
Generated Username [***********************************************]
Generated Password [***********************************************]
...
```Em posse do usuário e senha é só acessar o apache Nifi.
***Pronto! Apache Nifi em funcionamento...***
### Configurando um novo usuário e senha para o Apache Nifi
- Crie o arquivo ***create-user.sh*** em ***/opt/nifi/bin*** e adicione o seguinte conteúdo:
```text
#!/bin/bashPASSWD=$(cat /dev/urandom | tr -dc 'A-Za-z0-9' | head -c 32)
./nifi.sh set-single-user-credentials $USER $PASSWD
echo "User: $USER\nPassword: $PASSWD" > user-nifi.txt
sudo service nifi restart
sleep 20
echo "Apache Nifi username and password created successfully!!!"
``````bash
cd /opt/nifi/bin
``````bash
nano create-user.sh
```- Dê permissão de execução para o arquivo
```bash
chmod +x create_user.sh
```- Para criar usuário e senha execute os seguintes comandos
```bash
sudo sh ./create-user.sh
```- Se tudo dê certo, será criado o arquivo ***user-nifi.txt*** com as novas credenciais de acesso ao Nifi.
```bash
cat user-nifi.txt
``````text
...
User:
Password: ******************************************************
...
```### Testando o novo usuário Nifi
Acesse o navegador e digite a seguinte URL ou simplesmente clique em: [https://localhost:8443/](https://localhost:8443/) (se estiver logado com o outro usuário, é só clicar em ```LOGOUT``` no canto superior direito.) e em seguida digite o novo usuário e senha, agora é só utilizar o Apache Nifi.
### Referência
Docs Nifi, **Apache Nifi**. Disponível em: . Acesso em: 17 de out. de 2023.
Single User Access and HTTPS in Apache NiFi, **ExceptionFactory**. Disponível em: . Acesso em: 17 de out. de 2023