One of the many task that needs to be completed when Cloning a Vertica Cluster from a On-premise DW to Amazon Cloud is to change the default Spread daemon messaging service type. See here the full HP Vertica installation manual on AWS.
What is Spread ?
An open source toolkit used into provide a high performance messaging service that is resilient to network faults. Spread daemons start automatically when a database starts up for the first time, and the spread process runs on control nodes in the cluster.
So you need to do ?
I you have tried to clone a database cluster using the vbr.py copycluster tools you end-up with a no starting database after the copycluster is complete with no clues of what and why is not starting.
When the copycluster runs it seems that it over wrights the catalog definition of the AWS cluster installation (which it has to be pt2pt in AWS) to reflect the Source cluster one (broadcast).
We the Cluster won`t start because of Spread mis-configuration.
How do i fix this ?
In this case you need to contact Vertica Support so they can pass you the guided documentation or you can use the script bellow:
Note: This is not recommended to be done in Production and i will not be held responsible for any damage caused by it. Use on your own responsibility.
echo "set singleton GlobalSettings controlMode pt2pt" > /tmp/setcontrolmode.cmd
echo "spreadconf overwrite" >> /tmp/setcontrolmode.cmd
echo "versionsjson" >> /tmp/setcontrolmode.cmd
echo "commit" >> /tmp/setcontrolmode.cmd
admintools -t dist_catalog_edit -f /tmp/setcontrolmode.cmd -d <database name>
This script must be executed logged in a dbadmin on the target cluster nodes and it will change the spread control Mode to pt2pt. You must run it on all nodes.