搭建Storm集群
2016-02-22 20:02
405 查看
今天完成了storm集群的搭建,写一篇博客记录一下,方便以后工作。
总体分为5步。
我准备了3台机器
, 其充当的角色分别是
nimbus : 10.101.214.71
zookeeper: 10.101.214.71, 10.101.214.73 , 10.101.214.74
supervisor : 10.101.214.73 , 10.101.214.74
它们之间的关系如图所示:
可以是其他版本的java ,此处我选择了 java8,3台机器均需要安装
3台机器均需要安装Zookeeper, 安装过程相同,唯一不同的地方在与myid
3台机器均需要安装Storm ,配置完全相同
使用supervisor(注意不是 storm supervisor)启动apache storm的原因是: 在apahce storm后台进程因异常原因停止工作时,supervisor会重新启动它们。如果不想使用supervisor ,可以手动启动,具体方法看第6步
启动成功后,通过 http://服务器IP:8080/ 访问storm UI。
如果不想使用supervisor启动storm ,可以使用手动启动
nohup storm nimbus &。可能会遇到 permission denied异常,需要更改storm文件夹的权限或者使用sudo 命令
nohub storm supervisor &
nohub storm ui &
总体分为5步。
1. 机器准备
我准备了3台机器, 其充当的角色分别是
nimbus : 10.101.214.71
zookeeper: 10.101.214.71, 10.101.214.73 , 10.101.214.74
supervisor : 10.101.214.73 , 10.101.214.74
它们之间的关系如图所示:
2.安装java8
可以是其他版本的java ,此处我选择了 java8,3台机器均需要安装sudo tar zxvf jdk.tar.gz -C /usr/java //解压出的目录名修改成java8 cd /usr/java sudo mv jdk1.8.0 java8 //修改配置文件 vim ~/.bashrc vim /etc/bashrc //添加以下内容 export JAVA_HOME=/usr/java/java8 export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH=${JAVA_HOME}/bin:$PATH //配置生效 source ~/.bashrc
3.安装Zookeeper
3台机器均需要安装Zookeeper, 安装过程相同,唯一不同的地方在与myid//安装zookeeper sudo yum install zookeeper -b current //配置zookeeper vim /home/admin/zookeeper-3.4.3/conf/zoo.cfg tickTime=2000 initLimit=10 syncLimit=5 dataDir=/home/admin/zookeeper-3.4.3/data dataLogDir=/home/admin/zookeeper-3.4.3/data/log clientPort=2181 server.1=10.101.214.71:2888:3888 server.2=10.101.214.73:2888:3888 server.3=10.101.214.74:2888:3888 // 创建log文件夹 mkdir /home/admin/zookeeper-3.4.3/data/log //在 10.101.214.71 //在/home/admin/zookeeper-3.4.3/data 下创建 myid ,写上 1 echo 1 >/home/admin/zookeeper-3.4.3/data/myid //在 10.101.214.73 //在/home/admin/zookeeper-3.4.3/data 下创建 myid ,写上 2 echo 2 >/home/admin/zookeeper-3.4.3/data/myid //在 10.101.214.74 //在/home/admin/zookeeper-3.4.3/data 下创建 myid ,写上 3 echo 3 >/home/admin/zookeeper-3.4.3/data/myid //启动zookeeper bin/zkServer.sh start //查看zookeeper启动状态 ps -aux | grep “zookeeper" echo srvr | nc 127.0.0.1 2181
4.安装storm
3台机器均需要安装Storm ,配置完全相同//下载storm sudo wget [url] //解压 sudo unzip -o apache-storm-0.9.1-incubating.zip -d /usr/share/ //生成一个版本无关的软链接,这种方式便于将来升级版本或回滚版本 sudo ln -s /usr/share/apache-storm-0.9.1-incubating/ /usr/share/storm //修改文件夹权限 sudo chown -R admin:admin /usr/share/apache-storm-0.9.1-incubating/ sudo chown -R admin:admin /usr/share/storm //将storm的可执行程序软连接到/usr/bin/storm目录下 sudo ln -s /usr/share/storm/bin/storm /usr/bin/storm //将storm的默认配置文件移到/etc/storm下,建立软链接以便storm可以找到它 sudo mkdir /etc/storm sudo chown admin:admin /etc/storm //对/usr/share/storm/conf/storm.yaml进行配置 vim /usr/share/storm/conf/storm.yaml storm.zookeeper.servers: - "10.101.214.71" - "10.101.214.73" - "10.101.214.74" nimbus.host: "10.101.214.71" supervisor.slots.ports: - 6700 - 6701 - 6702 - 6703 storm.local.dir: "/home/storm"
5.安装supervisor启动Apache storm
使用supervisor(注意不是 storm supervisor)启动apache storm的原因是: 在apahce storm后台进程因异常原因停止工作时,supervisor会重新启动它们。如果不想使用supervisor ,可以手动启动,具体方法看第6步// 安装和启动supervisord服务 sudo yum install supervisor -b current //在/etc/supervisord.conf中配置storm守护进程(遇到一场终止时自动重启) vim /etc/supervisord.conf //注意 supervisor启动时是非常干净的环境,因此需要配置上环境变量 environment=PATH="/usr/java/java8/bin:/usr/java/java8/bin:/usr/ali/bin:/usr/java/java8/bin:/usr/ali/bin:/usr/kerberos/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/home/canghong.ch/bin:/home/admin/dayu/bin/:/apsara/deploy/rpc_wrapper:/apsara/deploy:/home/tops/bin/" enviroment=JAVA_HOME="/usr/java/java8" enviroment=JRE_HOME=“/usr/java/java8/jre" //10.101.214.71 [program:storm-nimbus] command=storm nimbus directory=/home/storm autorestart=true user=admin [program:storm-ui] command=storm ui directory=/home/storm autorestart=true user=admin //10.101.214.73 [program:storm-supervisor] command=storm supervisor directory=/home/storm autorestart=true user=admin //10.101.214.74 [program:storm-supervisor] command=storm supervisor directory=/home/storm autorestart=true user=admin //创建/home/storm sudo mkdir /home/storm sudo chown admin:admin /home/storm sudo /etc/init.d/supervisor stop //终止supervisord服务 sudo /etc/init.d/supervisor start //重启supervisord服务 ps aux | grep “xxxx” // 来查看服务是否启动 jps //也可以通过这个命令查看
6.其他
启动成功后,通过 http://服务器IP:8080/ 访问storm UI。如果不想使用supervisor启动storm ,可以使用手动启动
nohup storm nimbus &。可能会遇到 permission denied异常,需要更改storm文件夹的权限或者使用sudo 命令
nohub storm supervisor &
nohub storm ui &
相关文章推荐
- PAT--朋友圈--并查集
- “瀑布流式”图片懒加载代码解析及优化(二)
- QToolBar也是QWidget,可以放在QWidget的中间
- android_demo01
- css定高块级元素垂直居中
- 第0周周赛——极限手速赛(题解)之上篇
- PAT--公路村村通--最小生成树--Kruskal算法
- 合并两张表的信息
- 运算符
- Redis学习笔记
- PAT--列出连通集--dfs&bfs
- POJ 3111 K Best(最大化平均值)
- 家庭装修顺序,备用!
- PAT--地下迷宫探索--dfs
- c++ vector的用法
- 前缀表达式求值--栈
- 对称的二叉树
- 【iOS】手势识别
- BZOJ3091: 城市旅行
- HDOJ-4557 非诚勿扰