# Instalação do Servidor Apache Kafka no windows
### Programas para instalar:
  
* Java JDK 8 :arrow_right: http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html
* Apache Kafka :arrow_right: http://kafka.apache.org/downloads.html
* Apache Zookeeper :arrow_right: http://zookeeper.apache.org/releases.html
Descompactar os arquivo do Kafka e do Zookeeper no diretorio `C:`
### Instalação do ZooKeeper
:arrow_right: Entrar na pasta `conf` e renomear o arquivo `zoo_sample.cfg`para `zoo.cfg`

.
:arrow_right: Editar o arquivo `zoo.cfg`
:arrow_right: Na linha: `dataDir=/tmp/zookeeper` mudar para `C:\Zookeeper-3.5.9\data` (caminho onde está descompactado o seu zookeeper)
:arrow_right: Criar variável de ambiente `ZOOKEEPER_HOME = C:\Zookeeper-3.5.9`

.
:arrow_right: Incluir no path o caminho: `%ZOOKEEPER_HOME%\bin`

.
:arrow_right: Porta padrão do Zookeeper: 2181
:arrow_right: Execute o ZooKeeper abrindo um terminal cmd e digite **zkserver**.

.
### Instalação do Kafka
:arrow_right: Entrar na pasta `conf`.
:arrow_right: Editar o arquivo `server.properties`
:arrow_right: Na linha: `log.dirs=/tmp/kafka-logs` mudar para `log.dirs=C:/Kafka_2.12/kafka-logs` :exclamation: Atenção ao lado das barras :exclamation:
:arrow_right: Verificar se o zookeeper está iniciado. Execute o ZooKeeper abrindo um terminal cmd e digite **zkserver**.
:arrow_right: Criar as pastas: `kafka-logs` e `zookeeper`
:arrow_right: Abrir um terminal CMD dentro do diretório do kafka

.
:arrow_right: Digitar: `.\bin\windows\kafka-server-start.bat .\config\server.properties`, Clicar ENTER.

.
### Criar um teste com o Kafka
:arrow_right: Na pasta: `C:\kafka-2.8.0\bin\windows`, abrir um terminal CMD.
:arrow_right: Digitar o comando: `kafka-topics.bat --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test`

.
### Criação de um produtor para servidor de teste
:arrow_right: Dentro da pasta: `C:\kafka_2.11-0.9.0.0\bin\windows`, abrir um terminal CMD.
:arrow_right: Para iniciar um produtor, Digitar o comando: `kafka-console-producer.bat --broker-list localhost:9092 --topic test`

.
### Criação de um consumidor para servidor de teste
:arrow_right: Dentro da pasta: `C:\kafka_2.11-0.9.0.0\bin\windows`, abrir um ==NOVO== terminal CMD.
:arrow_right: Digitar o comando: `kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test`

.
:arrow_right: O prompt do terminal ficará preso aguardando receber uma mensagem.
:arrow_right: Digitar uma mensagem no terminal do produtor.

.
:arrow_right: Será recebido no terminal do consumidor.

.
:point_right: Enviado.

.
:point_right: Recebido.

### Comandos úteis
* **Tópicos da lista:** `kafka-topics.bat --list --zookeeper localhost:2181`
* **Descrição do tópico:** `kafka-topics.bat --describe --zookeeper localhost:2181 --topic [Topic Name]`
* **Ler as mensagens desde o início:** `kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic [Topic Name] --from-beginn`
* **Excluir Tópico:** `kafka-run-class.bat kafka.admin.TopicCommand --delete --topic [topic_to_delete] --zookeeper localhost:2181`
###### tags: `kafka` `java` `instalação`