一、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