kafka命令

Kafka集群搭建

眉间皱痕 提交于 2019-12-26 23:10:11
Kafka初识 Kafka使用背景 在我们大量使用分布式数据库、分布式计算集群的时候,是否会遇到这样的一些问题: 我们想分析下用户行为(pageviews),以便我们设计出更好的广告位 我想对用户的搜索关键词进行统计,分析出当前的流行趋势 有些数据,存储数据库浪费,直接存储硬盘效率又低 这些场景都有一个共同点: 数据是由上游模块产生,上游模块,使用上游模块的数据计算、统计、分析,这个时候就可以使用消息系统,尤其是分布式消息系统! Kafka的定义 What is Kafka:它是一个分布式消息系统,由linkedin使用scala编写,用作LinkedIn的活动流(Activity Stream)和运营数据处理管道(Pipeline)的基础。具有高水平扩展和高吞吐量。 Kafka和其他主流分布式消息系统的对比 定义解释: Java 和 scala都是运行在JVM上的语言。 erlang和最近比较火的和go语言一样是从代码级别就支持高并发的一种语言,所以RabbitMQ天生就有很高的并发性能,但是 有RabbitMQ严格按照AMQP进行实现,受到了很多限制。kafka的设计目标是高吞吐量,所以kafka自己设计了一套高性能但是不通用的协议,他也是仿照AMQP( Advanced Message Queuing Protocol 高级消息队列协议)设计的。 事物的概念:在数据库中

Kafka入门初探+伪集群部署

岁酱吖の 提交于 2019-12-26 16:18:37
Kafka是目前非常流行的消息队列中间件,常用于做普通的消息队列、网站的活性数据分析(PV、流量、点击量等)、日志的搜集(对接大数据存储引擎做离线分析)。 全部内容来自网络,可信度有待考证!如有问题,还请及时指正。 概念介绍 在Kafka中消息队列分为三种角色: producer ,即生产者,负责产生日志数据。 broker ,存储节点,负责按照 topic 中的 partition 分区,均匀分布式的存储分区。 consumer ,即消费者,负责读取使用 broker 中的分区。 producer Kafka系统中的生产者,用于产生数据并发送给broker进行存储。由于需要与broker中的分区保持socket连接,因此需要在zk中维护生产者与分区broker的对应关系。同一个topic下的数据,会以某种负载均衡的方式发送到不同的分区中。 broker Broker可以当做Kafka中的存储节点,数据按照topic组织,按照某种负载均衡方式分配到不同的分区中。一个Topic由多个分区组成,每个分区可以设置备份数量。分区由一个leader+多个followers组成,生产者直接与leader进行沟通,leader接收消息后,其他的followers会同步这个消息。所有的follwers同步消息后,该消息才会成为可消费的状态。 Broker中Topic与分区,分区与生产者

Apache Kafka 消息队列篇

淺唱寂寞╮ 提交于 2019-12-24 05:02:55
概述 Kafka是Apache软件基金会的开源的流处理平台,该平台提供了消息的订阅与发布,能够基于Kafka实现对网络日志流实时在线处理,在这个维度上弥补了Hadoop的离线分析系统的不足。因为基于hadoop的MapReduce系统分析离线数据延迟较高,而且不支持动态数据处理和分析。Kafka的流处理平台不仅仅可以为离线系统储备数据(通常使用Kafka作为数据缓冲),而且Kafka自身也提供了一套数据流的处理机制,实现对数据流在线处理,比如: 统计。 消息队列的概念 可以用于系统间通讯的一个组件-middle ware(中间件),该组件可以用于做消息缓冲的中间件(持久化)解决一些 并发处理、数据库缓冲等实现对高并发的业务场景的削峰填谷。 使用消息队列的场景分析 1.异步消息发送: 使用Kafka MQ功能实现模块间异步通信,把一些费时的操作交给额外的服务或者设备去执行,这样可以提升系统运行效率,加速连接释放的速度,例如:用户注册模块,在用户注册成功后,业务系统需要给用户发送一个通知短信,通知用户登录邮箱去激活刚注册的用户信息。这种业务场景如图所示,因为短信通知和邮件发送是一个比较耗时的操作,所以在这里没必要将短信和邮件发送作为注册模块的流程,使用Message Queue功能可以将改业务和主业务注册分离,这样可以缩短用户浏览器和服务建立的链接时间,同时也能满足发送短信和邮件的业务

Kafka 单机部署

元气小坏坏 提交于 2019-12-23 17:30:46
Kafka 单机部署区分集成Zookeeper 部署和Zookeeper + Kafka 部署俩总方式,如果是单机部署Kafka,集成Zookeeper 最简单,也可以选择Zookeeper + Kafka 这种模式,但是如果为Kafka集群的话,则必须需要部署 Zookeeper 集群。 一. 获取解压 1. 下载 wget http://mirror.bit.edu.cn/apache/kafka/1.1.0/kafka_2.12-1.1.0.tgz 2. 解压kafka tar -zxvf kafka_2.11-0.10.1.1.tgz 二. 配置修改 1. 集成Zookeeper 配置修改方式 1.0 配置profile vi /etc/profile export KAFKA_HOME=/home/.../kafka_2.11-0.10.1.1 export PATH=$PATH:$KAFKA_HOME/bin source /etc/profile #配置生效 1.1 配置zookeeper.properties vi conf/zookeeper.properties dataDir=**** #根据自己情况设定 ckuebtPort=2291 1.2 配置server.properties vi server.properties log.dirs = ***

Kafka 集群部署

与世无争的帅哥 提交于 2019-12-23 14:47:11
Kafka 集群部署之前需要部署Zookeeper集群,关于Zookeeper集群的部署前面已经介绍过并且写了博客,需要了解的出门左拐就能看到 上篇文件介绍了Kafka的单机部署,讲了Kafka 集成Zookeeper部署及Zookeeper + Kafka 部署,还讲了Kafka的基本命令,本章节我们将一下 Kafka的集群部署。 1. 集群规划 主机规划: 10.200.3.85   Kafka-01 10.200.3.86   Kafka-02 10.200.3.87    Kafka-03 软件下载: #wget http://mirrors.hust.edu.cn/apache/zookeeper/zookeeper-3.4.10/zookeeper-3.4.10.tar.gz #wget http://mirror.bit.edu.cn/apache/kafka/1.1.0/kafka_2.12-1.1.0.tgz 2. 基础配置 2.1 配置hosts vi /etc/hosts 10.200.3.85 Kafka-01 10.200.3.86 Kafka-02 10.200.3.87 Kafka-03 2.2 配置/etc/profile vi /etc/profile export KAFKA_HOME=/root/software/kafka_2.11-2.0

kafka环境

独自空忆成欢 提交于 2019-12-23 10:41:07
二、环境搭建 参考:http://kafka.apache.org/documentation.html#quickstart Step 1: 下载Kafka wget http://mirrors.noc.im/apache/kafka/0.9.0.0/kafka_2.11-0.9.0.0.tgz 解压: > tar -xzf kafka_2.9.2-0.8.1.1.tgz > cd kafka_2.9.2-0.8.1.1 复制代码 Step 2: 启动服务 Kafka用到了Zookeeper,所有首先启动Zookper,下面简单的启用一个单实例的Zookkeeper服务。可以在命令的结尾加个&符号,这样就可以启动后离开控制台。 > bin/zookeeper-server-start.sh config/zookeeper.properties & [2013-04-22 15:01:37,495] INFO Reading configuration from: config/zookeeper.properties (org.apache.zookeeper.server.quorum.QuorumPeerConfig) ... 复制代码 现在启动Kafka: > bin/kafka-server-start.sh config/server.properties

Kafka 笔记一

早过忘川 提交于 2019-12-22 20:00:31
前言 早先过了一遍Kafka,摄取了不少知识细节,未免遗忘梳理记录下,推荐书本 《Kafka 权威指南》。 Quick Start 基础概念 关于Kafka是什么,可以参考 官网介绍 ,一个分布式流处理平台,通俗点理解就是一款基于发布和订阅的消息系统。Kafka设计实现的目标在于: 使用推送和拉取模式解藕生产者和消费者 为消息系统中传递的消息提供数据持久化 通过优化系统实现高吞吐量 系统可以随着数据流的增长进行横向拓展 既然kafka的实质是一个消息系统,类似其他MQ他也有 生产者:消息产生这,向kafka推送消息 消费者:消息的实际使用者,从kafka拉取生产者推送至kafka的消息 Topic:消息主题,亦可理解为消息类型,生产者发送了什么主题的消息,对应订阅了该主题的消费者方可拉取到该消息 Kakfa系统中一些概念 broker:一个独立的kafka服务被称为一个broker 集群:kafka是集群式的提供服务,broker是集群的一个组成部分 分区:一个topic下的至少要包含一个分区,亦可包含多个分区,topic下的消息是存储于分区中的,如图下示。对于给定分区中,消息是按照进入分区的顺序,先到者先被消费。 偏移量:消费者根据偏移量来区分哪些消息已经别消费过。 如果觉得概念枯燥繁多可先忽略。 Kafka部署 先快速将kafka搭建起来,对于kafka系统

Kafka安装教程(详细过程)

狂风中的少年 提交于 2019-12-21 22:17:07
安装前期准备: 1,准备三个节点(根据自己需求决定) 2,三个节点上安装好zookeeper(也可以使用kafka自带的zookeeper) 3,关闭防火墙 chkconfig iptables off 一、下载安装包 Kafka官网下载安装包 http://kafka.apache.org/downloads.html 我们下载第二种(已经被编译过的),将安装包存在在 /software/ 下 二、解压安装包 我选择将kafka安装在 /usr/local/ 这个目录下。 tar -zxvf /software/ kafka_2.11-0.9.0.1.tar.gz –C /usr/local/ 三、修改配置文件 备注:以下的配置文件是我自己的配置文件,你自己配置的时候根据自己的需求进行配置,并且以下只是部分配置项,可以根据自己的需求添加符合自己需求的配置项。官网有详细的配置解释,以下是官网部分配置项截图。 其实整个安装kafka的过程很简单,主要就是修改配置文件。配置文件在 /usr/local/kafka_2.11-0.9.0.1/config 这里 cd /usr/local/kafka_2.11-0.9.0.1/config 1, 修改server.properties #broker的全局唯一编号,不能重复 broker.id=0 #用来监听链接的端口

docker 安装kafka

吃可爱长大的小学妹 提交于 2019-12-21 11:35:46
1、下载镜像 这里使用了wurstmeister/kafka和wurstmeister/zookeeper这两个版本的镜像 docker pull wurstmeister/zookeeper docker pull wurstmeister/kafka 在命令中运行docker images验证两个镜像已经安装完毕 2.启动 启动zookeeper容器 docker run -d --name zookeeper -p 2181:2181 -t wurstmeister/zookeeper 启动kafka容器 docker run -d --name kafka --publish 9092:9092 --link zookeeper --env KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181 --env KAFKA_ADVERTISED_HOST_NAME=192.168.59.101 --env KAFKA_ADVERTISED_PORT=9092 --volume /etc/localtime:/etc/localtime wurstmeister/kafka:latest 192.168.59.101 改为宿主机器的IP地址,如果不这么设置,可能会导致在别的机器上访问不到kafka。 3. 测试kafka 进入kafka容器的命令行 运行

Filebeat+Kafka+Logstash+ElasticSearch+Kibana搭建完整版

风格不统一 提交于 2019-12-21 03:49:45
1. 了解各个组件的作用 Filebeat是一个日志文件托运工具,在你的服务器上安装客户端后,filebeat会监控日志目录或者指定的日志文件,追踪读取这些文件(追踪文件的变化,不停的读) Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据 Logstash是一根具备实时数据传输能力的管道,负责将数据信息从管道的输入端传输到管道的输出端;与此同时这根管道还可以让你根据自己的需求在中间加上滤网,Logstash提供里很多功能强大的滤网以满足你的各种应用场景 ElasticSearch它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口 Kibana是ElasticSearch的用户界面 在实际应用场景下,为了满足大数据实时检索的场景,利用Filebeat去监控日志文件,将Kafka作为Filebeat的输出端,Kafka实时接收到Filebeat后以Logstash作为输出端输出,到Logstash的数据也许还不是我们想要的格式化或者特定业务的数据,这时可以通过Logstash的一些过了插件对数据进行过滤最后达到想要的数据格式以ElasticSearch作为输出端输出,数据到ElasticSearch就可以进行丰富的分布式检索了 2. 安装各个组件并部署,并配置各个组件的关联配置文件 下载各个组件的安装包并解压