Movatterモバイル変換


[0]ホーム

URL:


Skip to content
DEV Community
Log in Create account

DEV Community

Sagar Lakshmipathy
Sagar Lakshmipathy

Posted on

     

Apache Kafka on Amazon Linux EC2

In this article, we will walk through the steps to set up Apache Kafka on an Amazon EC2 instance (Amazon Linux distribution). We'll start with updating the system, installing Java, and then proceed with the installation and configuration of Kafka. By the end, you'll have a running Kafka instance, ready for producing and consuming messages.

Prerequisites

An Amazon EC2 instance (running Amazon Linux 2 or a similar distribution)
Basic knowledge of using the terminal

Steps

Step 1: Update the System

First, ensure your system is up to date by running:

sudo yum update -y
Enter fullscreen modeExit fullscreen mode

Step 2: Install Java

Apache Kafka requires Java to run. Install Java 11 using the following command:

sudo yum install java-11-amazon-corretto-devel -y
Enter fullscreen modeExit fullscreen mode

Step 3: Download and Extract Kafka

Next, download Kafka from the official Apache archive and extract it:

wget https://archive.apache.org/dist/kafka/3.3.1/kafka_2.12-3.3.1.tgztar -xzf kafka_2.12-3.3.1.tgzcd kafka_2.12-3.3.1
Enter fullscreen modeExit fullscreen mode

Step 4: Start Zookeeper

Kafka requires Zookeeper to manage its cluster. Start Zookeeper with:

nohup bin/zookeeper-server-start.sh config/zookeeper.properties > zookeeper.log 2>&1 &
Enter fullscreen modeExit fullscreen mode

Step 5: Configure Kafka

Edit the Kafka configuration file to set the advertised listeners. Replaceec2-xx-xxx-xx-xxx.us-west-2.compute.amazonaws.com with your EC2 instance's public DNS:

vi config/server.properties
Enter fullscreen modeExit fullscreen mode

Add the following line:

advertised.listeners=PLAINTEXT://ec2-xx-xxx-xx-xxx.us-west-2.compute.amazonaws.com:9092
Enter fullscreen modeExit fullscreen mode

Step 6: Start Kafka Server

Now, start the Kafka server:

nohup bin/kafka-server-start.sh config/server.properties > kafka-server.log 2>&1 &
Enter fullscreen modeExit fullscreen mode

Step 7: Create a Topic

Create a new Kafka topic named test:

bin/kafka-topics.sh --create --topic test --bootstrap-server ec2-xx-xxx-xx-xxx.us-west-2.compute.amazonaws.com:9092 --partitions 1 --replication-factor 1
Enter fullscreen modeExit fullscreen mode

Step 8: Produce Messages

Start a Kafka producer to send messages to the test topic:

bin/kafka-console-producer.sh --topic test --bootstrap-server ec2-xx-xxx-xx-xxx.us-west-2.compute.amazonaws.com:9092
Enter fullscreen modeExit fullscreen mode

You can now type messages into the console, and they will be sent to the Kafka topic.

Step 9: Consume Messages

Start a Kafka consumer to read messages from the test topic:

bin/kafka-console-consumer.sh --topic test --bootstrap-server ec2-xx-xxx-xx-xxx.us-west-2.compute.amazonaws.com:9092 --from-beginning
Enter fullscreen modeExit fullscreen mode

You should see the messages you produced earlier displayed in the console.

Conclusion

By following these steps, you've successfully set up Apache Kafka on an Amazon EC2 instance. You can now produce and consume messages, enabling you to build real-time data streaming applications. This setup forms the foundation for more advanced Kafka configurations and use cases.

Feel free to explore Kafka's extensive features and tailor the configuration to suit your specific requirements. Happy streaming!

Top comments(0)

Subscribe
pic
Create template

Templates let you quickly answer FAQs or store snippets for re-use.

Dismiss

Are you sure you want to hide this comment? It will become hidden in your post, but will still be visible via the comment'spermalink.

For further actions, you may consider blocking this person and/orreporting abuse

Systems Engineer @ Onehouse | Views are my own
  • Joined

Trending onDEV CommunityHot

DEV Community

We're a place where coders share, stay up-to-date and grow their careers.

Log in Create account

[8]ページ先頭

©2009-2025 Movatter.jp