Hi Team
I would like to create solace software cluster manually on my VMs. My VMs are on Azure and they are Red-Hats. (Note that I’m aware that there is a Azure template to achieve this easily but due to some reasons I cant use this automated way)
As per some documents I came across I’m aware we need 3 nodes, solace1 (active-primary), solace2 (active-backup) and and solace3 (monitoring node) . I was able to create standlaone single node solace installations by following Setting Up Container Images
Hi Susi,
Just to confirm, so now you have 3 CentOS VMs, each running it’s own docker version of Solace PubSub+ right? And the error you showed is still with the primary broker configuration?
I would also recommend looking at option to create container instances directly from Azure, and then only play around with the docker environment variables. If you’re interested, I can give it a try and share the steps on Monday.
My bad, just tried to set this up using Azure Container Instance, but not successful since they don’t support setting shm yet. Similarly, we can use docker environment variable on the docker create step when creating the broker on your CentOS VMs to setup HA.
for all the *connect_via variables, you can use hostname, public IP, or internal IP. The important thing is the nodes must be able to resolve the other nodes via that hostname/IP.
For your case, if you want to debug your current setup, please share the commands you have used when setting up the HA. Otherwise, if you want to try the commands I shared, then just make sure the docker container names are not the same as your current ones.
Hi Arih
Thanks for the quick response. I have 3 RedHats. (From Azure - but lets forget the fact where it comes from and consider these are just 3 RedHat VMs for make it simple). And yes each running it’s own docker version of Solace PubSub+.
I will try to redo the setup using the docker create commands you provided and get back.
Another Q - Assume I should create external LB to balance the load between solace nodes. Could you give some input on this too, should it be only for port 55555 or any other ports, and what if I want to use TLS/SSL encryption.
Hi Susi,
For the LB setup, you can refer to this page for the default ports that Solace PubSub+ use. For encrypted SMF port, the default is 55443. To enable that, you basically need to setup the server certificate and then enable secured port for the service that you want. You can start from this page for that.
A bit more detailed on this is about the load balancer health-check, please refer to this page for that. Note that this is HTTP-based checks and you should refer to the Redundancy Configured column.
Hi Arih
I was able to start primary node and backup node with the commands you given, However the monitoring node wasnt success when I give the run command it gives me following error.
INFO repairDatabase.py: processing database (currDbPath: /usr/sw/var/soltr_9.2.0.14/.dbHistory/db.00000000, nextDbPath: /usr/sw/var/soltr_9.2.0.14/.dbHistory/db.00000085)
INFO Processing baseline /usr/sw/var/soltr_9.2.0.14/.dbHistory/db.00000000/dbBaseline
WARN Baseline /usr/sw/var/soltr_9.2.0.14/.dbHistory/db.00000000/dbBaseline: does not exist
WARN Database /usr/sw/var/soltr_9.2.0.14/.dbHistory/db.00000000: backing up database to jail/configs/db.corrupt.db.00000000.1574914975
Failed to repair database, exiting (rc = 1)
Any idea on this, Should we have a monitoring node or can we survive only with Primary/Backup nodes only.
Thanks
Susi
One more question to the same thing? To see solace logs for debug purposes from the HOST os what would be the best way? Does solace outputs its logs to the docker run command output ?
Hi Susi,
You can check the docker container logs, but for the complete logs you can go inside the container and have access the complete set of the broker’s log files.
$ docker exec -it /bin/bash
$ cd logs
Or, you can stream the broker’s log to you existing syslog server. More on that in here.
Hi Susi,
For your monitoring node, it looks like the storage of that node was gone or corrupted. Since this is a new node, would be easier just to recreate a new node and rerun the monitor node setup cli commands
Hi Arih
Thanks for the support, was able to setup monitor node after cleaning the file system. Could you please point me some document on how to check the cluster status. Currently status is Monitoring node
default VPN Status: Down
Replication: Off
DMR: Off
Backup Node #config-sync Status: Down
Replication: Off
DMR: Off
default Status: Down
Replication: Off
DMR: On
PrimaryNode #config-sync Status: Up
Replication: Off
DMR: Off
default Status: Up
Replication: Off
DMR: On