jstorm 读取mysql_jstorm运维经验转载
##轉之jstorm github 官方資料
1:啟動supervisor或nimbus最好是以后臺方式啟動, 避免終端退出時向jstorm發送信號,導致jstorm莫名其妙的退出
nohup jstorm supervisor >/dev/null 2>&1 &
2:推薦使用admin用戶啟動所有的程序, 尤其是不要用root用戶啟動web ui,
3:在安裝目錄下,建議使用jstorm-current鏈接, 比如當前使用版本是jstorm 0.9.4, 則創建鏈接指向jstorm-0.9.4, 當以后升級時, 只
需要將jstorm-current鏈接指向新的jstorm版本。
ln -s jstorm-0.9.4 jstorm-current
4:將JStorm的本地目錄和日志配置到一個公共目錄下, 比如/home/admin/jstorm_data 和/home/admin/logs, 不要配置到
$JSTORM_HOME/data和$JSTORM_HOME/logs,當升級時,替換整個目錄時, 容易丟失所有的本地數據和日志。
5:JStorm支持環境變量JSTORM_CONF_DIR, 當設置了該變量時, 會從該目錄里讀取storm.yaml文件, 因此建議設置該變量,該變量指定的目
錄存放配置文件storm.yaml, 以后每次升級時,就可以簡單的替換目錄就可以了
6:建議不超過1個月,強制重啟一下supervisor, 因為supervisor是一個daemon進程, 不停的創建子進程,當使用時間過長時, 文件打開的
句柄會非常多,導致啟動worker的時間會變慢,因此,建議每隔一周,強制重啟一次supervisor
7:JStorm web ui推薦使用apache tomcat 7.x, 默認的端口是8080, 如果需要將80 端口重定向到8080時, 可以用root執行命令:
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
8:Jvm GC 需要使用CMS GC 方式, JStorm默認已經設置, 使用Storm的朋友需要類似的設置,
worker.childopts: "-Xms1g -Xmx1g -Xmn378m -XX:SurvivorRatio=2 -XX:+UseConcMarkSweepGC -XX:+UseCMSInitiatingOccupancyOnly
-XX:CMSInitiatingOccupancyFraction=65"
9:對于一些重要的應用,可以對大集群進行分組, 修改配置文件的 “storm.zookeeper.root” 和 “nimbus.host”
10:Zeromq推薦2.1.7
64位java 就需要使用64位zeromq
在64位OS上使用32位java, 編譯zeromq 增加flag –m32
11:對于應用使用ZK較頻繁的,需要將JStorm的ZK 和應用的ZK 隔離起來,不混在一起使用
nimbus節點上建議不運行supervisor, 并建議把nimbus放置到ZK 所在的機器上運行
推薦slot數為 ”CPU 核 - 1“, 假設24核CPU, 則slot為23
12:配置cronjob,定時檢查nimbus和supervisor,一旦進程死去,自動重啟
13:ZK 的maxClientCnxns=500
14:Linux對外連接端口數限制,TCP client對外發起連接數達到28000左右時,就開始大量拋異常,需要
# echo "10000 65535" > /proc/sys/net/ipv4/ip_local_port_range
15:
閱讀(958) | 評論(0) | 轉發(0) |
總結
以上是生活随笔為你收集整理的jstorm 读取mysql_jstorm运维经验转载的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux 调度器内幕
- 下一篇: CPU所含有的寄存器