在windows系统中安装kafka配置全步骤记录

在windows系统中安装kafka配置全步骤记录

提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加
例如:第一章 Python 机器学习入门之pandas的使用


提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

提示:这里可以添加本文要记录的大概内容:

例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。


提示:以下是本篇文章正文内容,下面案例可供参考

一、Java JDK安装

1.1 官网下载地址 JDK下载

1.2 配置环境变量(网上一大堆,随便搜)。

二、Zookeeper安装

Kafka是因为kafka是基于Zookeeper的,而Zookeeper一般都是一个分布式的集群,尽管kafka有自带Zookeeper,但是一般不使用自带的,都是使用外部安装的,所以首先我们需要安装Zookeeper。

2.1 官网下载地址 Zookeeper官网

2.2 本地安装

	1.把下载好的压缩包解压,放到自己指定想要安装的目录下;
	2.在bin文件夹同级下,创建data文件夹、log文件夹;
	3.找到config文件夹,将目录中zoo_sample.cfg文件复制一份,重命名为zoo.cfg;
	4.修改zoo.cfg配置文件,将默认的 dataDir=/tmp/zookeeper 修改成 zookeeper 安装目录所在的data 文件夹,再增加数据日志的配置;

在这里插入图片描述

2.3 启动测试

	完成上面所有配置后,进入到zookeeper安装目录下的bin文件下,双击运行 zkServer.cmd 启动;
	保持cmd窗口不要关掉!!!

三、Kafka安装

1.官网下载 kafka官网

2.修改文件夹名字(名字不宜过长)

3.修改配置文件中

	解压到相应文件夹,进入config目录下,找到server.properties文件

在这里插入图片描述在这里插入图片描述

4.启动kafka,cmd到kafka解压文件的 .\bin\windows\文件夹下,执行

		kafka-server-start.bat .\config\server.properties

在这里插入图片描述在这里插入图片描述

四、offset安装

offset是kafka的可视化工具,方便查看,下载地址 [offset下载地址](https://www.kafkatool.com/download2/offsetexplorer_64bit.exe)

在这里插入图片描述

五、生产者代码

首先要保证安装 Confluent.Kafka

using Confluent.Kafka;
using System;
using System.Threading.Tasks;

namespace KafkaProducer
{
    class Program
    { 
        static void Main(string[] args)
        {
            Console.WriteLine("请输入消息内容");
            using (var producer = new KafkaProducer())
            {
                while (true)
                {
                    string message = Console.ReadLine();
                    try
                    {
                        //topic名称是test
                        var result = producer.ProduceAsync("topic01",
                        new Confluent.Kafka.Message<string, string>() { Key = Guid.NewGuid().ToString(), Value = message })
                            .GetAwaiter().GetResult();
                        Console.WriteLine($"offset:{result.Offset.Value},partition:{result.Partition.Value}");
                    }
                    catch (ProduceException<string, string> e)
                    {
                        Console.WriteLine($"失败的消息: {e.Message} [{e.Error.Code}]");
                        continue;
                    }

                }
            }
        }
        class KafkaProducer : IDisposable
        {
            private ProducerConfig _config = new ProducerConfig();
            private IProducer<string, string> _producer;
            public KafkaProducer(string server = null)
            {
                if (string.IsNullOrEmpty(server))
                {
                    //这里可以添加更多的Kafka集群,比如
                    //server=" server ="192.168.1.129:9092,192.168.1.133:9092,192.168.1.134:9092";";                   
                    server = "192.168.250.11:9092";

                }
                _config.BootstrapServers = server;
                _producer = new ProducerBuilder<string, string>(_config).Build();

            }

            public async Task<DeliveryResult<string, string>> ProduceAsync(string topic, Message<string, string> message)
            {
                return await _producer.ProduceAsync(topic, message);

            }

            public void Dispose()
            {
                _producer?.Dispose();
            }
        }
    }
}

六、消费者代码

using Confluent.Kafka;
using System;

namespace KafkaConsumer
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("默认只关注test主题的消息)");
            using (var consumer = new KafkaConsumer())
            {
                while (true)
                {
                    consumer.Consume(a =>
                    {
                        if (a == null)
                        {
                            Console.WriteLine("暂无消息");
                        }
                        else
                        {
                            Console.WriteLine($"Key:{a.Message.Key},Value:{a.Message.Value}");
                        }
                    });
                }
            }
        }

        class KafkaConsumer : IDisposable
        {
            private IConsumer<string, string> _consumer;
            public KafkaConsumer(string server = null)
            {
                if (string.IsNullOrEmpty(server))
                {
                    server = "192.168.250.11:9092";
                }
                var config = new ConsumerConfig
                {
                    GroupId = "group.1",
                    BootstrapServers = server,
                    AutoOffsetReset = AutoOffsetReset.Earliest
                };
                _consumer = new ConsumerBuilder<string, string>(config).Build();
                //topic名称默认是test
                _consumer.Subscribe("topic01");

            }

            public void Consume(Action<ConsumeResult<string, string>> action = null)
            {
                var consumerResult = _consumer.Consume(TimeSpan.FromSeconds(1));
                action?.Invoke(consumerResult);
            }

            public void Dispose()
            {
                _consumer?.Dispose();
            }
        }

    }
}

            }
        }
    }
}

  • 23
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 1. 下载并安装Java环境(Kafka需要Java运行) 2. 下载Kafka安装包(https://kafka.apache.org/downloads) 3. 解压安装包到指定目录 4. 进入安装目录,打开命令行窗口 5. 输入命令:.\bin\windows\zookeeper-server-start.bat .\config\zookeeper.properties 启动zookeeper服务 6. 开启另一个命令行窗口,输入命令:.\bin\windows\kafka-server-start.bat .\config\server.properties 启动kafka服务 7. 在命令行窗口输入命令:.\bin\windows\kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test 创建一个名为“test”的topic 8. 开启另一个命令行窗口,输入命令:.\bin\windows\kafka-console-producer.bat --broker-list localhost:9092 --topic test 启动生产者 9. 开启另一个命令行窗口,输入命令:.\bin\windows\kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test --from-beginning 启动消费者 10. 在生产者窗口输入消息,在消费者窗口可以看到接收到的消息。 注意: 以上步骤假设你已经安装了java环境,并且系统已经配置好了JAVA_HOME环境变量. ### 回答2: Kafka是一个高性能、分布式、可伸缩的消息队列系统,适用于大数据流实时处理场景,被广泛应用于互联网、金融、电信等行业。本文将介绍KafkaWindows系统下的安装步骤。 1. 安装Java环境 首先需要在Windows系统安装Java环境,建议安装Java8或以上版本,可以通过命令行输入java -version来检查Java环境是否安装成功。 2. 下载Kafka安装包 在官网(https://kafka.apache.org/downloads)下载Kafka的二进制压缩包,解压到磁盘任意目录下。 3. 修改配置文件 进入Kafka解压目录,进入config文件夹,修改server.properties配置文件。主要修改如下: # 设置Kafka服务端口 listeners=PLAINTEXT://localhost:9092 # 设置Kafka日志存储位置 log.dirs=D:/kafka_2.12-2.7.0/data/kafka/logs # 设置Zookeeper连接地址 zookeeper.connect=localhost:2181 4. 启动Zookeeper 进入Kafka解压目录,进入bin\windows文件夹,双击运行zookeeper-server-start.bat脚本。 5. 启动Kafka 同样进入bin\windows文件夹,双击运行kafka-server-start.bat脚本,即可启动Kafka服务。此时如果出现报错,可以查看logs文件夹下的kafka-logs、zookeeper的日志信息。 6. 测试Kafka 打开命令行,进入Kafka的bin\windows目录,运行以下命令: # 创建名为test的topic kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test # 发布消息 kafka-console-producer.bat --broker-list localhost:9092 --topic test # 消费消息 kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test --from-beginning 若发布和消费消息成功,则说明KafkaWindows系统安装成功。 注意:由于Kafka需要在后台运行并且占用一定的内存资源,在生产环境需要开启Kafka的守护进程,以保证Kafka的稳定运行。 ### 回答3: kafka是一个高性能、分布式的消息队列系统,可以用于处理海量的数据。在Windows操作系统安装kafka并不复杂,下面将介绍详细的安装步骤。 1.下载kafka 首先需要下载kafka的压缩包,可以从官网上下载对应版本的kafka。下载完成后,解压到一个有意义的目录下。 2.配置环境变量 在解压kafka的目录下,找到“bin”文件夹,将其路径添加到系统环境变量。方法是右键点击“计算机”,选择“属性”、“高级系统设置”、“环境变量”,在系统变量找到“Path”变量,点击编辑,添加“bin”文件夹路径。 3.修改kafka配置kafka的解压目录下,找到“config”文件夹,打开“server.properties”文件,修改以下配置: - broker.id=0 # broker的唯一标识符,在集群部署时需要设置不同的值 - listeners=PLAINTEXT://localhost:9092 # kafka监听的主机名和端口 - log.dirs=D:/kafka/kafka-logs # kafka数据存储目录,也可以使用默认路径 - zookeeper.connect=localhost:2181 # zookeeper的连接地址,一般默认端口为2181 4.启动zookeeper 在kafka解压目录下找到“bin”文件夹,运行“zookeeper-server-start.bat”文件启动zookeeper服务。 5.启动kafka 同样在“bin”文件夹下,运行“kafka-server-start.bat”文件启动kafka服务。如果一切正常,可以在控制台看到kafka的启动信息。 6.创建主题 在kafka解压目录下找到“bin”文件夹,在命令行运行“kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test”命令来创建一个名为“test”的主题。 7.发送和接收消息 运行“kafka-console-producer.bat --broker-list localhost:9092 --topic test”命令发送消息,运行“kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test --from-beginning”命令接收消息。 到此为止,kafka已经成功安装并运行在Windows操作系统上。在实际的生产环境,需要按照需求进行配置和调整,以达到更好的性能和效果。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值