How to move the Indexes to an Index location on a freshly configured Enterprise Vault server in Enterprise Vault 14.2 and later
Description
Enterprise Vault 14.2 onwards, Elasticsearch is the new indexing engine. To move the indexes to an index location on a different index server, perform the following actions:
- On the first index server, take a snapshot of the index data.
- On the other index server, first, ensure that Enterprise Vault is freshly installed and configured, then restore the above-referenced snapshot of the index data. Note that the restore location folder can contain other index data provided the drive has sufficient space available.
Resolution
- Back up the SQL databases and the EV server.
- Ensure both servers have the same index snapshot location configured.
If the same index snapshot location is not configured on the other server, you must set that up by using the cmdletSet-EVIndexSnapshotLocation
. See the Enterprise Vault PowerShell Cmdlets guide for more information. - Restart the Enterprise Vault Indexing Service on both index servers.
- Take the snapshot on the first index server by using the cmdlet
New-EVIndexSnapshot
. See the Enterprise Vault PowerShell Cmdlets guide for more information. - Stop the Enterprise Vault Indexing Service on the first index server.
- Manually copy the index snapshot repository folder from the first index server to the index snapshot location configured on the other index server.
The index snapshot repository folder path is displayed on the output for step 4 above.
Determine the index snapshot location configured on the other index server by using the cmdletGet-EVIndexSnapshot
. See the Enterprise Vault PowerShell Cmdlets guide for more information.
- Restore the index snapshot on the other index server by using the cmdlet
Restore-EVIndexSnapshot
. See the Enterprise Vault PowerShell Cmdlets guide for more information. - Stop Enterprise Vault Indexing Service on the other index server where you have restored the index snapshot.
Update all the index volumes of the first index server to the other index server. Run the following SQL queries in SQL Server Management Studio:
Determine the index location by running the following SQL query in SQL Server Management Studio:
USE EnterpriseVaultDirectory
SELECT CE.ComputerName, CE.ComputerNameAlternate, IRP.IndexRootPathEntryID, IRP.IndexRootPath, ISE.ServiceEntryID, ISE.Description
FROM ComputerEntry CE, IndexingServiceEntry ISE, IndexRootPathEntry IRP
WHERE CE.ComputerEntryID = ISE.ComputerEntryID AND ISE.ServiceEntryID = IRP.IndexServiceEntryID
ORDER BY CE.ComputerName
Make a note of theIndexRootPathEntryIDs
for the old index root path and the new index root path.Update the index locations by running the following SQL query in SQL Server Management Studio:
Note:
The oldIndexRootPathEntryId
should be replaced with theIndexRootPathEntryId
value returned for the old index root path in step 9-1.
The newIndexRootPathEntryId
should be replaced with theIndexRootPathEntryId
value returned for the new index root path in step 9-1.USE EnterpriseVaultDirectory
DECLARE @OrigIndexRootPathEntryId EVGUID
DECLARE @NewIndexRootPathEntryId EVGUIDSET @OrigIndexRootPathEntryId = 'old IndexRootPathEntryId'
SET @NewIndexRootPathEntryId = 'new IndexRootPathEntryId'
-- Update the index volumes to point at the new location
UPDATE IndexVolume
SET IndexRootPathEntryId = @NewIndexRootPathEntryId
WHERE (IndexRootPathEntryId = @OrigIndexRootPathEntryId)Inform Enterprise Vault that it needs to update the paths of the volumes on the Enterprise Vault service startup by running the following SQL query in SQL Server Management Studio:
UPDATE IndexingServiceEntry
SET IVSyncNeeded = 2
WHERE ServiceEntryId IN (SELECT IndexServiceEntryId FROM IndexRootPathEntry WHERE
IndexRootPathEntryId IN(@OrigIndexRootPathEntryId, @NewIndexRootPathEntryId))
Following completion of the SQL script, restart all the Enterprise Vault Services.
Note: When the Indexing Services start up, they will synchronize their respective index volume metadata; depending on the number of index volumes associated with the index root path relocation, this may take some time. The progress can be monitored in the Event Log.