topic

kafka delete topic

我是研究僧i 提交于 2020-01-15 10:00:57
Don't think it is supported yet. Take a look at this JIRA tracking Delete Topic. For delete manually Shutdown the cluster Clean kafka log dir (specified by the log.dir attribute in kafka config file ) as well the zookeeper data Restart the cluster For any given topic what you can do is Stop kafka Clean kafka log specific to partition, kafka stores its log file in a format of "logDir/topic-partition" so for a topic named "MyTopic" the log for partition id 0 will be stored in /tmp/kafka-logs/MyTopic-0 where /tmp/kafka-logs is specified by the log.dir attribute Restart kafka This is NOT a good

Flume - Kafka日志平台整合

谁说我不能喝 提交于 2020-01-14 04:16:29
1. Flume介绍 Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力。 agent agent本身是一个Java进程,运行在日志收集节点—所谓日志收集节点就是服务器节点。 agent里面包含3个核心的组件:source—->channel—–>sink,类似生产者、仓库、消费者的架构。 source source组件是专门用来收集数据的,可以处理各种类型、各种格式的日志数据,包括avro、thrift、exec、jms、spooling directory、netcat、sequence generator、syslog、http、legacy、自定义。 channel source组件把数据收集来以后,临时存放在channel中,即channel组件在agent中是专门用来存放临时数据的——对采集到的数据进行简单的缓存,可以存放在memory、jdbc、file等等。 sink sink组件是用于把数据发送到目的地的组件,目的地包括hdfs、logger、avro、thrift、ipc、file、null、Hbase、solr、自定义。 event 将传输的数据进行封装

Kafka动态增加Topic的副本

拥有回忆 提交于 2020-01-14 02:43:45
一、kafka的副本机制 由于Producer和Consumer都只会与Leader角色的分区副本相连,所以kafka需要以集群的组织形式提供主题下的消息高可用。kafka支持主备复制,所以消息具备高可用和持久性。 一个分区可以有多个副本,这些副本保存在不同的broker上。每个分区的副本中都会有一个作为Leader。当一个broker失败时,Leader在这台broker上的分区都会变得不可用,kafka会自动移除Leader,再其他副本中选一个作为新的Leader。 在通常情况下,增加分区可以提供kafka集群的吞吐量。然而,也应该意识到集群的总分区数或是单台 服务器 上的分区数过多,会增加不可用及延迟的风险。 关于副本的更多信息,请参考链接: https://blog.csdn.net/weixin_38750084/article/details/82942564 二、概述 目前的kakfa集群有3个节点,server.properties 关于topic的配置为: offsets.topic.replication.factor=1 transaction.state.log.replication.factor=1 transaction.state.log.min.isr=1 目前的设置为1个副本,这样不健全。如果有一台服务器挂掉了,那么就会造成数据丢失! 因此

zookeeper与kafka安装部署及java环境搭建(发布订阅模式)

做~自己de王妃 提交于 2020-01-14 00:21:42
1. ZooKeeper 安装部署 本文在一台机器上模拟 3 个 zk server 的集群安装 。 1.1. 创建目录、 解压 cd /usr/ # 创建项目目录 mkdir zookeeper cd zookeeper mkdir tmp mkdir zookeeper-1 mkdir zookeeper-2 mkdir zookeeper-3 cd tmp mkdir zk1 mkdir zk2 mkdir zk3 cd zk1 mkdir data mkdir log cd zk2 mkdir data mkdir log cd zk3 mkdir data mkdir log # 将压缩包分别解压一份到 zookeeper-1, zookeeper-2, zookeeper-3 目录下 tar -zxvf zookeeper-3.4.10.tgz 1.2. 创建每个目录下 conf/zoo.cfg 配置文件 /usr/zookeeper/zookeeper-1/zookeeper-3.4.10/conf/zoo.cfg 内容如下: tickTime=2000 initLimit=10 syncLimit=5 dataDir=/home/hadoop/tmp/zk1/data dataLogDir=/home/hadoop/tmp/zk1/log clientPort

java连接MQTT服务器

风格不统一 提交于 2020-01-13 23:39:28
目录 一、业务场景 二、本文只讲解java连接MQTT服务器进行数据处理 一、业务场景 硬件采集的数据传入EMQX平台(采用MQTT协议),java通过代码连接MQTT服务器,进行采集数据接收、解析、业务处理、存储入库、数据展示。 MQTT 是基于 发布(Publish)/订阅(Subscribe) 模式来进行通信及数据交换的。 二、本文只讲解java连接MQTT服务器进行数据处理 1、新建springboot项目,pom文件中直接引入下面的mqtt依赖 <dependency> <groupId>org.springframework.integration</groupId> <artifactId>spring-integration-mqtt</artifactId> </dependency> 2、 编写MQTT工具类 package com.siborui.dc.mqtt; import lombok.extern.slf4j.Slf4j; import org.eclipse.paho.client.mqttv3.*; import org.eclipse.paho.client.mqttv3.persist.MemoryPersistence; import org.springframework.beans.factory.annotation.Value;

【kafka】常用命令行

て烟熏妆下的殇ゞ 提交于 2020-01-13 12:27:24
启停 (下面操作,都已配置环境变量) 先启动zookeeper $ zkServer.sh status # 查看zookeeper状态 JMX enabled by default Using config: /home/whr/workbench/zookeeper/bin/../conf/zoo.cfg Mode: follower 启动kafka # 后台启动,需要配置参数 # 不加-daemon,会是一个阻塞进程,可以方便看日志 $ kafka-server-start.sh -daemon config/server.properties 关闭kafka $ kafka-server-stop.sh config/server.properties topic 创建一个topic topic的分区会被创建在当前主机,每个分区的副本会分配到集群的其他机器; 比如下面例子: 在master上创建了两个分区:first-0、first-1 在slave1上会存放分区之一的一个副本:first-0 在slave2上会存放分区之一的一个副本:first-1 # -create创建 # --zookeeper master:2181;信息写入zookeeper(新版:--bootstrap-server) # --partitions 2;partition数量 # -

kafka修改topic副本数

烈酒焚心 提交于 2020-01-13 12:05:25
工作案例: 大数据开发用系统脚本自动在kafka建topic,检查后才发现副本数只有1个,存在数据丢失的风险。需要立刻把副本数改为3个。 开始干活,首先想到的是下面的命令: ${BIN_PATH}/kafka-topics.sh --zookeeper ${ZOOKEEPER_ADDR} --topic $1 --partitions $2 --alter ${BIN_PATH}/kafka-topics.sh --zookeeper ${ZOOKEEPER_ADDR} --topic $1 --replication-factor $2 --alter 运行时修改partition成功,修改副本数失败,错误如下: :2181 --topic test --replication-factor 2 --alter Option "[replication-factor]" can't be used with option "[alter]" 马上度娘,有很多方法都是用json文件的方式修改,试验了下都不成功,直接去官网查权威 https://kafka.apache.org/21/documentation.html#basic_ops_increase_replication_factor 思路没错,原来是网上的json文件写不对。解决方法: 1/ 建一个测试topic

Apache Rocketmq 架构设计(三)

元气小坏坏 提交于 2020-01-13 01:57:25
架构设计 1 技术架构 RocketMQ架构上主要分为四部分,如上图所示: Producer:消息发布的角色,支持分布式集群方式部署。Producer通过MQ的负载均衡模块选择相应的Broker集群队列进行消息投递,投递的过程支持快速失败并且低延迟。 Consumer:消息消费的角色,支持分布式集群方式部署。支持以push推,pull拉两种模式对消息进行消费。同时也支持集群方式和广播方式的消费,它提供实时消息订阅机制,可以满足大多数用户的需求。 NameServer:NameServer是一个非常简单的Topic路由注册中心,其角色类似Dubbo中的zookeeper,支持Broker的动态注册与发现。主要包括两个功能:Broker管理,NameServer接受Broker集群的注册信息并且保存下来作为路由信息的基本数据。然后提供心跳检测机制,检查Broker是否还存活;路由信息管理,每个NameServer将保存关于Broker集群的整个路由信息和用于客户端查询的队列信息。然后Producer和Conumser通过NameServer就可以知道整个Broker集群的路由信息,从而进行消息的投递和消费。NameServer通常也是集群的方式部署,各实例间相互不进行信息通讯。Broker是向每一台NameServer注册自己的路由信息

RabbitMQ几种常用模式

爱⌒轻易说出口 提交于 2020-01-12 17:28:07
rabbitmq /** * 连接工具类 */ public class ConnectionUtil { /** * 建立与RabbitMQ的连接 * @return * @throws Exception */ public static Connection getConnection ( ) throws Exception { //定义连接工厂 ConnectionFactory factory = new ConnectionFactory ( ) ; //设置服务地址 factory . setHost ( "127.0.0.1" ) ; //端口 factory . setPort ( 5672 ) ; //设置账号信息,用户名、密码、vhost //Virtual代表虚拟消息服务器,每个服务器相对独立 factory . setVirtualHost ( "/" ) ; factory . setUsername ( "guest" ) ; factory . setPassword ( "guest" ) ; // 通过工程获取连接 Connection connection = factory . newConnection ( ) ; return connection ; } } 1.hello world 简单的说就是 一个消息发送者,一个队列

window环境搭建zookeeper,kafka集群

柔情痞子 提交于 2020-01-12 11:24:50
为了演示集群的效果,这里准备一台虚拟机(window 7),在虚拟机中搭建了单IP多节点的zookeeper集群(多IP节点的也是同理的),并且在本机(win 7)和虚拟机中都安装了kafka。 前期准备说明: 1.三台zookeeper服务器,本机安装一个作为server1,虚拟机安装两个(单IP) 2.三台kafka服务器,本机安装一个作为server1,虚拟机安装两个。 备注 :当然你可以直接在虚拟机上安装三个服务器分别为server1、server2、server3 。 虚拟机和本机网络环境 1.将虚拟机的网络模式调整为桥接模式,将虚拟机的防火墙功能关闭; 2.将主机的防火墙也关闭。 3.互相ping,测试是否能正常连接.。 下载kafka 从Kafka官网 http://kafka.apache.org/downloads 下载Kafka安装包。(要下载Binary downloads这个类型,不要下载源文件,方便使用) 下载zookeeper 从zookeeper官网 http://zookeeper.apache.org/releases.html 下载zookeeper安装包。 下载JDK 从官网 http://www.java.com/download/ 下载(建议下载Oracle官方发布的Java),,配置环境变量。 zookeeper集群环境搭建 本机配置