2015年12月16日星期三

JDG_012:JDG Demo 演示:jdg-visualizer

环境:MAC OS 10.10.5 + JDG 6.5.1 + JBoss EAP 6.4.0

jdg-visualizer 可以监控JDG集群中各个节点的数据数量分布情况。

1. 下载 jdg-visualizer
下载地址:https://github.com/infinispan/visual

2. 下载 hotrod-demo
hotrod-demo 可以向集群中某个节点插入数据,从而导致整个集群的数据重新分布。
下载地址:https://github.com/saturnism/hotrod-demo/

3. 编译 jdg-visualizer
mvn clean package
编译成功后会生成 jdg-vistualizer.war 文件。

4. 编译 hotrod-demo
mvn clean package
编译成功后会生成 hotrod-demo-0.0.2-SNAPSHOT-jar-with-dependencies.jar 文件。

5. 配置并启动JDG集群
(1)unzip jboss-datagrid-6.5.1-server.zip
(2)执行./add-user.sh,增加管理员用户 admin/welcome@1
(3)mkdir jdg-visualizer-node1
(4)cp -r ./jboss-datagrid-6.5.1-server/standalone jdg-visualizer-node1
(5)mkdir jdg-visualizer-node2
(6)cp -r ./jboss-datagrid-6.5.1-server/standalone jdg-visualizer-node2
(7)mkdir jdg-visualizer-node3
(8)cp -r ./jboss-datagrid-6.5.1-server/standalone jdg-visualizer-node3
(9)./clustered.sh -Djboss.server.base.dir=/Users/maping/Redhat/datagrid/jdg-visualizer-node1/standalone -c clustered-jdg-visualizer.xml -b 127.0.0.1 -bmanagement=127.0.0.1 -Djboss.node.name=jdg-1 -Djboss.socket.binding.port-offset=100
(10)./clustered.sh -Djboss.server.base.dir=/Users/maping/Redhat/datagrid/jdg-visualizer-node2/standalone -c clustered-jdg-visualizer.xml -b 127.0.0.1 -bmanagement=127.0.0.1 -Djboss.node.name=jdg-2 -Djboss.socket.binding.port-offset=200
(13)./clustered.sh -Djboss.server.base.dir=/Users/maping/Redhat/datagrid/jdg-visualizer-node3/standalone -c clustered-jdg-visualizer.xml -b 127.0.0.1 -bmanagement=127.0.0.1 -Djboss.node.name=jdg-3 -Djboss.socket.binding.port-offset=300
(14)其中 clustered-jdg-visualizer.xml 配置如下(分布式模式,并使用tcp):
 <distributed-cache name="labCache" mode="SYNC" owners="2" remote-timeout="30000" start="EAGER">
    <locking isolation="READ_COMMITTED" acquire-timeout="30000" concurrency-level="1000" striping="false"/>
    <transaction mode="NONE"/>
 </distributed-cache>

 6. 部署 jdg-visualizer.war 到 EAP,并启动EAP
 (1)./standalone.sh -b 127.0.0.1 -bmanagement=127.0.0.1 -Djdg.visualizer.jmxUser=admin -Djdg.visualizer.jmxPass=welcome@1 -Djdg.visualizer.serverList=localhost:11322
注意这里要设置连接到某个JDG节点的JMX用户名和口令,就是之前配置JDG时设置的。
只要连接到其中一个JDG节点即可,EAP会自动发现集群中的其它节点。

7. 访问 http://localhost:8080/jdg-visualizer/
 (1)没有任何数据的情况下,是这个样子的:


 (2)向某个JDG节点插入数据,运行
java -Djdg.demo.initialList=localhost:11322 -Djdg.demo.cacheName=labCache -Djdg.demo.maxEntries=100 -Djdg.demo.clearOnFinish=false -Djdg.demo.putDelay=0 -Djdg.demo.useTwitter=false -jar hotrod-demo-0.0.2-SNAPSHOT-jar-with-dependencies.jar


 (3)停掉一个节点

 (4)再停掉一个节点

参考文献:
1. https://github.com/infinispan/visual
2. https://github.com/saturnism/hotrod-demo/

没有评论: