能夠經過在storm.yaml中增長以下樣例的配置,java
啓動JMX來監控storm的各個角色。apache
其中對於Worker的監控,由於一個節點上能夠有多個work,爲了防止端口號重複致使啓動失敗,因此用動態代替。spa
%ID%爲每一個work的佔用端口號,例如worker端口爲6704,則監視端口爲16704。.net
nimbus.childopts: "-Xmx1024m -Djava.rmi.server.hostname=192.168.1.1 -Dcom.sun.management.jmxremote.port=9801 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false" supervisor.childopts: "-Xmx2048m -Djava.rmi.server.hostname=192.168.1.1 -Dcom.sun.management.jmxremote.port=9802 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false" worker.childopts: "-Xmx2048m -Xms2048m -Xmn500m -XX:PermSize=256M -XX:MaxPermSize=256M -XX:+UseCompressedOops -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSClassUnloadingEnabled -XX:+UseCMSCompactAtFullCollection -XX:CMSFullGCsBeforeCompaction=0 -XX:+CMSParallelRemarkEnabled -XX:+DisableExplicitGC -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70 -XX:SoftRefLRUPolicyMSPerMB=0 -XX:+CMSConcurrentMTEnabled -Djava.net.preferIPv4Stack=true -Xloggc:/home/master/platform/apache-storm-0.9.4/logs/gc_%ID%.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.port=1%ID%"
下圖爲實際項目的配置文件截圖:code