Removing secondary nodes from a multi-node installation
If the server was configured only as a Fetch server
On secondary node
Take the secondary node offline (if it wasn't yet) and purge the Locator software from it.
On primary node
Stop the Index Builder service on Primary node
In Management Console:
Remove schedule for the removed node.
In PostgreSQL:
DELETE FROM config.connector_status where connector_id in (select connector_id from config.connector where server_id in (select server_id from config.via_works_server where computer_name='<name>')); DELETE FROM config.connector where server_id in (select server_id from config.via_works_server where computer_name='<name>'); DELETE FROM config.converter_setting where converter_id in (SELECT converter_id FROM config.converter where server_id in (select server_id from config.via_works_server where computer_name='<name>')); DELETE FROM config.converter where server_id in (select server_id from config.via_works_server where computer_name='<name>'); DELETE FROM config.server_server_role where server_id in (select server_id from config.via_works_server where computer_name='<name>'); DELETE from config.via_works_server where computer_name='<name>';
Where <name> is the name of the machine specified in via_works_server.
Now restart the Index Builder service.
If the server was configured as a Search server or both a Search and Fetch server
If the secondary node is failed:
Take the node offline (if it wasn't yet) and purge the Locator software from the node.
Primary node:
Stop the Index Builder service.
In Management Console:
If the secondary node was configured as both Search and Fetch server, remove schedule for the removed node.
In PostgreSQL:
DELETE FROM config.connector_status where connector_id in (select connector_id from config.connector where server_id in (select server_id from config.via_works_server where computer_name='<name>')); DELETE FROM config.connector where server_id in (select server_id from config.via_works_server where computer_name='<name>'); DELETE FROM config.converter_setting where converter_id in (SELECT converter_id FROM config.converter where server_id in (select server_id from config.via_works_server where computer_name='<name>')); DELETE FROM config.converter where server_id in (select server_id from config.via_works_server where computer_name='<name>'); DELETE FROM config.server_server_role where server_id in (select server_id from config.via_works_server where computer_name='<name>'); DELETE from config.via_works_server where computer_name='<name>';
Where <name> is the name of the machine specified in via_works_server.
It may be possible to move SOLR collections to another node using REPLACENODE : https://lucene.apache.org/solr/guide/6_6/collections-api.html
After doing that, take the node offline (if it wasn't yet) and purge the Locator software from the node.
If the removed node was configured as a search server, you will need to reconfigure SOLR with the former node removed. See Web Server and Solr Cloud Configuration.
After that you need to do a full index rebuild - use the Via.repository tool to Reindex all data (use the parameter /all), restart the Index Builder service and monitor the reindexing
If repositories fail to reindex, stop Index Builder, use the Via.repository tool to Purge each repository indicated by Locator Dashboard (/all will not work, each repository to purge has to be specified explicitly), restart the Index Builder service monitor the reindexing
Now restart the Index Builder service on Primary node.
ayfie