kafka学习二:初识kafka

目录

    介绍并安装kafka 熟悉kafka启停操作 熟悉kafka常见控制台操作

介绍kafka

    A distributed streaming platform(分布式的流平台) 1.官方地址: 2.主要用于大数据处理,对接spark、flink等实时流处理平台。 3.kafka是基于zookeeper的分布式消息系统。 4.kafka具有高性能、实时、高吞吐率及考可靠等基于流平台的特点,它并不是一个纯粹的消息系统。

安装kafka

    依赖安装包清单 安装kafka 1.解压安装包至install目录下
[root@localhost ~]# tar -zxvf jdk-8u181-linux-x64.tar.gz -C ../install/
[root@localhost ~]# tar -zxvf apache-zookeeper-3.5.7-bin.tar.gz -C ../install
[root@localhost ~]# tar -zxvf kafka_2.11-2.4.0.tgz -C ../install

2.安装jdk

[root@localhost ~]# vim /etc/profile
## JAVA_HOME
export JAVA_HOME=/opt/install/jdk1.8.0_181
## PATH
export PATH=$PATH:$JAVA_HOME/bin
[root@localhost software]# java -version
openjdk version "1.8.0_252"
OpenJDK Runtime Environment (build 1.8.0_252-b09)
OpenJDK 64-Bit Server VM (build 25.252-b09, mixed mode)

3.安装zookeeper

    修改配置文件
[root@localhost ~]# cd /opt/install/apache-zookeeper-3.5.7-bin/conf/
[root@localhost ~]# cp zoo_sample.cfg zoo.cfg
[root@localhost ~]# vim zoo.cfg

dataDir一般生产环境会设置一个磁盘空间比较大的目录,目前设置此目录学习即可。 clientPort为默认端口号。

[root@localhost ~]# cd /opt/install/apache-zookeeper-3.5.7-bin/conf/
[root@localhost ~]# ./zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /opt/install/apache-zookeeper-3.5.7-bin/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[root@localhost ~]# ./zkCli.sh
    查看zookeeper运行状态
[root@localhost ~]# ps -ef|grep zookeeper
    查看zk日志
[root@localhost ~]# vim /opt/install/apache-zookeeper-3.5.7-bin/conf/zookeeper-root-server-localhost.localdomain.out

4.安装kafka

[root@localhost ~]# cd /opt/install/kafka_2.11-2.4.0/config/
[root@localhost ~]# ls
[root@localhost ~]# vim server.properties
    kafka配置 修改ip为本地虚拟机ip,由于目前没有域名暂时使用ip即可 kafka配置zookeeper 5.kafka常见命令 启动Kafka
bin/kafka-server-start.sh config/server.properties &
    停止Kafka
bin/kafka-server-stop.sh
    创建Topic
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic kafka_study-topic
    查看已经创建的Topic信息
bin/kafka-topics.sh --list --zookeeper localhost:2181
    发送消息
bin/kafka-console-producer.sh --broker-list 192.163.124.3:9092 --topic kafka_study-topic
    接收消息
bin/kafka-console-consumer.sh --bootstrap-server 192.163.124.3:9092 --topic kafka_study-topic --from-beginning

kafka基本概念

    Topic:一个虚拟概念,由一到多个Partitions组成 Partition:实际消息存储单位 Producer:消息生产者 Consumer:消息消费者 生产环境上使用kafka

kafka创建topic,查看topic

[root@localhost kafka_2.11-2.4.0]# bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic kafka_study-topic
WARNING: Due to limitations in metric names, topics with a period (.) or underscore (_) could collide. To avoid issues it is best to use either, but not both.
Created topic kafka_study-topic.
[root@localhost kafka_2.11-2.4.0]# bin/kafka-topics.sh --list --zookeeper localhost:2181
kafka_study-topic

kafka使用prouducer发送消息

[root@localhost kafka_2.11-2.4.0]# bin/kafka-console-producer.sh --broker-list 192.163.124.3:9092 --topic kafka_study-topic

kafka使用comsumer消费消息

root@localhost kafka_2.11-2.4.0]# bin/kafka-console-consumer.sh --bootstrap-server 192.163.124.3:9092 --topic kafka_study-topic --from-beginning

至此kafka生产环境的简单操作完成

经验分享 程序员 微信小程序 职场和发展