温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Storm集群的搭建方式

发布时间:2021-09-15 17:55:44 来源:亿速云 阅读:126 作者:chen 栏目:云计算

这篇文章主要讲解了“Storm集群的搭建方式”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Storm集群的搭建方式”吧!

在Ubuntu 14.04下搭建Storm集群环境

Step 1. 下载所需的软件包:

1). JDK: http://www.oracle.com/technetwork/java/javase/downloads/index.html

2). Python 2.7.x: https://www.python.org/downloads/

 (注意:因为 Ubuntu 14.04 是自带 Python 2.7 的,所以如果是在Ubuntu 14.04下搭建Storm集群环境的话,这一步就可以免了)

3). Zookeeper: http://zookeeper.apache.org/releases.html#downloa

4). Storm: http://storm.apache.org/downloads.html

Step 2. 安装 JDK

假设下载后的JDK文件为 jdk-8u65-linux-x64.tar.gz

将文件复制到/usr/local/并解压:
 

$ cp jdk-8u65-linux-x64.tar.gz /usr/local/
$ cd /usr/local/
$ tar -zxvf jdk-8u65-linux-x64.tar.gz
$ ln -s jdk1.8.0_65 jdk

编辑~/.bashrc文件,设置环境变量:

$ vim ~/.bashrc

(*注意:如果之前没有安装vim,需要先输入下面的命令安装vim)

$ sudo apt-get install vim

在~/.bashrc文件的末尾加入环境变量设置:

export JAVA_HOME=/usr/local/jdk
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=$PATH:${JAVA_HOME}/bin:

更新环境变量的设置:

$ source ~/.bashrc

在终端中输入命令显示JDK的信息:

$ java -version

此时如果输出以下信息,则表示JDK已经安装成功

java version "1.8.0_65"
Java(TM) SE Runtime Environment (build 1.8.0_65-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.65-b01, mixed mode)

Step 3. 配置 Zookeeper 

1) 配置/etc/hosts文件

先配置/etc/hosts文件来绑定集群中的每台机器(这里假设仅使用2台机器):

$ vim /etc/hosts

在/etc/hosts文件的末尾加上配置信息:

192.168.1.104 jiamingmai-notebook
192.168.1.104 jm01
192.168.1.105 jiamingmai-PHA14
192.168.1.105 jm02

(*注意:根据自己的主机名和IP地址来设置,这里的jiamingmai-notebook和jiamingmai-PHA14是主机名,192.168.1.104和192.168.1.105分别是这2台机器的IP地址,jm01和jm02是自定义的名称. 如果不清楚机器的IP地址,可以使用 ifconfig 命令查看)

配置完/etc/hosts文件后,可以分别在2台机器上使用 ping 命令查看是否连通:

$ ping jm01
$ ping jm02
$ ping jiamingmai-notebook
$ ping jiamingmai-PHA14

如果输出类似如下的响应信息,表示可以成功连通:

64 bytes from jiamingmai-PHA14 (192.168.1.105): icmp_seq=1 ttl=64 time=2149 ms
64 bytes from jiamingmai-PHA14 (192.168.1.105): icmp_seq=2 ttl=64 time=1142 ms
64 bytes from jiamingmai-PHA14 (192.168.1.105): icmp_seq=3 ttl=64 time=134 ms
64 bytes from jiamingmai-PHA14 (192.168.1.105): icmp_seq=4 ttl=64 time=2.06 ms
64 bytes from jiamingmai-PHA14 (192.168.1.105): icmp_seq=5 ttl=64 time=2.07 ms
2) 配置 Zookeeper 的conf

复制压缩包 zookeeper-3.4.6.tar.gz 到/usr/local,并解压:

$ cp zookeeper-3.4.6.tar.gz /usr/local/
$ cd /usr/local
$ tar -zxvf zookeeper-3.4.6.tar.gz
$ ln -s zookeeper-3.4.6 zookeeper

配置zookeeper:

$ cd zookeeper/conf
$ cp zoo_sample.cfg zoo.cfg
$ vim zoo.cfg

配置 zoo.cfg 文本的内容如下:

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/usr/local/zookeeper/zkdata
dataLogDir=/usr/local/zookeeper/logs
clientPort=2181
server.1=jm01:2888:3888
server.2=jm02:2888:3888

每个参数的具体说明见http://my.oschina.net/JiamingMai/blog/614246

创建dataDir以及dataLogDir指定的文件夹:

$ mkdir /usr/local/zookeeper/zkdata
$ mkdir /usr/local/zookeeper/logs

在dataDir所指定的文件夹下(这里是/usr/local/zookeeper/zkdata)创建一个myid文件,内容为机器所对应的id. 例如,对于jm01,则其id为1. 输入如下命令创建 myid 文件:

$ cd /usr/local/zookeeper/zkdata
$ echo 1 > myid
3) 设置 Zookeeper 的环境变量

输入下面命令以编辑~/.bashrc文件:

$ vim ~/.bashrc

在末尾加入下面内容:

export ZOOKEEPER_HOME=/usr/local/zookeeper
export PATH=$PATH:${ZOOKEEPER_HOME}/bin

输入下面的命令更新环境变量设置:

$ source ~/.bashrc
4) 运行 Zookeeper

在集群中的机器上分别输入下面的命令运行Zookeeper:

$ zkServer.sh start

在各个机器上查看当前的状态:

$ zkServer.sh status

如果看到输出Mode: follower 或 Mode: leader,表示已成功启动

Step 4. 配置 Storm

1) 解压Storm的压缩文件

复制压缩包 apache-storm-0.10.0.tar.gz 到/usr/local,并解压:

$ cp apache-storm-0.10.0.tar.gz /usr/local/
$ cd /usr/local
$ tar -zxvf apache-storm-0.10.0.tar.gz
$ ln -s apache-storm-0.10.0 storm
2) 配置Storm的conf
$ vim /usr/local/storm/conf/storm.yaml

输入内容:

storm.zookeeper.servers:
     - "jm01"
     - "jm02"
 nimbus.host: "jm01"
 storm.local.dir: "/usr/local/storm/status"
 supervisor.slots.ports:
     - 6700
     - 6701
     - 6702
     - 6703

(*注意:各个参数的含义参考 http://my.oschina.net/JiamingMai/blog/536877. 各个机器上storm.zookeeper.servers设置以及nimbus设置必须是相同的)

创建storm.local.dir所指定的文件夹:

$ mkdir /usr/local/storm/status
3) 设置Storm的环境变量

输入下面命令以编辑~/.bashrc文件:

$ vim ~/.bashrc

在末尾加入下面内容:

export STORM_HOME=/usr/local/zookeeper
export PATH=$PATH:${STORM_HOME}/bin

输入下面的命令更新环境变量设置:

$ source ~/.bashrc
4) 运行Storm

在作为 nimbus 的机器上运行:

$ storm nimbus > /dev/null 2>&1 &

在作为 supervisor 的机器上运行:

$ storm supervisor > /dev/null 2>&1 &

(*注意:作为 nimbus 的机器,同时也可以作为 supervisor)

在其中的一台机器上开启Storm UI:

$ storm ui > /dev/null 2>&1 &

在浏览器的URL中输入127.0.0.1:8080打开UI页面,如下图所示:

Storm集群的搭建方式
 

Step 5. 提交JAR文件到集群

使用以下命令将打包后的JAR包提交到集群:

$ storm jar ./WordCounterTopology.jar jm.app.storm.WordCounterTopology wordCounter

其中,./WordCounterTopology.jar 是JAR文件所在的路径,jm.app.storm.WordCounterTopology 是main方法的类名,wordCounter是提交时自定义的Topology名称

感谢各位的阅读,以上就是“Storm集群的搭建方式”的内容了,经过本文的学习后,相信大家对Storm集群的搭建方式这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI