topic

windows下kafka+ELK的日志系统

谁说胖子不能爱 提交于 2019-11-25 22:58:48
用到的软件:zookeeper、kafka、logstash(6.3.2版本)、ES(6.3.2版本)、Kibana(6.3.2版本)。具体安装步骤不在此说明,基本都是下载解压,改一下配置文件,即可使用。(以下所述均在Windows下) 1、zookeeper: kafka中自带zookeeper,可以不用装zookeeper,如果想自己另装,需配置环境变量,如下: ZOOKEEPER_HOME => D:\nomalAPP\zookeeper-3.4.13 path 里面加入 %ZOOKEEPER_HOME%\bin 如果配置好以后,在cmd里运行zkserver报找不到java错误的话,可能是java环境变量的位置放置有问题,可以将path里面配置的java环境位置移到最前面。</b> 2、kafka: kafka如果启动报找不到java的错误,原因在于kafka-run-class.bat的179行,找到里面的 %CLASSPATH% ,将其用双引号括起来。即改为:set COMMAND=%JAVA% %KAFKA_HEAP_OPTS% %KAFKA_JVM_PERFORMANCE_OPTS% %KAFKA_JMX_OPTS% %KAFKA_LOG4J_OPTS% -cp "%CLASSPATH%" %KAFKA_OPTS% %* </b> kafka的配置文件server

kafka生产实例安装

两盒软妹~` 提交于 2019-11-25 22:53:18
2019/3/14 星期四 Linux 初始化脚本 (centos6 centos7 通用) Linux 初始化脚本 (centos6 centos7 通用) zookeeper生产环境搭建 zookeeper生产环境搭建 在安装前请务必安装好zookeeper 查看上面2个链接地址! kafka优化: 有时候系统需要应对突如其来的高峰数据,它可能会拖慢磁盘。(比如说,每个小时开始时进行的批量操作等) 这个时候需要容许更多的脏数据存到内存,让后台进程慢慢地通过异步方式将数据写到磁盘当中。 vm.dirty_background_ratio = 5 vm.dirty_ratio = 80 这个时候,后台进行在脏数据达到5%时就开始异步清理,但在80%之前系统不会强制同步写磁盘。这样可以使IO变得更加平滑。 实际操作: echo "vm.dirty_background_ratio=5" >> /etc/sysctl.conf echo "vm.dirty_ratio=80" >> /etc/sysctl.conf sysctl -p kafka 生产环境搭建 [root@emm-kafka01-10--174 ~]# cd /opt/ins/ [root@emm-kafka01-10--174 ins]# ll total 233044 -rwxr-xr-x 1 root root

Zookeeper+Kafka集群搭建

喜你入骨 提交于 2019-11-25 22:44:44
Zookeeper集群搭建 Kafka集群是把状态保存在Zookeeper中的,首先要搭建Zookeeper集群。 1、软件环境 (3台服务器-我的测试) 192.168.30.204 server1 192.168.30.205 server2 192.168.30.206 server3 1-1、Linux服务器一台、三台、五台、(2*n+1),Zookeeper集群的工作是超过半数才能对外提供服务,3台中超过两台超过半数,允许1台挂掉 ,是否可以用偶数,其实没必要。 如果有四台那么挂掉一台还剩下三台服务器,如果在挂掉一个就不行了,这里记住是超过半数。 1-2、zookeeper是用java写的所以他的需要JAVA环境,java是运行在java虚拟机上的 1-3、Zookeeper的稳定版本Zookeeper 3.4.6版本 2、配置&安装Zookeeper 下面的操作是:3台服务器统一操作 2-1、安装Java (可选) 卸载已有的open jdk,安装最新版本的java jdk # rpm -qa | grep jdk java-1.6.0-openjdk-1.6.0.0-1.45.1.11.1.el6.i686 # yum -y remove java-1.6.0-openjdk-1.6.0.0-1.45.1.11.1.el6.i686 remove java-1.6.0

Kafka 入门

最后都变了- 提交于 2019-11-25 22:42:40
1 Kafka 概述 1.1 定义 Kafka 是一个分布式的基于发布/订阅模式的消息队列,主要应用于大数据实时处理领域。 应用场景: 解耦 异步 削峰 1.2 消息队列 1.2.1 传统消息队列的应用场景 1.2.2 消息队列的两种模式 点对点模式: 消息生产者生产消息发送到 Queue 中,然后消息消费者从 Queue 中取出并且消费消息,消息被消费以后, Queue 中不再有存储,所以消息消费者不可能消费到已经被消费的消息, Queue 支持存在多个消费者,但是对一个消息而言,只会有一个消费者可以消费。 发布订阅模式: 消息生产者将消息发布到 Topic ,同时有多个消息消费者该消息,和点对点不同的是,发布到 Topic 中的消息会被所有订阅者消费。 1.3 基础架构 Producer :消息生产者,就是向 Kafka Broker 发消息的客户端 Consumer :消息消费者,向 Kafka Broker 取消息的客户端 Consumer Group (CG) :消费者组,由多个 Consumer 组成,消费者组内每个消费者负责消费不同分区的数据,一个分区只能由一个消费者消费,消费者组之间互不影响,所有的消费者都属于某个消费者组,即消费者组是逻辑上的一个订阅者 Broker :一台 Kafka 服务器就是一个 Broker ,一个集群由多个 Broker 组成,一个

Kafka 面试题

允我心安 提交于 2019-11-25 22:41:16
1. Kafka 中的 ISR 、 AR 代表什么? ISR :与 leader 保持同步的 follower 集合 AR :分区的所有副本 2. Kafka 中的 HW 、 LEO 分别代表什么? LEO :每个副本的最后条消息的 offset HW :一个分区中所有副本最小的 offset 3. offset 中是怎么体现消息顺序性的? 每个分区内,每条消息都有一个 offset ,故只能保证分区内有序 4. offset 中的分区器、序列化器、拦截器是否了解?它们之间的处理顺序是什么? 拦截器 -> 序列化器 -> 分区器 5. Kafka 生产者客户端的整体结构是什么样子的?使用了几个线程来处理?分别是什么? 6.消费组中的消费者个数如果超过 Topic 的分区,那么就会有消费者消费不到数据这句话是否正确? 正确 7.消费者提交消费位移时提交的是当前消费到的最新消息的 offset 还是 offset+1 ? offset+1 8.有哪些情形会造成重复消费? 9.那些情景会造成消息漏消费? 先提交 offset ,后消费,有可能造成数据的重复 10.当你使用 kafka-topics.sh 创建了一个 Topic 之后,Kafka背后会执行什么逻辑? 会在 ZK 中的 /brokers/topics 节点下创建一个新的 Topic 节点 触发 Controller

Kafka笔记整理(一)

青春壹個敷衍的年華 提交于 2019-11-25 20:24:29
[TOC] Kafka简介 消息队列(Message Queue) 消息 Message 网络中的两台计算机或者两个通讯设备之间传递的数据。例如说:文本、音乐、视频等内容。 队列 Queue 一种特殊的线性表(数据元素首尾相接),特殊之处在于只允许在首部删除元素和在尾部追加元素。入队、出队。 消息队列 MQ 消息+队列,保存消息的队列。消息的传输过程中的容器;主要提供生产、消费接口供外部调用做数据的存储和获取。 MQ分类 MQ主要分为两类:点对点(p2p)、发布订阅(Pub/Sub) 共同点: 消息生产者生产消息发送到queue中,然后消息消费者从queue中读取并且消费消息。 不同点: p2p模型包括:消息队列(Queue)、发送者(Sender)、接收者(Receiver) 一个生产者生产的消息只有一个消费者(Consumer)(即一旦被消费,消息就不在消息队列中)。比如说打电话。 Pub/Sub包含:消息队列(Queue)、主题(Topic)、发布者(Publisher)、订阅者(Subscriber) 每个消息可以有多个消费者,彼此互不影响。比如我发布一个微博:关注我的人都能够看到。 那么在大数据领域呢,为了满足日益增长的数据量,也有一款可以满足百万级别消息的生成和消费,分布式、持久稳定的产品——Kafka。 Kafka简介 Kafka是分布式的发布—订阅消息系统