search
HomeSystem TutorialLINUXDetailed steps to install Kafka on CentOS7

Introduction

Kafka is a high-throughput distributed publish-subscribe messaging system that can replace traditional message queues for decoupling data processing, caching unprocessed messages, etc. It also has higher throughput and supports partitioning, multiple copies, Redundant, so it is widely used in large-scale message data processing applications

Kafka supports Java and multiple other language clients, and can be used in conjunction with Hadoop, Storm, Spark and other big data tools.

This tutorial mainly introduces the installation and use of Kafka on Centos 7, including functional verification and simple configuration of the cluster.

Install JDK

Kafka uses Zookeeper to save relevant configuration information. Kafka and Zookeeper rely on the Java operating environment. Download the JDK installation package from the Oracle website, unzip and install:

$tar zxvf jdk-8u65-linux-x64.tar.gz
$mv jdk1.8.0_65 java

Set Java environment variables:

JAVA_HOME=/opt/java
PATH=$PATH:$JAVA_HOME/bin
export JAVA_HOME PATH

You can also choose yum install to install and set the environment variables accordingly.

Install Kafka

Download the Kafka installation package from the official website, unzip and install: Official website address: https://www.php.cn/link/dcf531edc9b229acfe0f4b87e1e278dd

tar zxvf kafka_2.11-0.8.2.2.tgz
mv kafka_2.11-0.8.2.2 kafka
cd kafka

Functional Verification

1. Start Zookeeper Use the script in the installation package to start a single-node Zookeeper instance:

bin/zookeeper-server-start.sh -daemon config/zookeeper.properties

2. Start the Kafka service. Use kafka-server-start.sh to start the kafka service:

bin/kafka-server-start.sh config/server.properties

3. Create topic Use kafka-topics.sh to create a topic test with a single partition and a single copy:

bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

View topic:

bin/kafka-topics.sh --list --zookeeper localhost:2181
test

4. Generate messages Use kafka-console-producer.sh to send messages:

bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test 
Hello world!

5. Consume messages Use kafka-console-consumer.sh to receive messages and print them on the terminal:

bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning

The messages generated by the producer and the messages consumed by the consumer are synchronized.

Detailed steps to install Kafka on CentOS7

The above is the detailed content of Detailed steps to install Kafka on CentOS7. For more information, please follow other related articles on the PHP Chinese website!

Statement
This article is reproduced at:脚本之家. If there is any infringement, please contact admin@php.cn delete
How to Automatically Restart a Failed Service in LinuxHow to Automatically Restart a Failed Service in LinuxApr 28, 2025 am 09:39 AM

This guide details how to configure automatic service restarts in Linux using systemd, enhancing system reliability and minimizing downtime. System administrators often rely on this functionality to ensure critical services, such as web servers (Apa

10 Hidden Linux Commands Every Sysadmin Should Know10 Hidden Linux Commands Every Sysadmin Should KnowApr 28, 2025 am 09:35 AM

As Linux users, we often rely on commonly used commands ls, grep, awk, sed and find to complete the work. But Linux has a large number of lesser-known commands that can save time, automate tasks and simplify workflows. This article will explore some underrated but powerful Linux commands that deserve more attention. rename – efficient batch rename files The rename command is the savior when you need to rename multiple files at once. Without using loops containing mv, rename allows you to easily apply complex renaming patterns. Change all .txt files to .log. rename 's/\.txt$/\.log/' *

How to List All Running Services Under Systemd in LinuxHow to List All Running Services Under Systemd in LinuxApr 28, 2025 am 09:29 AM

Linux systems provide various system services (such as process management, login, syslog, cron, etc.) and network services (such as remote login, email, printer, web hosting, data storage, file transfer, domain name resolution (using DNS), dynamic IP address allocation (using DHCP), and so on). Technically, a service is a process or group of process (usually known as a daemon) that runs continuously in the background, waiting for incoming requests (especially from the client). Linux supports different ways to manage services (start, stop, restart, enable automatic startup at system startup, etc.), usually through a process or service manager. Almost all modern Linux distributions now use the same

CrossOver 25: Run Windows Software and Games on LinuxCrossOver 25: Run Windows Software and Games on LinuxApr 28, 2025 am 09:27 AM

Run Windows Software and Games on Linux with CrossOver 25 Running Windows applications and games on Linux is now easier than ever, thanks to CrossOver 25 from CodeWeavers. This commercial software solution lets Linux users run a wide variety of Wind

pCloud - The Most Secure Cloud Storage [50% Off Offer]pCloud - The Most Secure Cloud Storage [50% Off Offer]Apr 28, 2025 am 09:26 AM

Secure Your Data with pCloud: A Comprehensive Guide to Linux Installation pCloud, a leading secure cloud storage service, provides a robust platform for managing your files and data. This guide details the installation process on Linux systems. About

MangoHud - Monitor FPS, CPU & GPU Usage in Linux GamesMangoHud - Monitor FPS, CPU & GPU Usage in Linux GamesApr 28, 2025 am 09:25 AM

MangoHud: A powerful tool for real-time monitoring of Linux gaming performance MangoHud is a powerful and lightweight tool designed for gamers, developers, and anyone who wants to monitor system performance in real time. It acts as an overlay for Vulkan and OpenGL applications, displaying important information such as FPS, CPU and GPU usage, temperature, etc. This article will explore the functions, working principles and usage of MangoHud, and provide step-by-step instructions for installing and configuring MangoHud on Linux systems. What is MangoHud? MangoHud is an open source project available on GitHub and aims to provide a simple and customizable way to monitor

5 Must-Know Linux Command Line Archive Tools – Part 15 Must-Know Linux Command Line Archive Tools – Part 1Apr 28, 2025 am 09:23 AM

Managing archived files is a common task in Linux. This article, the first of a two-part series, explores five powerful command-line archive tools, detailing their features and usage with examples. 1. The tar Command: A Versatile Archiving Utility t

Top 7 Tools to Compare Files in Linux (with Examples)Top 7 Tools to Compare Files in Linux (with Examples)Apr 28, 2025 am 09:21 AM

This guide explores various methods for comparing text files in Linux, a crucial task for system administrators and developers. We'll cover command-line tools and visual diff tools, highlighting their strengths and appropriate use cases. Let's assum

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

PhpStorm Mac version

PhpStorm Mac version

The latest (2018.2.1) professional PHP integrated development tool

SecLists

SecLists

SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

SublimeText3 English version

SublimeText3 English version

Recommended: Win version, supports code prompts!