Note: Upgrading a multi-server 2.8 environment will require deleting and rebuilding the entire index.
On the Primary ViaWorks/Locator server, if using Microsoft SQL Server, run the installer normally, entering the database user credentials when prompted then skip to the Secondary Server section. If using PostgreSQL, follow these steps:
Perform a full PostgreSQL backup by executing a command similar to this:
"%ProgramFiles%\Virtual Worksayfie\ViaWorksLocator \PostgreSQL\bin\pg_dump.exe" -i -h localhost -p 5432 -U postgres -F c -f "F:\Backups\viaworksLocator.bak" ViaWorks Locator
(where "F:\Backups\viaworksLocator.bak" is the path to the backup file)Backup the custom configuration files (although they should not be overwritten by the upgrade):
copy “%ProgramData%\Virtual Worksayfie\ViaWorksLocator\Database\pg_hba.conf” F:\Backups
copy %ProgramData%\Virtual Worksayfie\ViaWorksLocator\Database\postgresql.conf F:\BackupsProceed to upgrade. During the upgrade, the ViaWorksIndexBuilder Locator IndexBuilder service will be stopped, upgraded and re-started. If there many pending conversions the system may be CPU bound, slowing down the upgrade process. It’s safe to temporarily stop the Index Builder service until the system is completely upgraded.
On the Secondary
...
Locator server:
If using Microsoft SQL Server, run the installer normally, entering the database user credentials when prompted then continue with step 3.1. If using Postgres, follow these steps:
From an elevated command prompt, first make a backup copy and then edit the file %ProgramFiles%\Virtual Worksayfie\ViaWorksLocator\Config\DataAccess.config
Essentially we will revert the changes back to default settings:Change the value of the “ViaDatabaseServer” key to 127.0.0.1.
Remove this line before the </appSettings> line:
<add key="LicensingServiceServer" value="<IPv4_addr>" />
Start the ViaWorksLocator.Database.Service
There are two methods to upgrading the secondary server: 1) Proceed with the ViaWorks Locator upgrade and follow the steps below to manually configure it as a secondary server or 2) uninstall ViaWorks Locator and reinstall using the Custom install option to automate some of these steps. If using method 2, continue with the steps in the original Install/Configuration guide starting at the Secondary Server steps.
- NOTE WHEN UPGRADING TO 2.8 SR3 OR OLDER: The upgrade can fail trying to create the ViaWorksDocumentation Solr collection. When the error occurs, leave the installer window open and follow these steps to correct the issue:
- Stop the index service
- In Program Files\VirtualWorksayfie\ViaWorksLocator \SOLR\bin\Solr.in.cmd replace line "
REM set ZK_HOST=
" with "set ZK_HOST=
<<PrimaryIP>>
:9983" - Start the index service
- In ProgramData\VirtualWorksayfie\ViaWorksLocator \SOLR, delete the ViaWorksDocumentation folder
- In a browser, enter this URL: http://localhost:8983/solr/admin/collections?action=DELETE&name=ViaWorksDocumentation
- That will delete the ViaWorksDocumentation collection and allow the installer to complete successfully
- In the installer, click "Run Again"
- NOTE WHEN UPGRADING TO 2.8 SR3 OR OLDER: The upgrade can fail trying to create the ViaWorksDocumentation Solr collection. When the error occurs, leave the installer window open and follow these steps to correct the issue:
- The upgrade will enable and start all of the services. Stop all ViaWorks Locator services again in this order:
- All Fetch Services, in any order (e.g. ViaWorks Locator FileServer Fetch Service, ViaWorks Locator Exchange Fetch Service, etc.)
- ViaWorks Locator Index Service
- ViaWorks Locator IndexBuilder Service
- ViaWorks Locator Licensing Service
- ViaWorks Locator Database Service
Postgres only: From an elevated command prompt, first make a backup copy and then edit the file %ProgramFiles%\Virtual Worksayfie\ViaWorksLocator\Config\DataAccess.config
Change the value of the “ViaDatabaseServer” key to reflect the IPv4 address of the Primary ViaWorks Locator server as opposed to the default value of 127.0.0.1.
Edit the ZookeeperHost value from "localhost:9983" to be the host name of the primary server, eg: "hostname:9983"
- Edit the LicensingServiceServer value from "localhost" to the host name of the primary server.
- Edit the Rest Service web.config: "[Drive]:\Program Files\VirtualWorksayfie\ViaWorksLocator\RestService\web.config": change <add key="LicenseHostName" value="localhost" /> to <add key="LicenseHostName value="FQDN_of_primary_server" />
Disable all non-fetch ViaWorks Locator services except the ViaWorks Locator Index Service by executing the command in an elevated PowerShell session:
$fetchServices= Get-Service | Where {$_.DisplayName -like "*ViaWorksLocator *" -and $_.DisplayName -notlike "*ViaWorksLocator *Fetch*" -and $_.DisplayName -notlike "*Index Service*"}
$fetchServices| Set-Service -StartupType Disabled -VerboseStart all of the ViaWorks Locator fetch services by executing the command in an elevated PowerShell session:
Get-Service| Where {$_.DisplayName -like "*ViaWorksLocator *Fetch*" -or $_.DisplayName -like "*Index Service*"} | ForEach-Object {
Start-Service -Name $_.Name -Verbose
Start-Sleep -Seconds 10
}
...