- vừa được xem lúc

Cài đặt Kafka trong Linux với tự động khởi động khi khởi động hệ thống

0 0 5

Người đăng: NamTC

Theo Viblo Asia

Để tạo service Kafka trên Linux, bạn cần thực hiện các bước sau:

  1. Tạo user Kafka

Để đảm bảo an toàn cho hệ thống, bạn nên cho ứng dụng Kafka chạy dưới một user riêng. Để tạo user Kafka, bạn thực hiện như sau:

sudo useradd -m -d /home/kafka -s /bin/bash kafka
  1. Tải Kafka

Tải Kafka binaries từ trang web chính thức của Kafka. Bạn có thể tải Kafka binaries theo phiên bản Java mà bạn đã cài đặt.

wget https://downloads.apache.org/kafka/3.2.1/kafka_2.13-3.2.1.tgz
  1. Giải nén Kafka binaries

Giải nén Kafka binaries bằng lệnh sau:

tar -xzf kafka_2.13-3.2.1.tgz
  1. Cấu hình Kafka Server

Cấu hình Kafka Server bằng cách chỉnh sửa file server.properties trong thư mục /opt/kafka/config.

sudo vim /opt/kafka/config/server.properties

Trong file server.properties, bạn cần chỉnh sửa các thông tin sau:

  • broker.id: ID của broker Kafka.
  • listeners: Cấu hình các listener của broker Kafka.
  • log.dirs: Thư mục lưu trữ nhật ký của broker Kafka.
  • zookeeper.connect: Địa chỉ của ZooKeeper.

Ví dụ, cấu hình Kafka Server như sau:

broker.id=1
listeners=PLAINTEXT://localhost:9092
log.dirs=/opt/kafka/logs
zookeeper.connect=localhost:2181
  1. Tạo Systemd Unit file

Tạo Systemd Unit file để tự động khởi động Kafka Server khi khởi động hệ thống.

sudo vim /etc/systemd/system/kafka.service

Trong file kafka.service, bạn dán nội dung sau:

[Unit]
Description=Apache Kafka
After=network.target [Service]
Type=simple
User=kafka
Group=kafka
ExecStart=/opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties
ExecStop=/opt/kafka/bin/kafka-server-stop.sh
Restart=on-failure [Install]
WantedBy=multi-user.target
  1. Khởi động Kafka Server

Khởi động Kafka Server bằng lệnh sau:

sudo systemctl start kafka
  1. Kiểm tra cài đặt

Kiểm tra cài đặt Kafka Server bằng lệnh sau:

sudo systemctl status kafka

Nếu Kafka Server được cài đặt thành công, bạn sẽ thấy kết quả như sau:

● kafka.service - Apache Kafka Loaded: loaded (/etc/systemd/system/kafka.service; enabled; vendor preset: disabled) Active: active (running) since Wed 2023-07-27 10:29:43 UTC; 1min 28s ago Main PID: 29999 (kafka) Tasks: 14 (limit: 1152) Memory: 414.7M CPU: 1.394s CGroup: /system.slice/kafka.service └─29999 /opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties Jul 27 10:29:43 localhost.localdomain systemd[1]: Starting Apache Kafka...
Jul 27 10:29:43 localhost.localdomain kafka[29999]: Kafka version: 3.2.1
Jul 27 10:29:43 localhost.localdomain kafka[29999]: Kafka commitId: 7d02b417a9157515
Jul 27 10:29:43 localhost.localdomain kafka[29999]: Kafka started

Như vậy, bạn đã tạo thành công service Kafka trên Linux.

Bình luận

Bài viết tương tự

- vừa được xem lúc

001: Message-driven programming với Message broker và Apache Kafka

Bài viết nằm trong series Apache Kafka từ zero đến one. . . Asynchronous programming.

0 0 152

- vừa được xem lúc

002: Apache Kafka topic, partition, offset và broker

Bài viết nằm trong series Apache Kafka từ zero đến one. Nói qua về lịch sử, Kafka được phát triển bởi LinkedIn (các anh em dev chắc chẳng xa lạ gì) và viết bằng ngôn ngữ JVM, cụ thể là Java và Scala.

0 0 141

- vừa được xem lúc

003: Gửi và nhận message trong Apache Kafka

Bài viết nằm trong series Apache Kafka từ zero đến one. . . Nếu muốn các message được lưu trên cùng một partition để đảm bảo thứ tự thì làm cách nào.

0 0 204

- vừa được xem lúc

004: Apache Kafka consumer offset, Broker discovery và Zookeeper

Bài viết nằm trong series Apache Kafka từ zero đến one. 1) Consumer offset.

0 0 118

- vừa được xem lúc

Change account

Tài khoản cũ của mình có chút vấn đề nên mình chuyển sang dùng tài khoản mới để viết bài. Xin cảm ơn mọi người.

0 0 17

- vừa được xem lúc

[MSDP] - Event Carried State Transfer

Trong hướng dẫn này, chúng ta cùng tìm hiểu về Microservice Desin Pattern - Event Carried State Transfer (chuyển trạng thái theo sự kiện) để đạt được sự nhất quán về dữ liệu giữa các microservice. Tro

0 0 24