찾다
백엔드 개발GolangKafka 및 Zookeeper 설치 방법을 소개합니다.

이 글은 go 언어튜토리얼 칼럼에서 Kafka와 Zookeeper 설치 방법을 소개하기 위해 작성한 글입니다. 도움이 필요한 친구들에게 도움이 되길 바랍니다!

kafka 및 Zookeeper 설치

Write compose

  zookeeper:
    image: wurstmeister/zookeeper
    ports:
      - "2181:2181"
  kafka:
    image: wurstmeister/kafka
    volumes:
        - ./data/etc/localtime:/etc/localtime
        - ./data/var/run/docker.sock:/var/run/docker.sock
    ports:
      - "9092:9092"
    environment:
      KAFKA_ADVERTISED_HOST_NAME: 192.168.110.147   ## 宿主机IP
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
      KAFKA_ADVERTISED_PORT: 9092
  kafka-manager:
    image: sheepkiller/kafka-manager
    environment:
        ZK_HOSTS:  192.168.110.147                  ## zookeeper地址
    ports:
      - "9091:9000"                                 # 宿主机port:container_port

설치 시작

luwei@luweideMacBook-Pro-2 lnmp % docker-compose up -d zookeeper
Pulling zookeeper (wurstmeister/zookeeper:)...
latest: Pulling from wurstmeister/zookeeper
a3ed95caeb02: Pull complete
ef38b711a50f: Pull complete
e057c74597c7: Pull complete
666c214f6385: Pull complete
c3d6a96f1ffc: Pull complete
3fe26a83e0ca: Pull complete
3d3a7dd3a3b1: Pull complete
f8cc938abe5f: Pull complete
9978b75f7a58: Pull complete
4d4dbcc8f8cc: Pull complete
8b130a9baa49: Pull complete
6b9611650a73: Pull complete
5df5aac51927: Pull complete
76eea4448d9b: Pull complete
8b66990876c6: Pull complete
f0dd38204b6f: Pull complete
Digest: sha256:7a7fd44a72104bfbd24a77844bad5fabc86485b036f988ea927d1780782a6680
Status: Downloaded newer image for wurstmeister/zookeeper:latest
Creating lnmp_zookeeper_1 ... done
luwei@luweideMacBook-Pro-2 lnmp % docker-compose up -d kafka
lnmp_kafka_1 is up-to-date
luwei@luweideMacBook-Pro-2 lnmp % docker-compose up -d kafka        
Starting lnmp_kafka_1 ... done

설치 결과 보기

luwei@luweideMacBook-Pro-2 ~ % docker ps
CONTAINER ID   IMAGE                                                  COMMAND                  CREATED          STATUS                            PORTS                                                NAMES
28a2a3b33856   sheepkiller/kafka-manager                              "./start-kafka-manag…"   3 minutes ago    Up 3 minutes                      0.0.0.0:9091->9000/tcp                               lnmp_kafka-manager_1
d6ae300116f3   wurstmeister/zookeeper                                 "/bin/sh -c '/usr/sb…"   9 minutes ago    Up 8 minutes                      22/tcp, 2888/tcp, 3888/tcp, 0.0.0.0:2181->2181/tcp   lnmp_zookeeper_1
c9de041d5ace   wurstmeister/kafka                                     "start-kafka.sh"         15 minutes ago   Up 4 seconds                      0.0.0.0:9092->9092/tcp                               lnmp_kafka_1
92b5e1563062   mysql:5.7.16                                           "docker-entrypoint.s…"   2 weeks ago      Up 6 hours                        0.0.0.0:3307->3306/tcp                               my_mysql57
29f0b85f1284   registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g   "/bin/sh -c '/home/o…"   3 weeks ago      Up 6 hours                        0.0.0.0:1521->1521/tcp                               oracle
89c169b8bd14   nginx:alpine                                           "/docker-entrypoint.…"   4 weeks ago      Up 6 hours (healthy)              0.0.0.0:81->80/tcp, 0.0.0.0:444->443/tcp             nginx
e0e4fa4bf177   lnmp_php72                                             "entrypoint php-fpm"     4 weeks ago      Up 6 hours (healthy)              9000-9001/tcp                                        php72
a1ddf67627cd   lnmp_php56                                             "entrypoint php-fpm"     4 weeks ago      Up 6 hours (healthy)              9000/tcp                                             php56
324aa6c8b071   lnmp_php71                                             "entrypoint php-fpm"     4 weeks ago      Up 6 hours (healthy)              9000/tcp                                             php71
4fd5d2ce7612   mongo:4.4.0                                            "docker-entrypoint.s…"   4 weeks ago      Up 6 hours                        0.0.0.0:27018->27017/tcp                             mongo4.4
f212f81e0546   redis:4-alpine                                         "docker-entrypoint.s…"   4 weeks ago      Up 6 hours (healthy)              0.0.0.0:6379->6379/tcp                               redis
e42962aa16c8   mysql:5.6                                              "docker-entrypoint.s…"   4 weeks ago      Restarting (137) 50 seconds ago                                                        mysql
luwei@luweideMacBook-Pro-2 ~ %

kafka 컨테이너 연결

luwei@luweideMacBook-Pro-2 ~ % docker exec -it lnmp_kafka_1 /bin/bash
bash-5.1#

주제 만들기

bash-5.1# find / -name kafka-topics.sh
/opt/kafka_2.13-2.7.1/bin/kafka-topics.sh
bash-5.1# /opt/kafka_2.13-2.7.1/bin/kafka-topics.sh --create --zookeeper 192.168.110.147:2181 --replication-factor 1  --partitions 1 --topic test
Created topic test.
bash-5.1#

생성된 주제 보기

bash-5.1# /opt/kafka_2.13-2.7.1/bin/kafka-topics.sh --list --zookeeper 192.168.110.147:2181
test
bash-5.1#

시작 생산자

bash-5.1# find / -name kafka-console-producer.sh
/opt/kafka_2.13-2.7.1/bin/kafka-console-producer.sh
bash-5.1# /opt/kafka_2.13-2.7.1/bin/kafka-console-producer.sh --broker-list 192.168.110.147:9092 --topic mykafka
>hello donglei
[2021-11-22 08:05:19,506] WARN [Producer clientId=console-producer] Error while fetching metadata with correlation id 3 : {mykafka=LEADER_NOT_AVAILABLE} (org.apache.kafka.clients.NetworkClient)
>

소비자 시작

bash-5.1# /opt/kafka_2.13-2.7.1/bin/kafka-console-consumer.sh --bootstrap-server 192.168.110.147:9092 --topic mykafka --from-beginning
hello donglei

위 내용은 Kafka 및 Zookeeper 설치 방법을 소개합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
이 기사는 learnku에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제
springboot+kafka中@KafkaListener动态指定多个topic怎么实现springboot+kafka中@KafkaListener动态指定多个topic怎么实现May 20, 2023 pm 08:58 PM

说明本项目为springboot+kafak的整合项目,故其用了springboot中对kafak的消费注解@KafkaListener首先,application.properties中配置用逗号隔开的多个topic。方法:利用Spring的SpEl表达式,将topics配置为:@KafkaListener(topics=“#{’${topics}’.split(’,’)}”)运行程序,console打印的效果如下

如何使用PHP和Kafka实现实时股票分析如何使用PHP和Kafka实现实时股票分析Jun 28, 2023 am 10:04 AM

随着互联网和科技的发展,数字化投资已成为人们越来越关注的话题。很多投资者不断探索和研究投资策略,希望能够获得更高的投资回报率。股票交易中,实时的股票分析对决策非常重要,其中使用Kafka实时消息队列和PHP技术实现更是一种高效且实用的手段。一、Kafka介绍Kafka是由LinkedIn公司开发的一个高吞吐量的分布式发布、订阅消息系统。Kafka的主要特点是

SpringBoot怎么集成Kafka配置工具类SpringBoot怎么集成Kafka配置工具类May 12, 2023 pm 09:58 PM

spring-kafka是基于java版的kafkaclient与spring的集成,提供了KafkaTemplate,封装了各种方法,方便操作,它封装了apache的kafka-client,不需要再导入client依赖org.springframework.kafkaspring-kafkaYML配置kafka:#bootstrap-servers:server1:9092,server2:9093#kafka开发地址,#生产者配置producer:#Kafka提供的序列化和反序列化类key

kafka可视化工具对比分析:如何选择最合适的工具?kafka可视化工具对比分析:如何选择最合适的工具?Jan 05, 2024 pm 12:15 PM

如何选择合适的Kafka可视化工具?五款工具对比分析引言:Kafka是一种高性能、高吞吐量的分布式消息队列系统,被广泛应用于大数据领域。随着Kafka的流行,越来越多的企业和开发者需要一个可视化工具来方便地监控和管理Kafka集群。本文将介绍五款常用的Kafka可视化工具,并对比它们的特点和功能,帮助读者选择适合自己需求的工具。一、KafkaManager

go-zero与Kafka+Avro的实践:构建高性能的交互式数据处理系统go-zero与Kafka+Avro的实践:构建高性能的交互式数据处理系统Jun 23, 2023 am 09:04 AM

近年来,随着大数据的兴起和活跃的开源社区,越来越多的企业开始寻找高性能的交互式数据处理系统来满足日益增长的数据需求。在这场技术升级的浪潮中,go-zero和Kafka+Avro被越来越多的企业所关注和采用。go-zero是一款基于Golang语言开发的微服务框架,具有高性能、易用、易扩展、易维护等特点,旨在帮助企业快速构建高效的微服务应用系统。它的快速成长得

springboot项目配置多个kafka的示例代码springboot项目配置多个kafka的示例代码May 14, 2023 pm 12:28 PM

1.spring-kafkaorg.springframework.kafkaspring-kafka1.3.5.RELEASE2.配置文件相关信息kafka.bootstrap-servers=localhost:9092kafka.consumer.group.id=20230321#可以并发消费的线程数(通常与partition数量一致)kafka.consumer.concurrency=10kafka.consumer.enable.auto.commit=falsekafka.boo

从面试角度一文学完 Kafka从面试角度一文学完 KafkaAug 24, 2023 pm 03:22 PM

Kafka 是一个优秀的分布式消息中间件,许多系统中都会使用到 Kafka 来做消息通信。对分布式消息系统的了解和使用几乎成为一个后台开发人员必备的技能。

Swoole与Kafka的整合:构建高性能MQ系统Swoole与Kafka的整合:构建高性能MQ系统Jun 13, 2023 pm 08:32 PM

随着互联网和移动设备的不断发展,消息队列成为了现代互联网架构中不可或缺的一部分。消息队列(MQ)可以在不同的应用程序之间传递消息,实现分布式系统中的解耦和异步处理,从而提高整个系统的可伸缩性和性能。在消息队列中,Kafka是一个非常流行和强大的开源消息中间件,而Swoole是一个基于PHP的异步和协程网络编程框架,可以极大地提高PHP应用程序的性能和并发能力

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

안전한 시험 브라우저

안전한 시험 브라우저

안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

SublimeText3 Linux 새 버전

SublimeText3 Linux 새 버전

SublimeText3 Linux 최신 버전

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)