Apache Kafka 源码编译 Spark 大数据博客 -

Similar documents
Spark Standalone 模式应用程序开发 Spark 大数据博客 -

Ganglia 是 UC Berkeley 发起的一个开源集群监视项目, 主要是用来监控系统性能, 如 :cpu mem 硬盘利用率, I/O 负载 网络流量情况等, 通过曲线很容易见到每个节点的工作状态, 对合理调整 分配系统资源, 提高系统整体性能起到重要作用

Understanding IO patterns of SSDs

Previous on Computer Networks Class 18. ICMP: Internet Control Message Protocol IP Protocol Actually a IP packet

ICP Enablon User Manual Factory ICP Enablon 用户手册 工厂 Version th Jul 2012 版本 年 7 月 16 日. Content 内容

本文列出 Git 常用命令, 点击下图查看大图

[ 电子书 ]Spark for Data Science PDF 下载 Spark 大数据博客 -

<properties> <jdk.version>1.8</jdk.version> <project.build.sourceencoding>utf-8</project.build.sourceencoding> </properties>

AvalonMiner Raspberry Pi Configuration Guide. AvalonMiner 树莓派配置教程 AvalonMiner Raspberry Pi Configuration Guide

如何查看 Cache Engine 缓存中有哪些网站 /URL

PCU50 的整盘备份. 本文只针对操作系统为 Windows XP 版本的 PCU50 PCU50 启动硬件自检完后, 出现下面文字时, 按向下光标键 光标条停在 SINUMERIK 下方的空白处, 如下图, 按回车键 PCU50 会进入到服务画面, 如下图

Logitech G302 Daedalus Prime Setup Guide 设置指南

Chapter 1 (Part 2) Introduction to Operating System

Command Dictionary CUSTOM

组播路由 - MSDP 和 PIM 通过走

Chapter 7: Deadlocks. Operating System Concepts 9 th Edition

OTAD Application Note

上汽通用汽车供应商门户网站项目 (SGMSP) User Guide 用户手册 上汽通用汽车有限公司 2014 上汽通用汽车有限公司未经授权, 不得以任何形式使用本文档所包括的任何部分

实验三十三 DEIGRP 的配置 一 实验目的 二 应用环境 三 实验设备 四 实验拓扑 五 实验要求 六 实验步骤 1. 掌握 DEIGRP 的配置方法 2. 理解 DEIGRP 协议的工作过程

Triangle - Delaunay Triangulator

三 依赖注入 (dependency injection) 的学习

VAS 5054A FAQ ( 所有 5054A 整合, 中英对照 )

计算机组成原理第二讲 第二章 : 运算方法和运算器 数据与文字的表示方法 (1) 整数的表示方法. 授课老师 : 王浩宇

Microsoft RemoteFX: USB 和设备重定向 姓名 : 张天民 职务 : 高级讲师 公司 : 东方瑞通 ( 北京 ) 咨询服务有限公司

Chapter 11 SHANDONG UNIVERSITY 1

Oracle 一体化创新云技术 助力智慧政府信息化战略. Copyright* *2014*Oracle*and/or*its*affiliates.*All*rights*reserved.** *

Wireless Presentation Pod

Build a Key Value Flash Disk Based Storage System. Flash Memory Summit 2017 Santa Clara, CA 1

CloudStack 4.3 API 开发指南!

3dvia Composer Solidworks

SNMP Web Manager. User s Manual

#MDCC Swift 链式语法应 用 陈乘

朱晔和你聊 Spring 系列 S1E2: SpringBoot 并不神秘

XML allows your content to be created in one workflow, at one cost, to reach all your readers XML 的优势 : 只需一次加工和投入, 到达所有读者的手中

1. DWR 1.1 DWR 基础 概念 使用使用 DWR 的步骤. 1 什么是 DWR? Direct Web Remote, 直接 Web 远程 是一个 Ajax 的框架

The Design of Everyday Things

Decode Zend. Darkness/Airsupply

Supplementary Materials on Semaphores

Multiprotocol Label Switching The future of IP Backbone Technology

Keygen Codes For Photoshop Cs6 ->>> DOWNLOAD

测试 SFTP 的 问题在归档配置页的 MediaSense

public static InetAddress getbyname(string host) public static InetAddress getlocalhost() public static InetAddress[] getallbyname(string host)

NyearBluetoothPrint SDK. Development Document--Android

操作系统原理与设计. 第 13 章 IO Systems(IO 管理 ) 陈香兰 2009 年 09 月 01 日 中国科学技术大学计算机学院

libde265 HEVC 性能测试报告

TW5.0 如何使用 SSL 认证. 先使用 openssl 工具 1 生成 CA 私钥和自签名根证书 (1) 生成 CA 私钥 openssl genrsa -out ca-key.pem 1024

Frequently Asked Questions about Network Problem within America Area

CHAPTER 5 NEW INTERNET APPLICATIONS

新一代 ODA X5-2 低调 奢华 有内涵

菜鸟调错 原文出处 : 菜鸟调错作者 : 刘水镜 本系列文章经作者授权在看云整理发布, 未经作者允许, 请勿转载! 菜鸟调错 分享开发中遇到的各种各样的错误, 以及解决方法, 让更多的人少走同样的弯路 本文档使用看云构建

学习沉淀成长分享 EIGRP. 红茶三杯 ( 朱 SIR) 微博 : Latest update:

CHINA VISA APPLICATION CONCIERGE SERVICE*

密级 : 博士学位论文. 论文题目基于 ScratchPad Memory 的嵌入式系统优化研究

Technology: Anti-social Networking 科技 : 反社交网络

nbns-list netbios-type network next-server option reset dhcp server conflict 1-34

A Benchmark For Stroke Extraction of Chinese Characters

<?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <!--- global properties --> <property>

H3C CAS 虚拟机支持的操作系统列表. Copyright 2016 杭州华三通信技术有限公司版权所有, 保留一切权利 非经本公司书面许可, 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部, 并不得以任何形式传播 本文档中的信息可能变动, 恕不另行通知

第二小题 : 逻辑隔离 (10 分 ) OpenFlow Switch1 (PC-A/Netfpga) OpenFlow Switch2 (PC-B/Netfpga) ServerB PC-2. Switching Hub

DEV Office 客户端开发增强

Spark 源码编译遇到的问题解决 Spark 大数据博客 -

测试基础架构 演进之路. 茹炳晟 (Robin Ru) ebay 中国研发中心

ngx_openresty: an Nginx ecosystem glued by Lua

NetScreen 概念与范例. ScreenOS 参考指南 第 7 卷 : 虚拟系统. ScreenOS 编号 SC 修订本 E

IPC 的 Proxy-Stub 设计模式 ( c)

PTZ PRO 2. Setup Guide 设置指南

Logitech ConferenceCam CC3000e Camera 罗技 ConferenceCam CC3000e Camera Setup Guide 设置指南

Apache OpenWhisk + Kubernetes:

OpenCascade 的曲面.

Air Speaker. Getting started with Logitech UE Air Speaker. 快速入门罗技 UE Air Speaker. Wireless speaker with AirPlay. 无线音箱 (AirPlay 技术 )

我们应该做什么? 告知性分析 未来会发生什么? 预测性分析 为什么会发生 诊断性分析 过去发生了什么? 描述性分析 高级分析 传统 BI. Source: Gartner

Open Office Pdf Editor Extension Download ->>> DOWNLOAD

Outline. Motivations (1/3) Distributed File Systems. Motivations (3/3) Motivations (2/3)

U-CONTROL UMX610/UMX490/UMX250. The Ultimate Studio in a Box: 61/49/25-Key USB/MIDI Controller Keyboard with Separate USB/Audio Interface

Microsemi - Leading Innovation for China s Hyperscale Data Centers

Congestion Control Mechanisms for Ad-hoc Social Networks 自组织社会网络中的拥塞控制机制

Compile times - assert macros

Specifications 产品规格书 USB-D M X 控制器. DESCRIPTION: USB-D M X Control 产品名称 : MODEL NO: USB-DMX512-CONTROL 产品型号 :

绝佳的并行处理 - FPGA 加速的根本基石

Software Engineering. Zheng Li( 李征 ) Jing Wan( 万静 )

PubMed 简介. PubMed 是美国国立医学图书馆 (NLM) 所属的国家生物技术信息中心 (NCBI) 开发的因特网生物医学信息检索系统

EBD EBD. end

XPS 8920 Setup and Specifications

White Paper 3 System Level ESD Part II: Implementation of Effective ESD Robust Designs. Industry Council on ESD Target Levels

Computer Networks. Wenzhong Li. Nanjing University

SHANDONG UNIVERSITY 1

2. Introduction to Digital Media Format

FLIGHT INSTRUMENT PANEL

Safe Memory-Leak Fixing for C Programs

display portal server display portal user display portal user count display portal web-server

本文详细地介绍了如何将 Hadoop 上的 Mapreduce 程序转换成 Spark 的应用程序 有兴趣的可以参考一下 :

Declaration of Conformity STANDARD 100 by OEKO TEX

武汉大学 学年度第 1 学期 多核架构及编程技术 试卷(A)

Epetra_Matrix. August 14, Department of Science and Engineering Computing School of Mathematics School Peking University

IPC 的 Proxy-Stub 设计模式 (b)

ZWO 相机固件升级参考手册. ZWO Camera Firmware Upgrade reference manual. 版权所有 c 苏州市振旺光电有限公司 保留一切权利 非经本公司许可, 任何组织和个人不得擅自摘抄 复制本文档内容的部分或者全部, 并

Presentation Title. By Author The MathWorks, Inc. 1

TBarCode OCX Microsoft ActiveX compliant Barcode Control

BlueCore BlueTunes Configuration Tool User Guide

mod_callcenter callcenter.conf.xml 范例 odbc-dsn

Transcription:

经过近一个月时间, 终于差不多将之前在 Flume 0.9.4 上面编写的 source sink 等插件迁移到 Flume-ng 1.5.0, 包括了将 Flume 0.9.4 上面的 TailSou rce TailDirSource 等插件的迁移 ( 当然, 我们加入了许多新的功能, 比如故障恢复 日志的断点续传 按块发送日志以及每个一定的时间轮询发送日志而不是等一个日志发送完才发送另外一个日志 ) 现在我们需要将 Flume-ng 1.5.0 和最新的 Kafka-0.8.1.1 进行整合, 今天这篇文章主要是说如何编译 Kafka-0.8.1.1 源码 在讲述如何编译 Kafka-0.8.1.1 源码之前, 我们先来了解一下什么是 Kafka: Kafka is a distributed, partitioned, replicated commit log service. It provides the functionality of a messaging system, but with a unique design.(kafka 是一个分布式的 可分区的 (partitioned) 基于备份的 (replicated) 和 commit-log 存储的服务. 它提供了类似于 messaging system 的特性, 但是在设计实现上完全不同 ) kafka 是一种高吞吐量的分布式发布订阅消息系统, 它有如下特性 : (1) 通过 O(1) 的磁盘数据结构提供消息的持久化, 这种结构对于即使数以 TB 的消息存储也能够保持长时间的稳定性能 (2) 高吞吐量 : 即使是非常普通的硬件 kafka 也可以支持每秒数十万的消息 (3) 支持通过 kafka 服务器和消费机集群来分区消息 (4) 支持 Hadoop 并行数据加载 官方文档中关于 kafka 分布式订阅架构如下图 : 欢迎关注微信公共帐号 好了, 更多关于 Kafka 的介绍可以去 http://kafka.apache.org/ 里面查看 现在我们正入正题, 说说如何编译 Kafka-0.8.1.1, 我们可以用 Kafka 里面自带的脚本进行编译 ; 我们也可以用 sbt 进行 1 / 5

编译,sbt 编译有点麻烦, 我将在文章的后面进行介绍 一 用 Kafka 里面自带的脚本进行编译 下载好了 Kafka 源码, 里面自带了一个 gradlew 的脚本, 我们可以利用这个编译 Kafka 源码 : # wget http://mirror.bit.edu.cn/apache/kafka/0.8.1.1/kafka-0.8.1.1-src.tgz # tar -zxf kafka-0.8.1.1-src.tgz # cd kafka-0.8.1.1-src #./gradlew releasetargz 运行上面的命令进行编译将会出现以下的异常信息 : :core:signarchives FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':core:signarchives'. > Cannot perform signing task ':core:signarchives' because it has no configured signatory * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. BUILD FAILED 这是一个 bug(https://issues.apache.org/jira/browse/kafka-1297), 可以用下面的命令进行编译./gradlew releasetargzall -x signarchives 这时候将会编译成功 ( 在编译的过程中将会出现很多的 ) 在编译的过程中, 我们也可以指定对应的 Scala 版本进行编译 :./gradlew -PscalaVersion=2.10.3 releasetargz -x signarchives 2 / 5

编译完之后将会在 core/build/distributions/ 里面生成 kafka_2.10-0.8.1.1.tgz 文件, 这个和从网上下载的一样, 可以直接用 二 利用 sbt 进行编译 我们同样可以用 sbt 来编译 Kafka, 步骤如下 : # git clone https://git-wip-us.apache.org/repos/asf/kafka.git # cd kafka # git checkout -b 0.8 remotes/origin/0.8 #./sbt update [info] [SUCCESSFUL ] org.eclipse.jdt#core;3.1.1!core.jar (2243ms) [info] downloading http://repo1.maven.org/maven2/ant/ant/1.6.5/ant-1.6.5.jar... [info] [SUCCESSFUL ] ant#ant;1.6.5!ant.jar (1150ms) [info] Resolving org.apache.hadoop#hadoop-core;0.20.2... [info] Resolving com.yammer.metrics#metrics-annotation;2.2.0... [info] Resolving com.yammer.metrics#metrics-annotation;2.2.0... [success] Total time: 168 s, completed Jun 18, 2014 6:51:38 PM #./sbt package [info] Set current project to Kafka (in build file:/export1/spark/kafka/) Getting Scala 2.8.0... :: retrieving :: org.scala-sbt#boot-scala confs: [default] 3 artifacts copied, 0 already retrieved (14544kB/27ms) [success] Total time: 1 s, completed Jun 18, 2014 6:52:37 PM 对于 Kafka 0.8 及以上版本还需要运行以下的命令 : #./sbt assembly-package-dependency [info] Loading project definition from /export1/spark/kafka/project [warn] Multiple resolvers having different access mechanism configured with same name 'sbt-plugin-releases'. To avoid conflict, Remove duplicate project resolvers (`resolvers`) or rename publishing resolver (`publishto`). [info] Set current project to Kafka (in build file:/export1/spark/kafka/) 3 / 5

[warn] Credentials file /home/wyp/.m2/.credentials does not exist [info] Including slf4j-api-1.7.2.jar [info] Including metrics-annotation-2.2.0.jar [info] Including scala-compiler.jar [info] Including scala-library.jar [info] Including slf4j-simple-1.6.4.jar [info] Including metrics-core-2.2.0.jar [info] Including snappy-java-1.0.4.1.jar [info] Including zookeeper-3.3.4.jar [info] Including log4j-1.2.15.jar [info] Including zkclient-0.3.jar [info] Including jopt-simple-3.2.jar [warn] Merging 'META-INF/NOTICE' with strategy 'rename' [warn] Merging 'org/xerial/snappy/native/readme' with strategy 'rename' [warn] Merging 'META-INF/maven/org.xerial.snappy/snappy-java/LICENSE' with strategy 'rename' [warn] Merging 'LICENSE.txt' with strategy 'rename' [warn] Merging 'META-INF/LICENSE' with strategy 'rename' [warn] Merging 'META-INF/MANIFEST.MF' with strategy 'discard' [warn] Strategy 'discard' was applied to a file [warn] Strategy 'rename' was applied to 5 files [success] Total time: 3 s, completed Jun 18, 2014 6:53:41 PM 当然, 我们也可以在 sbt 里面指定 scala 的版本 : <!-- User: 过往记忆 Date: 14-6-18 Time: 20:20 bolg: https://www.iteblog.com 本文地址 :https://www.iteblog.com/archives/1044 过往记忆博客, 专注于 hadoop hive spark shark flume 的技术博客, 大量的干货过往记忆博客微信公共帐号 :iteblog_hadoop --> sbt "++2.10.3 update" sbt "++2.10.3 package" sbt "++2.10.3 assembly-package-dependency" 本文地址 : :https://www.iteblog.com/archives/1044, 过往记忆博客, 专注于 hadoop hive spark sha 4 / 5

Powered by TCPDF (www.tcpdf.org) rk flume 的技术博客, 大量的干货. 过往记忆博客微信公共帐号 :iteblog_hadoop 本博客文章除特别声明, 全部都是原创! 转载本文请加上 : 转载自过往记忆 (https://www.iteblog.com/) 本文链接 : () 5 / 5