一、storm集群配置JDK环境变量问题java
问题分析:在linux系统下配置JDK后通常修改/etc/profile值进行环境变量配置,可是安装storm集群时会出现问题mysql
问题解决:须要在/etc/.bashrc文件中也加入环境变量否则安装的JDK没法使用。linux
二、supervisor相关问题sql
1)安装后supervisor名称相同而且启动报错问题数据库
问题分析:supervisor.cji中有行代码以下:bash
此代码是在启动supervisor时会找本机的hostname。ide
问题解决:修改天天机器的hostname与其相对应便可。this
2)启动Supervisor 时,出现java.lang.UnsatisfiedLinkError异常日志
具体错误信息以下:code
启动Supervisor 时,出现java.lang.UnsatisfiedLinkError: /usr/local/lib/libjzmq.so.0.0.0: libzmq.so.1: cannot open shared object file: No such file or directory 异常。
问题分析:未找到zmq 动态连接库。
问题解决1:配置环境变量 export LD_LIBRARY_PATH=/usr/local/lib
问题解决2:编辑/etc/ld.so.conf 文件,增长一行:/usr/local/lib,再次执行便可
使用sudo ldconfig 命令,重启Supervisor
三、发布topologies时,序列化log4j.Logger异常
问题分析:日志系统没法正确正确处理序列化操做
问题解决:使用slf4j替换log4j日志jar包处理
四、提交topology时出现以下异常:
Exception in thread "main" java.lang.IllegalArgumentException: xxx host is not set at backtype.storm.utils.NimbusClient.<init>(NimbusClient.java:30) at backtype.storm.utils.NimbusClient.getConfiguredClient(NimbusClient.java:17) at backtype.storm.StormSubmitter.submitJar(StormSubmitter.java:78) at backtype.storm.StormSubmitter.submitJar(StormSubmitter.java:71) at backtype.storm.StormSubmitter.submitTopology(StormSubmitter.java:50)
问题分析:启动nimbus没有问题,异常缘由是conf_dir路径设置错误
问题解决:修改bin/storm脚本,增长以下代码:
CONF_DIR = STORM_DIR + "/conf"
五、在使用storm0.7一下版本时,时间长会出现outofmenmory
问题分析:低于storm0.7版本的没触发一个tuple会建立一个hashmap存储该tuple所在的消息树结构,长时间会给gc形成巨大的压力致使出现outofmemory
问题解决:升级storm版本便可解决问题。
六、storm链接mysql数据库报异常
链接远程mysql数据库时报以下错误:
message from server:"Host FILTER" is not allowed to connect to this MySQL server
问题分析:多是没有给其IP访问Mysql数据库权限致使
问题解决:登陆mysql数据库,执行以下命令:
grant all on *.* to root@'%' identified by "123456";
此操做是给任意IP地址赋予访问权限(命令中*.*是通配任何IP,可指定IP 用户名:root 密码:123456)
转载自 : http://blog.yoodb.com/yoodb/article/detail/320