




已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Chapter 1: Flume+Kafka+Storm安装配置1.1 实时日志分析系统简介 日志实时分析处理时,可分为四部分,如下图2-1所示:1)数据采集 负责从各节点上实时采集数据,选用Apache的Flume来实现2)数据接入 由于采集数据的速度和数据处理的速度不一定同步,因此添加一个消息中间件来作为缓冲,选用Apache的Kafka3)流式计算 对采集到的数据进行实时分析,选用Apache的Storm4)数据输出对分析处理后的结果持久化保存,暂定为Mysql数据库1.2 安装Storm集群下面是搭建一个Storm集群需要依次完成的安装步骤:1、搭建Zookeeper集群2、在主控节点和工作节点服务器上安装Storm依赖软件3、在主控节点和工作节点服务器上安装Storm4、修改storm.yaml配置文件5、启动Storm各后台进程1.2.1 搭建Zookeeper集群1、Zookeeper下载地址:/dyn/closer.cgi/zookeeper/2、在三台服务器上分别解压缩下载文件cd /usr/localtar -xzvf zookeeper-3.4.5.tar.gz3、修改三台服务器的/etc/hosts文件,内容如下所示:06 cddserver122 cddserver223 cddserver34、在conf/zoo.cfg配置文件,增加下列内容:tickTime=2000initLimit=10syncLimit=5dataDir=/home/zookeeper/zkdatadataLogDir=/home/zookeeper/logsclientPort=2181server.1=cddserver1:2888:3888server.2=cddserver2:2888:3888server.3=cddserver3:2888:38885、conf/zoo.cfg文件中的dataDir参数指定目录下创建myid文件,里面内容为一个数字,用来标识当前主机,conf/zoo.cfg文件中配置的server.X中X为什么数字,则myid文件中就输入这个数字echo 1 /home/zookeeper/zkdata/myidecho 2 /home/zookeeper/zkdata/myidecho 3 /home/zookeeper/zkdata/myid6、在/etc/profile中增加如下内容:export ZOOKEEPER_HOME=/usr/local/zookeeper-3.4.5export PATH=$ZOOKEEPER_HOME/bin:$PATH7、在集群中的每个节点上执行下列命令启动zookeeperzkServer.shstart8、在集群中的每个节点上执行下列命令查看zookeeper执行状态zkServer.shstatusdataDir指定Zookeeper的数据文件目录server.id=host:port:port,id是为每个Zookeeper节点的编号,保存在dataDir目录下的myid文件中,cddserver1、cddserver2、 cddserver3表示各个Zookeeper节点的hostname,第一个port是用于连接leader的端口,第二个port是用于leader选举的端口。1.2.2 安装依赖软件1)安装JDK 6JDK6下载地址:/technetwork/java/javase/downloads/java-archive-downloads-javase6-419409.html1、下载JDK 62、增加可执行权限:chmod +x jdk-6u45-linux-x64.bin3、执行:./jdk-6u45-linux-x64.bin(安装时注意操作系统位数)4、配置JAVA_HOME环境变量export JAVA_HOME=/usr/local/jdk1.6.0_45export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarexport PATH=$JAVA_HOME/bin:$PATH5、运行java、javac命令,测试java是否正常安装2)安装Python 2.6.6Python 2.6.6下载地址:/ftp/python/2.6.6/Python-2.6.6.tar.bz21、下载Python 2.6.62、编译安装Python 2.6.6tar -jxvf Python-2.6.6.tar.bz2cd Python-2.6.6./configuremakemake install3. 测试Python2.6.6python -V1.2.3 Storm集群安装1、Storm下载地址:/downloads.html2、解压下载包到三台服务器上cd /usr/localtar -xzvf apache-storm-0.9.2-incubating.tar.gz3、修改解压目录下的conf/storm.yaml文件storm.zookeeper.servers: - 06 - 23 - 22storm.local.dir: /var/log/stormnimbus.host: 06supervisor.slots.ports: - 6700 - 6701 - 6702 - 67034、在/etc/profile文件中配置Storm环境变量:export STORM_HOME=/usr/local/ apache-storm-0.9.2-incubatingexport PATH=$PATH:$STORM_HOME/binstorm.zookeeper.servers: Storm集群使用的Zookeeper集群地址。storm.local.dir: Nimbus和Supervisor进程用于存储少量状态,如jars、confs等的本地磁盘目录,需要提前创建该目录并给以足够的访问权限。然后在storm.yaml中配置该目录。nimbus.host: Storm集群Nimbus机器地址,各个Supervisor工作节点需要知道哪个机器是Nimbus,以便下载Topologies的jars、confs等文件。supervisor.slots.ports: 对于每个Supervisor工作节点,需要配置该工作节点可以运行的worker数量。每个worker占用一个单独的端口用于接收消息,该配置选项即用于定义哪些端口是可被worker使用的。默认情况下,每个节点上可运行4个workers,分别在6700、6701、6702和6703端口。1.2.4 启动Storm各后台进程1、在Storm主控节点上运行:storm nimbus /dev/null 2&1 &2、在Storm主控节点上运行:storm ui /dev/null 2&1 &3、在Storm工作节点上运行:storm supervisor /dev/null 2&1 &第三步执行后,可以通过http:/nimbus host:8080观察集群的worker资源使用情况、Topologies的运行状态等信息。列出Storm Topology:storm list停止Storm Topology:storm kill topologyname提交Storm Topology:storm jar mycode.jar storm.MyTopology arg1 arg2 .mycode.jar:包含Topology实现代码的jar包storm.MyTopology:main方法的入口,即main方法所在类名arg1、arg2等为main方法参数1.2.5 停止nimbus和supervisor相关进程停止nimbus相关进程:kill ps aux | egrep (daemon.nimbus)|(storm.ui.core) | fgrep -v egrep | awk print $2停止supervisor的所有storm进程:kill ps aux | fgrep storm | fgrep -v fgrep | awk print $21.2.6 问题处理1).SocketException: Address family not supported by protocol family解决办法:在C:WindowsSystem32driversetchosts文件中增加: localhost2)当Storm进程异常终止,再次启动supervisor进程时,需删除storm.local.dir目录下的supervisor和workers目录3)22:8080/index.html页面,Host域显示主机名不对解决办法:在/etc/hosts文件中增加: hostname4)执行zkServer.sh status命令查看Zookeeper状态时,报下错误解决办法:查看防火墙状态:service iptables status关闭防火墙:service iptables stop三台机器的Zookeeper重新启动1.3 Kafka安装配置1、kafka下载地址:/downloads.html2、分别在三台服务器上解压下载的压缩包cd /usr/localtar -xzvf kafka_2.9.2-.tgz3、修改配置文件config/pertieszookeeper.connect=06:2181,22:2181,23:2181broker.id分别改成:broker.id=206broker.id=222broker.id=223分别改为:=06=22=234、在/etc/profile文件中配置Kafka环境变量:export KAFKA_HOME=/usr/local/ kafka_2.9.2-export PATH=$PATH:$KAFKA_HOME/bin5、为使Storm和Kafka能够整合,执行下面命令:cp $KAFKA_HOME/libs/kafka_2.9.2-.jar $STORM_HOME/libcp $KAFKA_HOME/libs/scala-library-2.9.2.jar $STORM_HOME/libcp $KAFKA_HOME/libs/metrics-core-2.2.0.jar $STORM_HOME/lib6、为能连接Oracle和Mysql数据库,需找到ojdbc6.jar和mysql-connector-java-5.1.31-bin.jar包,复制到$STORM_HOME/lib7、/maven2/com/n3twork/storm/storm-kafka/20140521/网址中下载storm-kafka-20140521.jar,复制到$STORM_HOME/lib1.3.1 Kafka主要命令1、启动Kafka服务:kafka-server-start.sh $KAFKA_HOME/config/perties /dev/null 2&1 &2、停止Kafka服务:kafka-server-stop.sh3、创建topic:kafka-topics.sh -create -zookeeper 06:2181,22:2181,23:2181 -replication-factor 2 -partitions 6 -topic kafka_test4、查看topic分布情况:kafka-topics.sh -list -zookeeper 06:2181,22:2181,23:2181kafka-topics.sh -describe -zookeeper 06:2181,22:2181,23:2181 -topic kafka_test5、控制台发送消息:kafka-console-producer.sh -broker-list 06:9092,22:9092,23:9092 -topic kafka0016、控制台接收消息:kafka-console-consumer.sh -zookeeper 06:2181,22:2181, 23:2181 -from-beginning -topic kafka0017、删除topic,慎用,只会删除zookeeper中的元数据,消息文件须手动删除:kafka-run-class.sh kafka.admin.DeleteTopicCommand -topic kafka001 -zookeeper 06:2181,22:2181, 23:21811.3.2 问题处理1)Unrecognized VM option +UseCompressedOops解决办法:查看$KAFKA_HOME/bin/kafka-run-class.sh,找到if -z $KAFKA_JVM_PERFORMANCE_OPTS ; then KAFKA_JVM_PERFORMANCE_OPTS=-server -XX:+UseCompressedOops-XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -XX:+CMSScavengeBeforeRemark -XX:+DisableExplicitGC -Djava.awt.headless=truefi去掉-XX:+UseCompressedOops1.4 Flume安装配置1.4.1 Flume数据采集端安装1、Flume下载地址:/download.html(可不安装JDK)2、解压下载的压缩包cd /usr/localtar -xzvf apache-flume-1.5.0-bin.tar.gzmv apache-flume-1.5.0-bin flume-1.5.03、在/etc/profile文件中配置Flume环境变量:export FLUME_HOME=/usr/local/flume-1.5.0export PATH=$PATH:$FLUME_HOME/bin1.4.2 Flume数据接收端安装1、Flume下载地址:/download.html2、在06、22、23上解压下载的压缩包cd /usr/localtar -xzvf apache-flume-1.5.0-bin.tar.gzmv apache-flume-1.5.0-bin flume-1.5.03、在/etc/profile文件中配置Flume环境变量:export FLUME_HOME=/usr/local/flume-1.5.0export PATH=$PATH:$FLUME_HOME/bin4、 复制下列jar包到06、22、23的$FLUME_HOME/lib目录(flumeng-kafka-plugin.jar源包下载地址:/beyondj2ee/flumeng-kafka-plugin,对其做了修改,将header部分也发送到kafka) 3、在192.168.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 渔业捕捞权转让合同
- 高端酒店客房预订管理软件开发协议
- 中小学校道德领导的定义与内涵探讨
- 《数学几何深化:空间几何与解析几何教学》
- 网络内容审核与管理规范
- 医学影像学放射影像解读知识考点
- 资源消耗一资源消耗统计表格
- 力学概念入门:高中物理力学课程教案
- 供应链管理绩效评估表(年度)
- 建筑学建筑构造专项知识考核点
- 2025年行政能力测验考试真题及答案
- 2024年宁夏中卫沙坡头区招聘社区专职工作者真题
- 2025年江苏省南京市中考物理模拟练习卷(含答案)
- 人教部编版三年级下册语文各单元【习作范文】
- 教师普法考试题及答案
- 水冷空调项目可行性研究报告
- 2025年小产权房的买卖合同5篇
- 清运垃圾污水合同范本
- 夫妻婚内财产财产协议书
- 天津2025年中国医学科学院放射医学研究所第一批招聘笔试历年参考题库附带答案详解析
- 天耀中华合唱简谱大剧院版
评论
0/150
提交评论