Twitter Storm安装配置(Ubuntu系统)单机版

要使用storm首先要安装以下工具:JDK、Python、zookeeper、zeromq、jzmq、storm

(注:各个模块都是独立的,如果安装失败或者卡顿可以单独百度某个模块的安装,都是可以的。)

JDK1.7安装 参见上篇《Ubuntu下安装配置JDK1.7》http://www.cnblogs.com/stone_w/p/4469548.html

 

第一步,安装Python2.7.2(ubuntu)

wget http://www.python.org/ftp/python/2.7.2/Python-2.7.2.tgz
tar zxvf Python-2.7.2.tgz
cd Python-2.7.2
./configure
make
make install
vi /etc/ld.so.conf
追加/usr/local/lib/
sudo ldconfig

 

第二步,安装zookeeper  

下载zookeeper 
解压,安装:http://pan.baidu.com/s/1jGjA90M

tar -zxvf zookeeper-3.3.5.tar.gz 
cp -R zookeeper-3.3.5 /usr/local/
ln -s /usr/local/zookeeper-3.3.5/ /usr/local/zookeeper
gedit /etc/profile (设置ZOOKEEPER_HOME和ZOOKEEPER_HOME/bin) 
export ZOOKEEPER_HOME="/path/to/zookeeper"
export PATH=$PATH:$ZOOKEEPER_HOME/bin
cp /usr/local/zookeeper/conf/zoo_sample.cfg /usr/local/zookeeper/conf/zoo.cfg (用zoo_sample.cfg制作$ZOOKEEPER_HOME/conf/zoo.cfg)
mkdir /tmp/zookeeper
mkdir /var/log/zookeeper

zookeeper的单机安装已经完成了。

 

第三步,安装zeromq以及jzmq
jzmq的安装貌似是依赖zeromq的,所以应该先装zeromq,再装jzmq。
1)安装zeromq:

wget http://download.zeromq.org/zeromq-2.2.0.tar.gz
tar zxf zeromq-2.2.0.tar.gz 
cd zeromq-2.2.0
./configure
make
make install
sudo ldconfig (更新LD_LIBRARY_PATH)

zeromq安装完成。
注意:如有有依赖报错,需要安装:
jzmq dependencies 依赖包
sudo yum install uuid*
sudo yum install libtool
sudo yum install libuuid 
sudo yum install libuuid-devel
2)安装jzmq

yum install git 
git clone git://github.com/nathanmarz/jzmq.git
cd jzmq
./autogen.sh
./configure
make
make install

然后,jzmq就装好了.
注意:在./autogen.sh这步如果报错:autogen.sh:error:could not find libtool is required to run autogen.sh,这是因为缺少了libtool,可以用#yum install libtool*来解决。


第四步,安装Storm

我使用的Storm版本是最新的稳定版0.8.2,下载,解压,修改/conf/storm.yaml配置文件:

Storm 0.8.2 下载  http://pan.baidu.com/s/1sjODKPB

unzip storm-0.8.2.zip
mv storm-0.8.2 /usr/local/
ln -s /usr/local/storm-0.8.2/ /usr/local/storm
gedit /etc/profile
export STORM_HOME=/usr/local/storm-0.8.2
export PATH=$PATH:$STORM_HOME/bin

到此为止单机版的Storm就安装完毕了。

启动Storm

/usr/local/zookeeper/bin/zkServer.sh start
cd /usr/local/storm-0.8.2
bin/storm nimbus &
bin/storm supervisor &
bin/storm ui &  

如果我们没有为storm添加环境变量,那么在启动的时候,我们就需要使用绝对路径或相对路径来定位/chenny/Storm/storm-0.8.2/bin/storm这个程序。启动完成后,我们可以使用jps来查看进程状态: >>jps    在没有运行任务时,我们必须应该要看到5个进程:QuorumPeerMain、nimbus、core、Jps、supervisor。否则 就需要检查是否正确地启动,如果启动之后没有过多久就停止了,我们就需要查看~/storm-0.8.2/logs下面的对应的log文件,查看引起异常 的原因是什么,然后解决后再次启动。    同时,我们可以在浏览器中输入http://127.0.0.1:8080来进入Storm UI的界面,可以查看Storm运行期间的相关信息。

 

第五步,测试一下本地模式的WordCount

网上别的资料介绍了许多方式来编译可执行的Topology程序,我们这里提供一个简单的办法,只需要使用Eclipse和相关的Jar包即 可,Ubuntu或者Windows环境下均可。我们需要从github上下载下来一个供初学者学习的storm-starter,同时,我们还需要有 commons-collections-3.2.1-bin.tar.gz、twitter4j-2.2.6.zip和storm-0.8.2.zip 等软件包,如果没有的话,需要去下载。以Windows XP下的Eclipse为例。首先我们将所有需要的包解压放到桌面,打开Eclipse,新建Java Project,名字任意取,我取名叫做MyFirstStormApp,然后点击Finish。

在MyFirstStormApp上右键,选择Import,然后选择File System:

在From Directory中输入相应的路径或者点击Browse,选择路径:

 

我们依次展开storm-starter-master/src/jvm/storm,选中jvm文件夹,点击确定,然后勾选jvm,点击finish:

这样,我们就在左侧看到Project的结构: 

 

拖动storm到src中,然后安装同样的方式将 storm-starter-master/storm-starter-master/multilang导入到项目中,然后我们就在左侧看到如下图所示的结构:

可以看到上面有很多红叉,此时,我们就需要导入项目所依赖的jar包,在项目上右键,选择Properties,然后Java Build Path,切换到Libraries选项夹下,点击Add External JARs: 

将storm-0.8.2/lib目录下的所有jar包都加入到项目中,将

commons-collections-3.2.1.jar添加到 项目中,将twitter4j-2.2.6/lib中的所有jar包加入到项目中,将storm-0.8.2/storm-0.8.2.jar加入到项目 中,然后点击OK,这个时候,可以看到项目中的所有错误都消失了。接下来,我们将PrintSampleStream.java和 TwitterSampleSpout.java中的注释取消,或者将这两个文件删除

在项目上选择Export,然后选择JAR file,在下一页,我们将项目导出,勾选如下图所示:

 

点击finish后,如果没有错误,只有warning的话,就不用管了,否则我们需要检查错误,然后重新打包。打包后的jar包是MyFirstStormApp.jar,将它拷贝到部署有Storm的机器上(/usr/local/storm-0.8.2目录下),然后在终端中输入: 

>>bin/storm jar MyFirstStormApp.jar storm.starter.WordCountTopology test2   如果没有错误,就成功提交了,在浏览器中输入http://127.0.0.1:8080,可以看到这个Topology已经在运行了,点击它的名字,可以进入Topology summary:

如果看到这些数据,就说明我们正确地完成了配置。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/547368.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

活动目录应用篇一:使用windows server 2008 backup备份AD是的账户权限问题

使用windowsserver2008backup备份AD的时候,需要提供执行账户的权限在指定备份计划的时候需要logonasabatchjob权限的用户这个权限到哪里添加呢?这个需要在组策略中去添加:说到组策略,我们知道组策略分为本地组策略与域组策略本地组…

计算机中隐藏的文件找不到了怎么办,隐藏文件夹找不到了怎么办【图解】

在今天,越来越多的人利用电脑来办公。甚至有一些工作,已经与电脑密切相关了。电脑以其强大的功能辅助人们工作,但有时在操作过程中会碰到这样或那样的问题。这个时候人们就会叹其操作的复杂性。就好比如有时你隐藏了一个文件,可是…

CentOS6 配置 yum 阿里源

一、CentOS6停止维护更新日期2020年11月30日 二、2020年12月2日下架了包括官方所有的CentOS6源(包括国内的镜像站) 三、CentOS6也完成了它的历史使命 在生产的环境中依旧由很多CentOS6系统依然在坚持,那么可以采取挂载光盘或者使用centos-va…

使用ab进行页面的压力测试

ab是apache自带的一个很好用的压力测试工具,当安装完apache的时候,就可以在bin下面找到ab 参数说明及示例 我们可以模拟100个并发用户,对一个页面发送1000个请求 输入命令:ab -n1000 -c100 http://stone_w.cnblogs.com/ 其中-n代…

poj 3067

树状数组求逆序数的应用: JapanTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 17874 Accepted: 4819Description Japan plans to welcome the ACM ICPC World Finals and a lot of roads must be built for the venue. Japan is tall island with N c…

取消计算机触摸板,笔记本电脑触摸板,详细教您笔记本电脑触摸板怎么关闭

很多的笔记本的用户都习惯使用鼠标,主要是因为笔记本触摸板操作不太方便,没有鼠标操作灵活。反而是经常在电脑中打字等操作时容易误碰到笔记本触摸板,导致输入错误等等,因此很多朋友一般会关闭触摸板,可是笔记本触摸板…

OC学习笔记--基础篇

本文简要介绍了一些oc的基础类型,包括数组、字典、字符串、消息传递、类、对象、方法、属性、协议和转发,希望对你有帮助。 OC数据类型 打印—类似print NSlog("hello word");数组 NSMutableArray (可变数组)和 NSAr…

linux gcc编译下的文件读写操作

linux下的文件操作 所有目录 1.文件及文件系统的定义 2.linux文件的类型 3.linux文件的权限 4.文件操作 4.1 文件的创建 4.2 文件的打开及关闭 4.3 文件的读写操…

PL/SQL Developer中文版下载以及使用图解(绿色版)

下载地址:http://pan.baidu.com/s/1eQCTmkM 1、运行plsqldev.exe程序; 2、设置Oracle主目录名/OCI库地址,如图: 重新启动程序。 3、配置登陆信息,连接数据库,如图:

实例应用 自定义页面taglib标签

关于继承TagSupport与BodyTagSupport的区别说明 * <code>TagSupport</code>与<code>BodyTagSupport</code>的区别主要是标签处理类是否需要与标签体交互。 * 如果不需要交互的就用<code>TagSupport</code>&#xff0c;如果需要交互就用<…

魔兽世界怀旧服聊天服务器中断,魔兽世界怀旧服世界服务器无法连接

本文导航第1页&#xff1a; 服务器无法连接解决方法服务器无法连接解决方法今天是魔兽世界怀旧服的公测时间&#xff0c;服务器已经爆了&#xff0c;很多玩家都在反应游戏服务器进不去&#xff0c;或者服务器断开连接等等问题&#xff0c;针对这些情况&#xff0c;小编特意给大…

Express框架使用以及数据库公共操作类整理(Win7下的NodeJs)

具体步骤&#xff1a; 1、安装开发工具WebStorm&#xff1b; 2、安装node/npm&#xff08;下载地址&#xff1a;https://nodejs.org/download/&#xff09;选择适合你的xxx.mis安装&#xff1b; 3、安装express框架(cmd窗口模式&#xff0c;用npm命令执行&#xff1a;npm in…

SimpleITK使用深度学习识别肺癌CT DICOM数据集

肺癌数据集DICOM &#xff1a;https://wiki.cancerimagingarchive.net/display/Public/LIDC-IDRI 首先用SimpleITK把mhd图片读入&#xff0c;对每个切片使用Gaussian filter然后使用阈值-600把肺部图片二值化&#xff0c;然后再分析该切片的面积&#xff0c;去掉面积小于30mm2的…

两个文件夹数据同步

echooffechoechoAuthorlongwenby2013echo每天下午16&#xff1a;00和晚上22&#xff1a;00做自动更新echo时间由您的计划任务时间确定echoRelationlongwen260qq.comechoQQ476376997echoTel13480986813echoxcopyD:\svn\te\*.*E:\svn\te\*.*/s/e/m/y转载于:https://blog.51cto.co…

如何让nodejs同步操作

众所周知&#xff0c;异步是nodejs中得天独厚的特点和优势&#xff0c;但同时在程序中同步的需求&#xff08;比如控制程序的执行顺序为&#xff1a;func1 -> func2 ->func3 &#xff09;也是很常见的。本文就是对这个问题记录自己的一些想法。 需要执行的函数&#xff…

Mediapipe框架学习之一——Win10安装Mediapipe环境

Mediapipe官方文档 Mediapipe框架学习之一——Win10安装Mediapipe环境 Mediapipe框架学习之二——Android SDK and NDK 配置 Mediapipe框架学习之三——构建 MediaPipe 的 Android aar 包 Mediapipe框架学习之四——利用 Mediapipe aar 包&#xff0c;在AS中构建基于 Media…

MemCache在win7上的可视化配置以及Nodejs/Net应用

惯例科普&#xff1a;MemCache是一套分布式的高速缓存系统&#xff0c;由LiveJournal的Brad Fitzpatrick开发&#xff0c;但目前被许多网站使用以提升网站的访问速度&#xff0c;尤其对于一些大型的、需要频繁访问数据库的网站访问速度提升效果十分显著。这是一套开放源代码软件…

Android AM命令行启动程序的方法

http://blog.csdn.net/sunrock/article/details/5675067 在前面添加一句 启动服务的话 使用 am startservice com.lxb.window/.RecordService即可在Android中&#xff0c;除了从界面上启动程序之外&#xff0c;还可以从命令行启动程序&#xff0c;使用的是命令行工具am.usage: …

Apache httpd 配置HTTPS SSL访问 443

2, 首先安装https模块yum install mod_ssl 3. 配置Apache Web服务器 首先&#xff0c;修改下面的配置文件。仅需配置红色部分 SSLCertificateFile 和 SSLCertificateKeyFile # vim /etc/httpd/conf.d/ssl.conf # # When we also provide SSL we have to listen to the # t…

Redis在win7上的可视化应用

Redis是一个key-value存储系统。和Memcached类似&#xff0c;它支持存储的value类型相对更多&#xff0c;包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash&#xff08;哈希类型&#xff09;。这些数据类型都支持push/pop、add/remove及取交集并…