storm

作者: 夙夜M | 来源:发表于2017-08-31 19:44 被阅读0次
    storm作业

    storm启停脚本的编写:

    第一步:在master节点创建start-supervisor.sh脚本,然后分发到各个服务器,就可以通过运行该脚本开启supervisor服务

    start-supervisor.sh脚本

    #!/bin/bash

    #使配置的storm环境变量生效

    source /home/hadoop/.bashrc

    #后台运行supervisor

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

    第二步:在master节点创建supervisor-hosts文件,用来存放主机名

    supervisor-hosts

    hadoop02

    hadoop03

    hadoop04

    第三步:在master节点创建start-all.sh启动所有supervisor

    start-all.sh

    #!/bin/bash

    source /home/hadoop/.bashrc

    #重写bin和supervisor目录

    bin=/home/hadoop/apps/apache-storm-0.9.7/bin

    supervisors=/home/hadoop/apps/apache-storm-0.9.7/bin/supervisor-hosts

    #启动主节点

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

    #读取supervisor-hosts文件中每一个节点执行start-supervisor.sh脚本启动supervisor服务

    #while后面的supervisor用来接收读取到的每一行数据

    cat $supervisors | while read supervisor

    do

    echo $supervisor

    ssh $supervisor $bin/start-supervisor.sh

    done

    第四步:写停止脚本

    stop-all.sh

    #!/bin/bash

    source /home/hadoop/.bashrc

    #重写bin和supervisor目录

    bin=/home/hadoop/apps/apache-storm-0.9.7/bin

    supervisors=/home/hadoop/apps/apache-storm-0.9.7/bin/supervisor-hosts

    #把nimbus相关的进程都杀掉

    kill -9 `ps -ef | grep java | grep nimbus | awk '{print $2}'`

    #停止所有的supervisor

    cat $supervisors | while read supervisor

    do

    echo $supervisor

    ssh $supervisor $bin/stop-supervisor.sh &

    done

    第五步:在各节点的storm的bin目录下编写脚本stop-supervisor.sh

    stop-supervisor.sh

    #!/bin/bash

    source /home/hadoop/.bashrc

    #杀死supervisor进程

    kill -9 `ps -ef | grep java | grep supervisor | awk '{print $2}'`

    第六步:上传所有脚本到storm/bin目录下,并将start-supervisor.sh和stop-supervisor.sh分发到所有storm集群节点:Hadoop02,Hadoop04

    第七步:为了防止重名:修改脚本名字为 storm-start-all.sh 和 storm-stop-all.sh

    第八步:修改所有脚本运行权限:chmod 755 *.sh

    在家目录下运行stop-storm-all.sh脚本

    出错:

    错误一:-bash: /home/hadoop/apps/apache-storm-0.9.7/bin/start-storm-all.sh: /bin/bash^M: bad interpreter: No such file or directory

    [hadoop@hadoop03 bin]$ sh start-storm-all.sh

    : No such file or directory /home/hadoop/.bashrc

    先注释掉.bashrc命令行,在外部手动开启全局环境变量

    错误二:单独运行脚本stop-supervisor.sh  arguments must be process or job IDs0


    storm搭建:

    官网:storm.apache.org

    版本:apache-storm-1.1.1.tar.gz

    配置文件storm.yaml的修改 

    参考http://storm.apache.org/releases/1.1.1/Setting-up-a-Storm-cluster.html

    1)storm.zookeeper.servers: This is a list of the hosts in the Zookeeper cluster for your Storm cluster. It should look something like:

    storm.zookeeper.servers:

    - "hadoop02"

    - "hadoop03"

    - "hadoop04"

    2)storm.local.dir

    storm.local.dir:"/home/hadoop/log/storm"

    3)nimbus.seeds:---主节点

    nimbus.host: "hadoop03"

    4)supervisor.slots.ports:

    supervisor.slots.ports:

    - 6700

    - 6701

    - 6702

    - 6703

    发送安装包

    运行storm集群

    在主节点运行Nimbus:【Hadoop03】bin/storm nimbus

    后台:nohup storm nimbus >/dev/null  2>&1 &

    启动后台ui管理界面:nohup storm ui >/dev/null  2>&1 &

    在其余节点运行Supervisor:bin/storm supervisor

    后台:nohup storm supervisor >/dev/null  2>&1 &

    在UI界面查看storm: http://{ui host}:8080.

    强制杀死:kill -s -9 进程号

    搭建集群中遇到的问题

    1、参数supervisor.slots.ports是用来指定一个节点最多可以运行的task的数目,storm中一个节点最多四个task,其中的一个端口号表示一个task任务

    2、启动storm之前可以先配置环境变量,然后在家目录下就可以执行命令

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

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

    3、要查看storm的ui界面,首先要在后台开启ui管理界面才能访问

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

    4、nimbus和supervisor的节点选取:nimbus选取在Hadoop03(hdfs的active NameNode,纯属主观意愿),supervisor的节点选取在Hadoop02,Hadoop03,Hadoop04

    5、nimbus,supervisor是什么?

    storm中8大概念:

    1)Topologies:拓扑任务:地铁运送乘客的任务,其中包含多个spout和bolt

    2)Streams:地铁5号线,运送乘客(数据)

    3)Spouts:起始站

    4)Bolts:中间站

    5)Stream groupings

    6)Reliability

    7)Tasks

    8)Workers


    storm架构:

    默认情况下,一个supervisor节点最多可以启动4个worker进程,每一个topology默认占用一个worker进程,每个worker进程会启动1个或者多个executor,每个executor启动1个task。

    最重要的是并行度/高并发以及线程安全的实现。


    相关文章

      网友评论

          本文标题:storm

          本文链接:https://www.haomeiwen.com/subject/wylodxtx.html