kafka测试

1】确认 ZooKeeper 服务状态

为了进一步确认 ZooKeeper 服务的状态,你可以执行以下操作:

  1. 检查 ZooKeeper 服务状态

    bash 复制代码
    docker ps

    确保 ZooKeeper 容器正在运行。

  2. 检查 ZooKeeper 日志

    bash 复制代码
    docker logs zookeeper

    查看最新的日志条目,确保没有新的错误或警告信息。

  3. 测试 ZooKeeper 连接

    使用 nc(Netcat)来测试 ZooKeeper 服务是否可以连接:

    bash 复制代码
    docker exec -it kafka /bin/sh
    nc -zv 110.40.130.231 2181

    如果连接成功,你会看到类似以下的输出:

    bash 复制代码
    Connection to 110.40.130.231 2181 port [tcp/*] succeeded!

2】确认 Kafka 服务状态

若ZooKeeper 服务已经正常运行,再认 Kafka 服务的状态:

  1. 检查 Kafka 服务状态

    bash 复制代码
    docker ps

    确保 Kafka 容器正在运行。

  2. 检查 Kafka 日志

    复制代码
    docker logs kafka

    查看最新的日志条目,确保没有新的错误或警告信息。

  3. 测试 Kafka 生产和消费消息

    使用 Kafka 的命令行工具来测试生产者和消费者的连接。首先,进入 Kafka 容器:

    复制代码
    docker exec -it kafka /bin/sh

    然后,创建一个测试主题:

    bash 复制代码
    /opt/kafka/bin/kafka-topics.sh --create --topic test-topic --partitions 1 --replication-factor 1 --zookeeper 110.40.130.231:2181

    发送一些测试消息:

    复制代码
    /opt/kafka/bin/kafka-console-producer.sh --broker-list 110.40.130.231:9092 --topic test-topic

    在另一个终端窗口中,启动一个消费者来接收消息:

    bash 复制代码
    docker exec -it kafka /bin/sh
    /opt/kafka/bin/kafka-console-consumer.sh --bootstrap-server 110.40.130.231:9092 --topic test-topic --from-beginning

    如果一切正常,在消费者端看到生产者发送的消息。


复制代码
/opt/kafka/bin/kafka-topics.sh --create --topic test-topic --partitions 1 --replication-factor 1 --zookeeper 110.40.130.231:2181

详细解释

  1. /opt/kafka/bin/kafka-topics.sh:

    • 这是 Kafka 提供的命令行工具之一,用于管理和操作 Kafka 主题。
    • 路径 /opt/kafka/bin 是 Kafka 安装目录下的 bin 目录,其中包含了各种 Kafka 命令行工具。
  2. --create:

    • 这个选项表示要创建一个新的主题。
    • 其他常用选项包括 --list(列出所有主题)、--describe(描述特定主题的详细信息)、--delete(删除主题)等。
  3. --topic test-topic:

    • 这个选项指定了要创建的主题的名称。
    • test-topic 是选择的主题名称,你可以根据需要将其替换为任何其他名称。
  4. --partitions 1:

    • 这个选项指定了主题的分区数。
    • 分区是 Kafka 中的一个重要概念,用于实现水平扩展和并行处理。每个分区可以独立地存储和处理消息。
    • 在这个例子中,1 表示该主题将只有一个分区。
  5. --replication-factor 1:

    • 这个选项指定了主题的副本因子。
    • 副本因子决定了每个分区的数据在多少个不同的 Kafka 代理(broker)上进行复制,以提高可用性和容错性。
    • 在这个例子中,1 表示每个分区只有一个副本,这意味着没有冗余备份。如果你希望增加冗余,可以将此值设置为大于 1 的数字,例如 23
  6. --zookeeper 110.40.130.231:2181:

    • 这个选项指定了 ZooKeeper 的地址和端口。
    • ZooKeeper 是一个分布式协调服务,Kafka 使用它来管理集群的元数据,包括主题、分区和副本的信息。
    • 110.40.130.231 是 ZooKeeper 服务器的 IP 地址,2181 是默认的 ZooKeeper 端口。
相关推荐
小马爱打代码1 小时前
SpringBoot原生实现分布式MapReduce计算
spring boot·分布式·mapreduce
南客先生1 小时前
互联网大厂Java面试:RocketMQ、RabbitMQ与Kafka的深度解析
java·面试·kafka·rabbitmq·rocketmq·消息中间件
悻运1 小时前
如何配置Spark
大数据·分布式·spark
懒惰的橘猫1 小时前
Spark集群搭建之Yarn模式
大数据·分布式·spark
2401_824256862 小时前
Spark-Streaming
大数据·分布式·spark
知其_所以然3 小时前
如何使用@KafkaListener实现从nacos中动态获取监听的topic
kafka
淋一遍下雨天3 小时前
Spark-Streaming核心编程
大数据·kafka
爱吃泡芙的小白白6 小时前
爬虫学习——使用HTTP服务代理、redis使用、通过Scrapy实现分布式爬取
redis·分布式·爬虫·http代理·学习记录
樟小叶_公众号同名6 小时前
Kafka运维经验
后端·kafka
小名叫咸菜8 小时前
flume整合Kafka和spark-streaming核心编程
kafka·flume