I have configured a Thingworx stack with Zookeeper and Ignite.
3 Thingworx nodes in HA (active-active). (ver 9.4)
3 Zookeeper nodes in cluster mode. (ver. 3.9.2)
2 Ignite nodes in cluster mode. (ver 2.15)
All nodes startup fine. I can create and update a thing, and then I can see the changes in all Thingworx nodes.
The problem is that I thing that not use Ignite cache, because I see this error log:
2024-07-03 18:42:34.710+0200 [L: ERROR] [O: c.t.t.Thing] [I: ] [U: SuperUser] [S: ] [P: platform1] [T: pool-8-thread-1] Unable to initialize thing blog-test-om, Ignite instance with provided name doesn't exist. Did you call Ignition.start(..) to start an Ignite instance? [name=twx-core-server]
Where I should to put those instance name?
my cache block in platform-settings.json is:
"cache": {
"init-timeout":"30 seconds",
"provider-type": "com.thingworx.cache.ignite.IgniteCacheProvider",
"cache-mappings": {},
"ignite": {
"instance-name": "twx-core-server",
"default-cache-mode": "PARTITIONED",
"default-atomicity-mode": "ATOMIC",
"default-backups": 1,
"default-write-sync-mode": "PRIMARY_SYNC",
"default-read-from-backup": false,
"client-mode": true,
"metrics-log-frequency": 0,
"address-resolver" : {
"type": "zookeeper",
"connection": "10.0.0.61:2181,10.0.0.27:2181,10.0.0.165:2181"
}
}
}
Solved! Go to Solution.
Thanks for your answer.
Finally, I found the solution:
In the file /usr/lib/systemd/system/tomcat.service in the 3 Thingworx nodes, I have included this declaration:
Environment=HTTP_SERVICE_NAME=twx-core-server
Also, in the file /ThingworxPlatform/platform-settings.json I have this:
"instance-name": "twx-core-server",
In the 2 Ignite nodes, I have this config in the file /opt/ignite/config/default-config.xml :
<!-- Set Ignite instance name -->
<property name="igniteInstanceName" value="twx-core-server"/>
Now, the cluster works fine.
Hi @dgalan
I strongly advise to open a support ticket for this topic. HA setups are quite rare and I believe few users (myself included) have the necessary experience to answer this question in this forum format.
Support Ticket would be the best way understand if this is a bug, a platform configuration error or just a message you can ignore.
If Ignite is not started or it doesn't exit, Thingworx Cluster server will not be able to start .
Which operations did it generate the error message?
If you change the Ignite mode to embedded ( set "client-mode": false, in platform-settings.json) and then restart the cluster, try to reproduce it and see if still generates the error.
Thanks for your answer.
Finally, I found the solution:
In the file /usr/lib/systemd/system/tomcat.service in the 3 Thingworx nodes, I have included this declaration:
Environment=HTTP_SERVICE_NAME=twx-core-server
Also, in the file /ThingworxPlatform/platform-settings.json I have this:
"instance-name": "twx-core-server",
In the 2 Ignite nodes, I have this config in the file /opt/ignite/config/default-config.xml :
<!-- Set Ignite instance name -->
<property name="igniteInstanceName" value="twx-core-server"/>
Now, the cluster works fine.