## Steg 1:Förutsättningar
Innan du installerar Apache Kafka, se till att du har följande förutsättningar:
- Ubuntu 18.04-server med en icke-rootanvändare med "sudo"-privilegier.
- Java Development Kit (JDK) 8 eller senare installerat.
- Zookeeper installerad och igång. [Här](/blog/how-to-install-zookeeper-on-ubuntu-1804) är hur man installerar ZooKeeper på Ubuntu 18.04.
Steg 2:Ladda ner Apache Kafka
1. Besök den officiella sidan för [Apache Kafka-nedladdning](https://kafka.apache.org/download).
2. Under avsnittet "Releases", klicka på den senaste stabila versionen (t.ex. "2.8.0").
3. På releasesidan klickar du på länken för att ladda ner tarball-filen (t.ex. `kafka_2.12-2.8.0.tgz`).
4. Använd `wget` för att ladda ner tarball-filen:
```
wget https://www-us.apache.org/dist/kafka/2.8.0/kafka_2.12-2.8.0.tgz
```
Steg 3:Extrahera Tarball
När nedladdningen är klar, extrahera tarball-filen till en katalog som du väljer. I det här exemplet extraherar vi det till `/opt`:
```
sudo tar -xzvf kafka_2.12-2.8.0.tgz -C /opt
```
Detta kommer att skapa en katalog som heter `/opt/kafka_2.12-2.8.0`.
Steg 4:Ställ in miljövariabler
För att göra det lättare att arbeta med Kafka kan du ställa in några miljövariabler. Lägg till följande rader i din `/etc/profile`-fil:
```
exportera KAFKA_HOME=/opt/kafka_2.12-2.8.0
export PATH=$KAFKA_HOME/bin:$PATH
```
Spara filen och stäng den. Kör sedan följande kommando för att uppdatera miljövariablerna:
```
källa /etc/profile
```
Steg 5:Skapa Kafka-användare
För att köra Kafka rekommenderas det att skapa en dedikerad användare. Detta hjälper till att isolera Kafka-processer från andra systemprocesser och ökar säkerheten.
```
sudo adduser --system --grupp kafka
```
Steg 6:Konfigurera Zookeeper
Kafka förlitar sig på Zookeeper för samordning. Redigera filen `config/zookeeper.properties` i Kafkas installationskatalog:
```
sudo vi /opt/kafka_2.12-2.8.0/config/zookeeper.properties
```
Se till att "connect"-parametern pekar på Zookeeper-ensemblen:
```
connect=localhost:2181
```
Spara filen och stäng den.
Steg 7:Konfigurera Kafka
Låt oss sedan konfigurera Kafka genom att redigera filen `config/server.properties`:
```
sudo vi /opt/kafka_2.12-2.8.0/config/server.properties
```
Här är de viktigaste inställningarna att ändra:
- Ersätt "broker.id" med ett unikt ID för denna mäklare (t.ex. "0" om det är den första mäklaren i ditt kluster).
- Ställ in `zookeeper.connect` för att peka på Zookeeper-ensemblen (t.ex. `localhost:2181`).
- Överväg att justera parametern `log.dirs` för att specificera katalogen där Kafka kommer att lagra sina loggar.
- Granska andra parametrar som `num.partitions` och `default.replication.factor` baserat på dina krav.
Spara filen och stäng den.
Steg 8:Skapa ämnen
Ämnen är de grundläggande enheterna för datalagring i Kafka. För att skapa ett ämne, kör följande kommando och ersätt "mitt ämne" med ditt önskade ämnesnamn:
```
/opt/kafka_2.12-2.8.0/bin/kafka-topics.sh --create --topic my-topic --partitioner 1 --replikeringsfaktor 1 --zookeeper localhost:2181
```
Steg 9:Starta Kafka
För att starta Kafka-mäklaren, kör följande kommando:
```
/opt/kafka_2.12-2.8.0/bin/kafka-server-start.sh /opt/kafka_2.12-2.8.0/config/server.properties
```
Steg 10:Testa Kafka
För att testa om Kafka fungerar korrekt kan du använda verktygen `kafka-console-producer` och `kafka-console-consumer`.
Skapa ett meddelande
För att skapa ett meddelande, kör följande kommando och ersätt "mitt ämne" med ditt ämnesnamn:
```
/opt/kafka_2.12-2.8.0/bin/kafka-console-producer.sh --topic my-topic --broker-list localhost:9092
```
Skriv ett meddelande i konsolen och tryck på "Enter".
Konsumera ett meddelande
För att konsumera meddelandet, kör följande kommando och ersätt "mitt ämne" med ditt ämnesnamn:
```
/opt/kafka_2.12-2.8.0/bin/kafka-console-consumer.sh --topic my-topic --bootstrap-server localhost:9092 --from-beginning
```
I konsolen bör du se meddelandet du producerade tidigare.
Steg 11:Konfigurera brandvägg (valfritt)
Om din Kafka-server inte är tillgänglig externt kan du behöva konfigurera din brandvägg för att tillåta inkommande anslutningar på port 9092 (eller någon anpassad port som du angav under konfigurationen).
Slutsats
Du har framgångsrikt installerat och konfigurerat Apache Kafka på din Ubuntu 18.04-server. Nu kan du utforska dess möjligheter och börja bygga realtidsapplikationer.