Kafka教程(一)基础入门
  •  
    1.基本概念
    •  
      背景
      •  
        领英->Apache
      •  
        分布式、消息发布订阅系统
    •  
      角色
      •  
        存储系统
      •  
        消息系统
      •  
        流处理平台-Kafka Streaming
    •  
      特点
      •  
        高吞吐、低延迟
        •  
          cg消费不同分区
      •  
        可扩展性(热扩展)
      •  
        持久性、可靠性
      •  
        容错性(n-1个replica)
      •  
        高并发(数千个客户端☆)
    •  
      作用
      •  
        削峰填谷(Peak cut)+解耦
      •  
        流式计算:计算系统的前置缓存和输出结果缓存
  •  
    2.安装部署
    •  
      zookeeper集群
      •  
        zoo.cfg
        •  
          server.1/2/3(big02:2888:3888)
          •  
            2888(leader监听此端口、用于zk内部通信)
          •  
            3888(leader选举)
        •  
          clientPort:2181
          •  
            为客户端提供服务
        •  
          dataDir
      •  
        myid文件生成
        •  
          data目录下创建
        •  
          echo 1 > myid
        •  
          对应server1、2、3
      •  
        /etc/profile配置环境变量
      •  
        配置分发与启停zkServer.sh
      •  
        集群一键启停-ssh
    •  
      kafka集群
      •  
        server.propertis
        •  
          log数据存储目录
        •  
          zk集群地址2181(zk只配端口)
      •  
        profile
        •  
          配置export PATH=$PATH:$KAFKA/bin
        •  
          source生效文件
      •  
        启停与操作
        •  
          kafka-server-start/stop.sh
        •  
          kafka-topics.sh
        •  
          kafka-console-producer/consumer.sh
  •  
    3.运维监控
    •  
      Kafka Eagle(EFAK)
      •  
        配置数据库
      •  
        ke.sh启动
    •  
      Kafka Manager(CMAK)
      •  
        JMX远程连接端口
      •  
        RMI实际通信端口
      •  
        sh文件内配置
        •  
          server-start
        •  
          run-class
      •  
        启动时指定
        •  
          JMX_PORT=9999 bin/kafka-server-start.sh
    •  
      Kafka Offset Monitor
    •  
      Kafka Web Console
      •  
        scala编写的java web程序
      •  
        类似Monitor,但更复杂
      •  
        需要配置数据库
      •  
        安装sbt 打包、运行run
    •  
      JMX自开发管理系统
  •  
    4.命令行工具
    •  
      概述
      •  
        启停、配置
      •  
        生产消费、主题管理
      •  
        性能测试perf-test
      •  
        日志内容查看dump-log
      •  
        优先副本选举prefered-replica-election
      •  
        分区再分配reassign
    •  
      topics
      •  
        信息查看--describe
        •  
          Replica
        •  
          ISR
        •  
          OSR
      •  
        创建--create
        •  
          基本方式
          •  
            指定分区个数和副本数量replication-factor
        •  
          手动指定分区分配
          •  
            --replica-assignment
          •  
            0:1:3,1:2:6(分别指两个分区的节点id)
      •  
        修改配置--alter
        •  
          增加分区数
          •  
            --partitions 3
        •  
          动态配置topic参数
          •  
            --config compression=gzip
    •  
      console-producer
    •  
      console-consumer
      •  
        指定分区--pratition
      •  
        偏移量指定策略
        •  
          earliest
        •  
          latest
        •  
          指定
          •  
            指定偏移量--offset 2
        •  
          默认:之前记录的偏移量
      •  
        消费者组
        •  
          groupId配置与查看
          •  
            查看:consumer-groups.sh --list
        •  
          数量变更触发rebalance
        •  
          用于提高消费并行度
        •  
          组与组之间无关系,组内分配partition消费
      •  
        消费位移
        •  
          __consumer_offset
          •  
            指定formatter工具类解析topic内的数据
        •  
          确定groupid的分区
          •  
            groupId的哈希码对总分区数取余
    •  
      configs
      •  
        指令类型
        •  
          变更alter
        •  
          查看describe
      •  
        支持类型
        •  
          topic主题
        •  
          broker
        •  
          用户
        •  
          客户端
      •  
        命令
        •  
          指定类型(--entity-type)
        •  
          指定具体名(--entity-name)
      •  
        配置
        •  
          添加修改配置
          •  
            --config compression.type=gzip
          •  
            --add-config xxx
        •  
          删除配置
          •  
            --delete-config compression.type
以上内容整理于幕布文档

Kafka教程(一)基础入门:基本概念、安装部署、运维监控、命令行使用的更多相关文章

  1. Azure DevOps Server 入门实践与安装部署

    一,引言 最近一段时间,公司希望在自己的服务器上安装本地版的 Azure DevOps Service(Azure DevOps Server),用于项目内的测试,学习.本着学习的目的,我也就开始学习 ...

  2. JVM基础系列第15讲:JDK性能监控命令

    查看虚拟机进程:jps 命令 jps 命令可以列出所有的 Java 进程.如果 jps 不加任何参数,可以列出 Java 程序的进程 ID 以及 Main 函数短名称,如下所示. $ jps 6540 ...

  3. 运维监控-Open-Falcon安装Agent实战篇

    运维监控-Open-Falcon安装Agent实战篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本文参考链接来自:http://book.open-falcon.org/zh/ ...

  4. 安装了nodejs后在命令行运行npm报错

    安装了nodejs后在命令行运行npm报错:Error: Cannot find module 'internal/util/types' 解决方法:删除目录“C:\Users\mengxiaobo\ ...

  5. 在Docker中安装.NET Core(使用命令行工具)

    在Docker中安装.NET Core目前共有两种方法:1,使用命令行工具安装2,使用VS2017来安装 本文主要介绍使用命令行工具来安装: 1,安装Docker(如果本机已经有Docker环境,可以 ...

  6. 在CentOS7.6上安装自动化运维工具Ansible以及playbook案例实操

    前言 Ansible是一款优秀的自动化IT运维工具,具有远程安装.远程部署应用.远程管理能力,支持Windows.Linux.Unix.macOS和大型机等多种操作系统. 下面就以CentOS 7.6 ...

  7. Oracle安装完成后,如何用命令行启动和关闭数据库?

    Oracle安装完成后,如何用命令行启动和关闭数据库? 解答: 打开:STARTUP [FORCE] [RESTRICT] [PFILE= filename] [OPEN [RECOVER][ dat ...

  8. centos 7 查看系统/硬件信息及运维常用命令+联想Y430P无线网卡驱动安装

     centos 7 查看系统/硬件信息及运维常用命令 当前环境:联想Y430P  CentOS 7.3 [root@yan-001 ~] # uname -a # 查看内核/操作系统/CPU信息的Li ...

  9. Windows下安装appium桌面版和命令行版

    安装appium桌面版和命令行版   一 桌面版(打开很慢,常用于辅助元素定位) 1.官网下载window版本:  github search appium desktop download late ...

  10. (大数据工程师学习路径)第一步 Linux 基础入门----基本概念及操作

    本节联练习主要有: 1.环境介绍 2.常用 Shell 命令及快捷键 3.Linux 使用小技巧 一.Linux 桌面环境介绍 相对于现在的 Windows 系统,UNIX/Linux 本身是没有图形 ...

随机推荐

  1. Java开发学习(三十五)----SpringBoot快速入门及起步依赖解析

    一.SpringBoot简介 SpringBoot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化 Spring 应用的初始搭建以及开发过程. 使用了 Spring 框架后已经简化了我 ...

  2. MyBatis创建第二个项目

    MyBatis创建第二个项目 Mysql文件配置 /* Navicat Premium Data Transfer​ Source Server         : Mybatis Source Se ...

  3. 在 Kubernetes 集群中使用 NodeLocal DNSCache

    转载自:https://www.qikqiak.com/post/use-nodelocal-dns-cache/ NodeLocal DNSCache 通过在集群节点上运行一个 DaemonSet ...

  4. Prometheus监控Nginx

    转载自:https://www.cnblogs.com/you-men/p/13173245.html CentOS7.3 prometheus-2.2.1.linux-amd64.tar.gz ng ...

  5. 在CentO7系统上配置Springboot项目jar包开机自启动

    官方文档地址:https://docs.spring.io/spring-boot/docs/current/reference/html/deployment.html#deployment-ins ...

  6. win10系统应用商店打开后无法联网 代码: 0x80131500 的解决办法

    官方提供的建议网址: https://answers.microsoft.com/zh-hans/windows/forum/all/代码/cbbe7aaf-8f66-4779-89c8-3c74f5 ...

  7. LeetCode - 数组的改变和移动

    1. 数组的改变和移动总结 1.1 数组的改变 数组在内存中是一块连续的内存空间,我们可以直接通过下标进行访问,并进行修改. 在Java中,对于List类型来说,我们可以通过set(idx, elem ...

  8. win7升级到win10系统后,node13升级为node16,node版本node-sass版本与不匹配,导致出现npm ERR! ERESOLVE could not resolve

    1. 错误npm ERR! code ERESOLVE 系统从win7升级到win10,之前的node版本是13.14.0,现在版本是16.17.1.正常的vue程序无法正常运行.从网上查询得知&qu ...

  9. 开源动态可监控线程池DynamicTp介绍

    前言 使用线程池 ThreadPoolExecutor 过程中你是否有以下痛点呢? 代码中创建了一个 ThreadPoolExecutor,但是不知道那几个核心参数设置多少比较合适 凭经验设置参数值, ...

  10. mybatis-plugin插件执行原理

    mybatis-plugin插件执行原理 今天主要是在看mybatis的主流程源码,其中比较感兴趣的是mybatis的plugin功能,这里主要记录下mybatis-plugin的插件功能原理. pl ...