我正在部署Drools Workbench,并安装了VFS群集。我遵循了Drools-6文档中“ VFS-CLUSTERING”部分中定义的步骤以及以下链接。但是我的存储库没有同步
http://mswiderski.blogspot.com.br/2013/06/clustering-in-jbpm-v6.html
但是要遵循Zookeeper例外。
/ jbpm-集群/ INSTANCES / nodeOne_11 / MESSAGES / df7cda63-979b-47b2-ac9a-f2b218cb188的NoNode
问题在Workbench-A中创建的BPMN流程未与Workbench-B同步。以下是项目资产差异的屏幕截图。附在“ ServerAssets.png”中的图像
设计
建筑设计屏幕截图。
Helix命令启动和群集设置
1. helix-core-0.6.3\bin>helix-admin.bat --zkSvr localhost:2199 --addCluster jbpm-cluster
2. helix-core-0.6.3\bin>helix-admin.bat --zkSvr localhost:2199 --addNode jbpm-cluster nodeOne:11
3. helix-core-0.6.3\bin>helix-admin.bat --zkSvr localhost:2199 --addNode jbpm-cluster nodeTwo:22
4. helix-core-0.6.3\bin>helix-admin.bat --zkSvr localhost:2199 --addResource jbpm-cluster vfs-repo 1 LeaderStandby AUTO_REBALANCE
5. helix-core-0.6.3\bin>helix-admin.bat --zkSvr localhost:2199 --rebalance jbpm-cluster vfs-repo 2
6. helix-core-0.6.3\bin>run-helix-controller.bat --zkSvr localhost:2199 --cluster jbpm-cluster 2>&1 > /tmp/controller.log &
ZooKeeper设置
Changes done only in zoo.conf
1. dataDir = /zooDir/zookeeper (Not sure where this directory gets created as I could not find it in $zookeeper_home/)
2. clientPort = 2199
Work-Bench A配置:Standalone.xml
<property name="org.guvnor.m2repo.dir" value="D:\\Servers\\M2_REPO"/>
<property name="org.uberfire.nio.git.dir" value="D:\Servers\Drools-6-Deployment\repo"/>
<property name="jboss.node.name" value="nodeOne"/>
<property name="org.uberfire.metadata.index.dir" value="D:\Servers\Drools-6-Deployment\repo"/>
<property name="org.uberfire.cluster.id" value="jbpm-cluster"/>
<property name="org.uberfire.cluster.zk" value="localhost:2199"/>
<property name="org.uberfire.cluster.local.id" value="nodeOne_11"/>
<property name="org.uberfire.cluster.vfs.lock" value="vfs-repo"/>
<property name="org.uberfire.cluster.autostart" value="false"/>
Work-Bench B配置:Standalone.xml
> <property name="org.guvnor.m2repo.dir"
> value="D:\\Servers\\M2_REPO"/>
> <property name="org.uberfire.nio.git.dir" value="D:\Servers\Drools-6-Deployment\repoB"/>
> <property name="org.kie.nio.git.deamon.port" value="9518"/>
> <property name="org.uberfire.nio.git.daemon.port" value="9518"/>
> <property name="org.uberfire.nio.git.ssh.port" value="8002"/>
> <property name="jboss.node.name" value="nodeTwo"/>
> <property name="org.uberfire.metadata.index.dir" value="D:\Servers\Drools-6-Deployment\repoB"/>
> <property name="org.uberfire.cluster.id" value="jbpm-cluster"/>
> <property name="org.uberfire.cluster.zk" value="localhost:2199"/>
> <property name="org.uberfire.cluster.local.id" value="nodeTwo_22"/>
> <property name="org.uberfire.cluster.vfs.lock" value="vfs-repo"/>
> <property name="org.uberfire.cluster.autostart" value="false"/>
同步错误:
14:44:19,780 ERROR [org.apache.helix.messaging.handling.HelixTask] (pool-18-thread-21) Exception while executing a message. java.lang.NullPointerException msgId: 939154ed-eedb-493f-a803-83883764276a type: USER_DEFINE_MSG: java.lang.NullPointerException
at org.uberfire.metadata.io.IOServiceIndexedImpl.setupWatchService(IOServiceIndexedImpl.java:168) [uberfire-metadata-commons-io-0.3.1.Final.jar:0.3.1.Final]
at org.uberfire.metadata.io.IOServiceIndexedImpl.getFileSystem(IOServiceIndexedImpl.java:126) [uberfire-metadata-commons-io-0.3.1.Final.jar:0.3.1.Final]
at org.uberfire.io.impl.cluster.IOServiceClusterImpl$SyncFileSystemMessageHandler.handleMessage(IOServiceClusterImpl.java:919) [uberfire-io-0.3.1.Final.jar:0.3.1.Final]
at org.uberfire.io.impl.cluster.helix.ClusterServiceHelix$MessageHandlerResolverWrapper$1$1.handleMessage(ClusterServiceHelix.java:289) [uberfire-io-0.3.1.Final.jar:0.3.1.Final]
at org.apache.helix.messaging.handling.HelixTask.call(HelixTask.java:93) [helix-core-0.6.2-incubating.jar:0.6.2-incubating]
at org.apache.helix.messaging.handling.HelixTask.call(HelixTask.java:50) [helix-core-0.6.2-incubating.jar:0.6.2-incubating]
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) [rt.jar:1.7.0_25]
at java.util.concurrent.FutureTask.run(FutureTask.java:166) [rt.jar:1.7.0_25]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_25]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_25]
at java.lang.Thread.run(Thread.java:724) [rt.jar:1.7.0_25]
14:44:20,506 ERROR [org.apache.helix.messaging.handling.HelixTask] (pool-18-thread-21) Message execution failed. msgId: 939154ed-eedb-493f-a803-83883764276a, errorMsg: null
14:44:20,985 INFO [org.apache.helix.messaging.handling.HelixTaskExecutor] (pool-18-thread-21) message finished: 939154ed-eedb-493f-a803-83883764276a, took 1260
14:44:20,995 INFO [org.apache.helix.manager.zk.CallbackHandler] (ZkClient-EventThread-117-localhost:2199) 117 START:INVOKE /brms-cluster/INSTANCES/nodeTwo_22/MESSAGES listener:org.apache.helix.messaging.handling.HelixTaskExecutor
我找到了解决方案。
Jboss群集应仅在JBoss-Domain模式下配置。
我现在面临着同样的问题。我在7.26版中使用域模式。工作台数据未同步。我不确定动物园管理员如何知道要同步的仓库。我这样配置服务器:
<system-properties>
<property name="org.uberfire.nio.git.dir" value="/jbpm/bpm/.niogit" boot-time="false"/>
<property name="jboss.node.name" value="nododos" boot-time="false"/>
<property name="org.uberfire.cluster.id" value="jbpm" boot-time="false"/>
<property name="org.uberfire.cluster.zk" value="10.38.32.36:2181,10.38.32.37:2181" boot-time="false"/>
<property name="org.uberfire.cluster.local.id" value="nododos_12346" boot-time="false"/>
<property name="org.uberfire.cluster.vfs.lock" value="vfs-repo" boot-time="false"/>
<property name="org.uberfire.nio.git.daemon.port" value="9419" boot-time="false"/>
<!--<property name="org.uberfire.metadata.index.dir" value="/jbpm/jbpm" boot-time="false"/>-->
<property name="org.uberfire.cluster.autostart" value="false" boot-time="false"/>
</system-properties>
这是Zookeeper日志的一部分:
2020-04-29 19:19:02,263 [myid:1] - WARN [NIOWorkerThread-14:NIOServerCnxn@364] - Unexpected exception
EndOfStreamException: Unable to read additional data from client, it probably closed the socket: address = /10.38.32.36:34404, session = 0x10001ab88b80001
at org.apache.zookeeper.server.NIOServerCnxn.handleFailedRead(NIOServerCnxn.java:163)
at org.apache.zookeeper.server.NIOServerCnxn.doIO(NIOServerCnxn.java:326)
at org.apache.zookeeper.server.NIOServerCnxnFactory$IOWorkRequest.doWork(NIOServerCnxnFactory.java:522)
at org.apache.zookeeper.server.WorkerService$ScheduledWorkRequest.run(WorkerService.java:154)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
2020-04-29 19:19:09,915 [myid:1] - INFO [CommitProcessor:1:LearnerSessionTracker@116] - Committing global session 0x20001ab79140001
zookeeper从jboss / jbpm读取和同步数据的正确配置是什么?我只读的每个文档都说:配置Zookeeper,启动Zookeeper ...