docker 安装kafka

kafka 依赖 zookeeper

[root@k8s-master ~]# docker search zookeeper
NAME                               DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
zookeeper                          Apache ZooKeeper is an open-source server wh…   1208      [OK]       
jplock/zookeeper                   Builds a docker image for Zookeeper version …   165                  [OK]
wurstmeister/zookeeper                                                             163                  [OK]
mesoscloud/zookeeper               ZooKeeper                                       73                   [OK]
bitnami/zookeeper                  ZooKeeper is a centralized service for distr…   71                   [OK]
digitalwonderland/zookeeper        Latest Zookeeper - clusterable                  23                   [OK]
debezium/zookeeper                 Zookeeper image required when running the De…   16                   [OK]
tobilg/zookeeper-webui             Docker image for using `zk-web` as ZooKeeper…   15                   [OK]
31z4/zookeeper                     Dockerized Apache Zookeeper.                    9                    [OK]
thefactory/zookeeper-exhibitor     Exhibitor-managed ZooKeeper with S3 backups …   6                    [OK]
josdotso/zookeeper-exporter        ref: https://github.com/carlpett/zookeeper_e…   2                    [OK]
emccorp/zookeeper                  Zookeeper                                       2                    
perrykim/zookeeper                 k8s - zookeeper  ( forked k8s contrib )         1                    [OK]
dabealu/zookeeper-exporter         zookeeper exporter for prometheus               1                    [OK]
rancher/zookeeper                                                                  1                    
duffqiu/zookeeper-cli                                                              1                    [OK]
openshift/zookeeper-346-fedora20   ZooKeeper 3.4.6 with replication support        1                    
rancher/zookeeper-config                                                           0                    
pravega/zookeeper-operator         Kubernetes operator for Zookeeper               0                    
zookeeperfork/zookeeper                                                            0                    
humio/zookeeper-dev                zookeeper build with zulu jvm.                  0                    
ibmcom/zookeeper-ppc64le           Apache ZooKeeper is an open-source server wh…   0                    
bitnami/zookeeper-exporter                                                         0                    
phenompeople/zookeeper             Apache ZooKeeper is an open-source server wh…   0                    [OK]
midonet/zookeeper                  Dockerfile for a Zookeeper server.              0                    [OK]

安装zookeeper

[root@k8s-master ~]# docker pull zookeeper
Using default tag: latest
latest: Pulling from library/zookeeper
a2abf6c4d29d: Pull complete 
2bbde5250315: Pull complete 
202a34e7968e: Pull complete 
4e4231e30efc: Pull complete 
707593b95343: Pull complete 
b070e6dedb4b: Pull complete 
46e5380f3905: Pull complete 
8b7e330117e6: Pull complete 
Digest: sha256:2c8c5c2db6db22184e197afde13e33dad849af90004c330f20b17282bcd5afd7
Status: Downloaded newer image for zookeeper:latest
docker.io/library/zookeeper:latest

安装kafka

[root@k8s-master ~]# docker search kafka
NAME                                      DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
bitnami/kafka                             Apache Kafka is a distributed streaming plat…   413                  [OK]
kafkamanager/kafka-manager                Docker image for Kafka manager                  146                  
bitnami/kafka-exporter                                                                    5                    
ibmcom/kafka                              Docker Image for IBM Cloud Private-CE (Commu…   5                    
bitnami/kafka-trigger-controller          Source for this controller is in the kubeles…   3                    
kafkaesqueio/pulsar-all                   Apache Pulsar with all optional packages inc…   3                    
ibmcom/eventstreams-kafkaconnect          Docker image for Kafka Connect with the IBM …   2                    
rancher/kafka                                                                             2                    
ibmcom/kafka-java-console-sample          Docker image for the IBM Event Streams Java …   1                    
ibmcom/kafka-retry                        Kafka Retry provides a generic, delayed retr…   1                    
ibmcom/kafka-nodejs-console-sample        Docker image for the IBM Event Streams Node.…   1                    
ibmcom/kafka-java-liberty-sample          Docker image for the IBM Event Streams Java …   1                    
ibmcom/kafka-sender                                                                       1                    
ibmcom/kafka-python-console-sample        Docker image for the IBM Event Streams Pytho…   1                    
ibmcom/kafka-receiver                                                                     1                    
pachyderm/kafka-example-consumer                                                          0                    
pachyderm/kafka_spout                                                                     0                    
ibmcom/eventstreams-kafkamirrormaker      Docker image for Kafka Mirror Maker             0                    
ibmcom/kafka-java-console-schema-sample                                                   0                    
ibmcom/kafka-amd64                                                                        0                    
ibmcom/kafka-golang-console-sample                                                        0                    
ibmcom/kafka-ppc64le                      An open-source stream processing platform       0                    
kafkasocks/mm-prod                                                                        0                    
kafkaesqueio/pulsar                       Apache Pulsar                                   0                    
pachyderm/kafka-example-producer                                                          0     
[root@k8s-master ~]# docker pull wurstmeister/kafka
Using default tag: latest
latest: Pulling from wurstmeister/kafka
540db60ca938: Pull complete 
f0698009749d: Pull complete 
d67ee08425e3: Pull complete 
1a56bfced4ac: Pull complete 
dccb9e5a402a: Pull complete 
Digest: sha256:4916aa312512d255a6d82bed2dc5fbee29df717fd9efbdfd673fc81c6ce03a5f
Status: Downloaded newer image for wurstmeister/kafka:latest
docker.io/wurstmeister/kafka:latest

运行容器 zookeeper:

[root@k8s-master ~]# docker run -d --restart=always --log-driver json-file --log-opt max-size=100m --log-opt max-file=2  --name zookeeper -p 2181:2181 -v /etc/localtime:/etc/localtime zookeeper
c603f292813cfd6e2b16fff88a9767cc86fc9bba34d82723e57a30a6199d280b

运行容器  kafka:

[root@k8s-master ~]# docker run -d --restart=always --log-driver json-file --log-opt max-size=100m --log-opt max-file=2 --name kafka -p 9092:9092 -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=172.21.10.10:2181/kafka -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://172.21.10.10:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -v /etc/localtime:/etc/localtime wurstmeister/kafka
d545f44cda8eae5f6653efe9ed55b2dd98a29a63648308f0ed6908f5cf841efe
参数说明:
-e KAFKA_BROKER_ID=0  在kafka集群中,每个kafka都有一个BROKER_ID来区分自己

-e KAFKA_ZOOKEEPER_CONNECT=172.21.10.10:2181/kafka 配置zookeeper管理kafka的路径172.21.10.10:2181/kafka

-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://172.21.10.10:9092  把kafka的地址端口注册给zookeeper,如果是远程访问要改成外网IP,类如Java程序访问出现无法连接。

-e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 配置kafka的监听端口

-v /etc/localtime:/etc/localtime 容器时间同步虚拟机的时间

验证kafka是否可以使用

进入容器:

[root@k8s-master ~]# docker exec -it kafka bash
bash-5.1# 
bash-5.1# 
bash-5.1# cd /opt/kafka_2.13-2.8.1/
bash-5.1# pwd
/opt/kafka_2.13-2.8.1
bash-5.1# 
bash-5.1# cd bin
bash-5.1# pwd
/opt/kafka_2.13-2.8.1/bin
bash-5.1# 
bash-5.1# ls -l
total 156
-rwxr-xr-x    1 root     root          1423 Sep 14 21:03 connect-distributed.sh
-rwxr-xr-x    1 root     root          1396 Sep 14 21:03 connect-mirror-maker.sh
-rwxr-xr-x    1 root     root          1420 Sep 14 21:03 connect-standalone.sh
-rwxr-xr-x    1 root     root           861 Sep 14 21:03 kafka-acls.sh
-rwxr-xr-x    1 root     root           873 Sep 14 21:03 kafka-broker-api-versions.sh
-rwxr-xr-x    1 root     root           860 Sep 14 21:03 kafka-cluster.sh
-rwxr-xr-x    1 root     root           864 Sep 14 21:03 kafka-configs.sh
-rwxr-xr-x    1 root     root           945 Sep 14 21:03 kafka-console-consumer.sh
-rwxr-xr-x    1 root     root           944 Sep 14 21:03 kafka-console-producer.sh
-rwxr-xr-x    1 root     root           871 Sep 14 21:03 kafka-consumer-groups.sh
-rwxr-xr-x    1 root     root           948 Sep 14 21:03 kafka-consumer-perf-test.sh
-rwxr-xr-x    1 root     root           871 Sep 14 21:03 kafka-delegation-tokens.sh
-rwxr-xr-x    1 root     root           869 Sep 14 21:03 kafka-delete-records.sh
-rwxr-xr-x    1 root     root           866 Sep 14 21:03 kafka-dump-log.sh
-rwxr-xr-x    1 root     root           863 Sep 14 21:03 kafka-features.sh
-rwxr-xr-x    1 root     root           870 Sep 14 21:03 kafka-leader-election.sh
-rwxr-xr-x    1 root     root           863 Sep 14 21:03 kafka-log-dirs.sh
-rwxr-xr-x    1 root     root           873 Sep 14 21:03 kafka-metadata-shell.sh
-rwxr-xr-x    1 root     root           862 Sep 14 21:03 kafka-mirror-maker.sh
-rwxr-xr-x    1 root     root           886 Sep 14 21:03 kafka-preferred-replica-election.sh
-rwxr-xr-x    1 root     root           959 Sep 14 21:03 kafka-producer-perf-test.sh
-rwxr-xr-x    1 root     root           874 Sep 14 21:03 kafka-reassign-partitions.sh
-rwxr-xr-x    1 root     root           874 Sep 14 21:03 kafka-replica-verification.sh
-rwxr-xr-x    1 root     root         10329 Sep 14 21:03 kafka-run-class.sh
-rwxr-xr-x    1 root     root          1376 Sep 14 21:03 kafka-server-start.sh
-rwxr-xr-x    1 root     root          1361 Sep 14 21:03 kafka-server-stop.sh
-rwxr-xr-x    1 root     root           860 Sep 14 21:03 kafka-storage.sh
-rwxr-xr-x    1 root     root           945 Sep 14 21:03 kafka-streams-application-reset.sh
-rwxr-xr-x    1 root     root           863 Sep 14 21:03 kafka-topics.sh
-rwxr-xr-x    1 root     root           958 Sep 14 21:03 kafka-verifiable-consumer.sh
-rwxr-xr-x    1 root     root           958 Sep 14 21:03 kafka-verifiable-producer.sh
-rwxr-xr-x    1 root     root          1714 Sep 14 21:03 trogdor.sh
drwxr-xr-x    2 root     root          4096 Dec 31 00:30 windows
-rwxr-xr-x    1 root     root           867 Sep 14 21:03 zookeeper-security-migration.sh
-rwxr-xr-x    1 root     root          1393 Sep 14 21:03 zookeeper-server-start.sh
-rwxr-xr-x    1 root     root          1366 Sep 14 21:03 zookeeper-server-stop.sh
-rwxr-xr-x    1 root     root          1019 Sep 14 21:03 zookeeper-shell.sh

运行kafka生产者发送消息:

bash-5.1# ./kafka-console-producer.sh --broker-list localhost:9092 --topic test
>helloworld             
>

运行消费者:

bash-5.1# cd /opt/kafka_2.13-2.8.1/bin/
bash-5.1# ./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
helloworld

至此完成

  • 0
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值