zoukankan      html  css  js  c++  java
  • kafka_1 安装以及基本操作

    kafka1

    标签(空格分隔): java kafka


    简介

    Kafka是最初由Linkedin公司开发,是一个分布式、分区的、多副本的、多订阅者,基于zookeeper协调的分布式日志系统(也可以当做MQ系统),常见可以用于web/nginx日志、访问日志,消息服务等等,Linkedin于2010年贡献给了Apache基金会并成为顶级开源项目。

    主要应用场景是:日志收集系统和消息系统。

    Kafka主要设计目标如下:

    • 以时间复杂度为O(1)的方式提供消息持久化能力,即使对TB级以上数据也能保证常数时间的访问性能。
    • 高吞吐率。即使在非常廉价的商用机器上也能做到单机支持每秒100K条消息的传输。
    • 支持Kafka Server间的消息分区,及分布式消费,同时保证每个partition内的消息顺序传输。
    • 同时支持离线数据处理和实时数据处理。
    • Scale out:支持在线水平扩展

    安装

    http://kafka.apache.org/downloads

    mkdir -p /server/
    解压 tar -xf kafka -C /server/

    kafka 配置

    kafka的主配置文件

    server.properties

    集群的唯一标识

    broker.id=0

    kafka 监听端口

    listeners=PLAINTEXT://10.0.0.58:9092

    log 日志存放 存放数据

    log.dirs=/server/kafka_2.12-2.2.2/data

    topic的分区 最好根据消费者数量<=

    num.partitions=6

    日志保存时间 消息的保存时间 单位可以是 log.retention.ms log.retention.minutes

    log.retention.hours=168

    每个partitions 的最大大小

    log.segment.bytes=1073741824

    zookeeper的链接

    zookeeper.connect=10.0.0.58:2181,10.0.0.59:2181,10.0.0.60:2181

    自动创建topics 没有就创建

    auto.create.topics.enable=true

    是否打开 自动 删除topic的功能

    delete.topic.enable=true

    kafka zookeeper的主配置文件

    zookeeper.properties

    启动

    前端启动
    ./kafka-server-start.sh ../config/server.properties

    后端启动 直接使用nohup
    nohup ./kafka-server-start.sh ../config/server.properties &

    查看启动状态

    jps

    可以查看到kafka的java进程

    常用的操作

    查看话题 topic

    ./kafka-topics.sh --zookeeper 10.0.0.58:2181,10.0.0.59:2181,10.0.0.60:2181 --list

    创建话题 topic

    ./kafka-topics.sh --create --zookeeper 10.0.0.58:2181,10.0.0.59:2181,10.0.0.60:2181 --replication-factor 1 --partitions 3 --topic mytopic1

    查看话题 topic的详情

    ./kafka-topics.sh --describe --zookeeper 10.0.0.58:2181,10.0.0.59:2181,10.0.0.60:2181 --topic mytopic1

    paplicas 副本
    isr 活动状态的broker

    producer 放入 数据

    ./kafka-console-producer.sh --broker-list 10.0.0.58:9092,10.0.0.59:9092,10.0.0.60:9092 --topic mytopic1

    consumer 取出 数据

    • 从头获取

    ./kafka-console-consumer.sh --bootstrap-server 10.0.0.58:9092,10.0.0.59:9092,10.0.0.60:9092 --topic mytopic1 --from-beginning

    ./kafka-console-consumer.sh --bootstrap-server 10.0.0.58:9092,10.0.0.59:9092,10.0.0.60:9092 --topic 10.0.0.58-nginx-log --from-beginning

    • 继续获取

    ./kafka-console-consumer.sh --bootstrap-server 10.0.0.58:9092,10.0.0.59:9092,10.0.0.60:9092 --topic mytopic1

    删除topic

    ./kafka-topics.sh --zookeeper 10.0.0.58:2181,10.0.0.59:2181,10.0.0.60:2181 --delete -topic mytipic1

  • 相关阅读:
    exec系列函数和system函数
    fork函数相关总结
    文件的内核结构file和dup实现重定向
    进程基本概述
    fcntl 函数与文件锁
    文件的属性
    目录的操作
    文件的读取写入
    文件的打开关闭
    浅谈原始套接字 SOCK_RAW 的内幕及其应用(port scan, packet sniffer, syn flood, icmp flood)
  • 原文地址:https://www.cnblogs.com/hywhyme/p/14597812.html
Copyright © 2011-2022 走看看