How to move Compliance Accelerator (CA) or Discovery Accelerator (DA) to a new server

Article: 100038659
Last Published: 2023-11-13
Ratings: 8 1
Product(s): Enterprise Vault

Description

It is very important to use the same existing Enterprise Vault (EV) Compliance Accelerator (CA) or Discovery Accelerator (DA) Configuration database after moving the CA or DA installation to a new server.  The Configuration database maintains key settings used to fine tune the operations of CA or DA searches, exports, etc.  The configuration settings are based on Customer ID.  If a connection is made to an existing database instead of following the resolution listed below,  the CustomerID is changed and the configuration settings will not be preserved.  After the changes below have been made, the Customer database(s) will automatically be available.

1. Install prerequisite software on the new server as described in the Installing and Configuring Guide (See Related Articles below).

Notes:

1.1. Be sure the following Roles and Features are installed on the server -
Roles:

- Application Server.
- Web Server | Common HTTP Features: Default Document, Directory Browsing, HTTP Errors, Static Content, HTTP Redirection.
- Web Server | Health and Diagnostics: HTTP Logging, Logging Tools, Request Monitor, Tracing.
- Web Server | Performance: Static Content Compression.
- Web Server | Security: Request Filtering, Basic Authentication, IP and Domain Restrictions, URL Authorization, Windows Authentication.
- Web Server | Application Development: .NET Extensibility 3.5, .NET Extensibility 4.5, ASP, ASP.NET 3.5, ASP.NET 4.5, ISAPI Extensions, ISAPI Filters.
- Management Tools | IIS Management Console: all.
- Management Tools | IIS 6 Management Compatibility: all.
- Management Tools | IIS Management Scripts and Tools: all.
- Management Tools | Management Service: all.

Features:

- .NET Framework 3.5 Features: all, including HTTP Activation and Non-HTTP Activation.
- .NET Framework 4.5 Features: .NET Framework 4.5, ASP.NET 4.5, WCF Services HTTP Activation, WCF Services Named Pipe Activation, WCF Services TCP Activation, WCF Services TCP Port Sharing.
- IIS Hostable Web Core.

1.2. Ensure the following folders have the NTFS permission of Full Control set for the Authenticated Users group, adding that group with that permission if not already present:

- C:\Windows\Temp\
- C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\
- C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\
- C:\Windows\Microsoft.NET\Framework64\v2.0.50727\Temporary ASP.NET Files\
- C:\Windows\Microsoft.NET\Framework64\v4.0.31319\Temporary ASP.NET Files\

2. Stop the existing Accelerator server:

2.1. Stop and disable the Enterprise Vault Accelerator Manager Service (EVAMS) on the existing server.

2.2. DO NOT uninstall CA or DA at this time. Certain configuration files will be needed at a later step.

3. Prepare the databases for the new Accelerator server:

3.1. Backup the CA or DA Configuration and Customer databases.

3.2. Run the ConfigurationDBReport against the Configuration database to capture the existing Customer information and Configuration Settings. The Report can be found in the Enterprise Vault, Compliance Accelerator and Discovery Accelerator Environment Reports Article as listed in the Related Articles section below.

3.3. Modify the entries for the old Accelerator server to point to the new Accelerator server. The following information will be required:

- Old Accelerator server NetBIOS name.
- Old Accelerator server IP address.
- Old Accelerator server FQDN (fully qualified domain name).
- New Accelerator server NetBIOS name.
- New Accelerator server IP address.
- New Accelerator server FQDN.

Once this information is available, edit the following query with the information, then open a new Query in SQL Server Management Studio focused on the appropriate Accelerator Configuration database and execute the edited query against the Configuration database. The output should indicate the previous and current Accelerator server name entries.


DECLARE
-- All edits below
@OldName nvarchar(100) = 'Old_Accelerator_server_NetBIOS_name' -- edit old Accelerator server NetBIOS name here
, @OldIPAddress nvarchar(39) = 'Old_Accelerator_server_IP_address' -- edit old Accelerator server IP address here
, @OldFQDN nvarchar(500) = 'Old_Accelerator_server_FQDN' -- edit old Accelerator server FQDN here
, @NewName nvarchar(100) = 'New_Accelerator_server_NetBIOS_name' -- edit new Accelerator server NetBIOS name here
, @NewIPAddress nvarchar(39) = 'New_Accelerator_server_IP_address' -- edit new Accelerator server IP address here
, @NewFQDN nvarchar(500) = 'New_Accelerator_server_FQDN' -- edit new Accelerator server FQDN here
-- All edits above
, @NewGroupID int;
IF EXISTS (SELECT 1 FROM tblServer WHERE Name = @NewName)
BEGIN;
    SELECT @NewGroupID = GroupID FROM tblGroup WHERE Name = @NewName;
END;
ELSE BEGIN;
    SELECT @NewGroupID = GroupID FROM tblGroup WHERE Name = @OldName;
END;
SELECT @NewGroupID = GroupID FROM tblGroup WHERE Name = @OldName;
SELECT [State] = 'tblCustomer Previous Entries', * FROM tblCustomer
SELECT [State] = 'tblGroup Previous Entries', * FROM tblGroup;
SELECT [State] = 'tblServer Previous Entries', * FROM tblServer;
SELECT [State] = 'tblAnalyticsServers Previous Entries', * FROM tblAnalyticsServers;
BEGIN TRY
    BEGIN TRANSACTION;
    UPDATE tblCustomer SET IIS = @NewName, GroupID = @NewGroupID WHERE IIS = @OldName;
    UPDATE tblGroup SET Name = @NewName WHERE Name = @OldName;
    UPDATE tblServer SET Name = @NewName WHERE Name = @OldName;
    IF EXISTS (SELECT 1 FROM tblAnalyticsServers WHERE ServerName = @OldName) UPDATE tblAnalyticsServers SET ServerName = @NewName WHERE ServerName = @OldName;
    IF EXISTS (SELECT 1 FROM tblAnalyticsServers WHERE IPAddress = @OldIPAddress) UPDATE tblAnalyticsServers SET IPAddress = @NewIPAddress WHERE IPAddress = @OldIPAddress;
    IF EXISTS (SELECT 1 FROM sys.columns WHERE name = 'IR_ServerAlias')
    BEGIN;
        DECLARE @UpdateIR_ServerAlias nvarchar(max) = 'UPDATE tblServer SET IR_ServerAlias = ''REPLACEMENTNewFQDN'' WHERE IR_ServerAlias = ''REPLACEMENTOldFQDN''';
        SET @UpdateIR_ServerAlias = REPLACE(@UpdateIR_ServerAlias, 'REPLACEMENTNewFQDN', @NewFQDN);
        SET @UpdateIR_ServerAlias = REPLACE(@UpdateIR_ServerAlias, 'REPLACEMENTOldFQDN', @OldFQDN);
        EXEC sp_executesql @UpdateIR_ServerAlias;
    END;    
    COMMIT TRANSACTION;
END TRY
BEGIN CATCH
    IF @@TRANCOUNT <> 0 ROLLBACK TRANSACTION;
    DECLARE @ErrorMessage NVARCHAR(4000), @ErrorSeverity INT, @ErrorState INT;
    SELECT     @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE();
    RAISERROR (@ErrorMessage, @ErrorSeverity, @ErrorState);
END CATCH
SELECT [State] = 'tblCustomer Current Entries', * FROM tblCustomer
SELECT [State] = 'tblGroup Current Entries', * FROM tblGroup;
SELECT [State] = 'tblServer Current Entries', * FROM tblServer;
SELECT [State] = 'tblAnalyticsServers Current Entries', * FROM tblAnalyticsServers;
GO

4. Install CA or DA:

4.1. Install the EV binaries or the EV API as installed on the original Accelerator server.

4.2. Install but DO NOT configure CA or DA on the new server.

Notes:

A) It is critical to install the same versions of CA/DA and EV on the new CA/DA server as are present on the original CA/DA server. Installing a newer version of the EV binaries or EV API can cause issues with the Enterprise Vault Accelerator Manager Service start-up and with accessing the EVBAAdmin administration website in the steps below. In such cases, Event ID 40966 may be logged in the EV Event Logs on the Accelerator server referencing one or more assembly errors, such as the following:

Could not load file or assembly 'KVS.EnterpriseVault.Interop.DirectoryConnection, Version=11.0.1.0, Culture=neutral, PublicKeyToken=26c5e2ccf2b9267c' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
Diagnostic:
Type: System.IO.FileLoadException


If it is needed to in-place upgrade CA/DA and/or EV, either perform an upgrade prior to moving to the new server or after moving to the new server. Do not attempt to perform an upgrade by installing newer versions of EV and/or CA/DA and then copying over the existing configuration files from a different version of CA/DA or EV. 

B) If installing an Update Release version, such as 14.1.1, the base version must first be installed before the Update Release version is installed.  Failure to install the point release, such as 14.1.0, can cause an Event ID 372 error referencing one of more missing DLL files such as the following:

Error When Starting the Accelerator Service. System.IO.FileNotFoundException: Could not load file or assembly 'KVS.Accelerator.Sampling, Version=12.5.0.0, Culture=neutral, PublicKeyToken=26c5e2ccf2b9267c' or one of its dependencies. The system cannot find the file specified.
File name: 'KVS.Accelerator.Sampling, Version=12.5.0.0, Culture=neutral, PublicKeyToken=26c5e2ccf2b9267c'
   at KVS.Accelerator.Server.CommonStarter.StartApplicationThreads(CustomerType custType)
   at KVS.Accelerator.Server.CommonStarter.Start()
   at KVS.Accelerator.Server.AcceleratorServiceProcessor.MainThread()

5. If started, stop the EVAMS on the new Accelerator server.

6. Copy all configuration files with a .config extension from the root of the Accelerator server installation on the original server to the installation folder of the new Accelerator server
(by default: C:\Program Files\Enterprise Vault Business Accelerator for 32-bit systems, or C:\Program Files (x86)\Enterprise Vault Business Accelerator for 64-bit systems). Examples include:

Log4net.config
accelerator.config
AcceleratorLegalHold.dll.config
AcceleratorManager.exe.config
AcceleratorManagerConsole.exe.config
AcceleratorManagerRemoting.config
AcceleratorRBO.dll.config
AcceleratorService.exe.config
AcceleratorService64.exe.config
AcceleratorServiceRemoting.config
ADSynchroniser.exe.config
AnalyticsConversationAnalyserTask.exe.config
AnalyticsIngesterTask.exe.config
AnalyticsServerApp.exe.config
ImportExport.exe.config
KVS.Accelerator.Sampling.dll.config

Not all of the above files may be present, depending on the product version.

If moving from a 32-bit to 64-bit operating system, these files must be edited to reflect the new path to the Reports and Reports\Share folders as well as the new path to the Enterprise Vault files noted within these files when those references exist.  For example, if moving from the default installation path on a Microsoft Windows 2003 (32-bit) server to the default installation path on a Microsoft Windows Server 2008 R2 X64 server, the following lines would need to be edited as follows for the Reports and Reports\Share folders:

From

<add key="ReportSourceLocation" value="C:\Program Files\Enterprise Vault Business Accelerator\Reports" />
  <add key="ReportShare" value="C:\Program Files\Enterprise Vault Business Accelerator\Report\Share" />

To

<add key="ReportSourceLocation" value="C:\Program Files (x86)\Enterprise Vault Business Accelerator\Reports" />  
  <add key="ReportShare" value="C:\Program Files (X86)\Enterprise Vault Business Accelerator\Report\Share" />

There are other lines within each of these files that must be updated with the new path for EV or CA/DA.  If the default installation paths were selected for both Enterprise Vault and CA or DA, then edit these files to replace all instances of Program Files\Enterprise Vault with Program Files (x86)\Enterprise Vault .

7. Start theEVAMS on the new server.

8. The CA/DA IIS virtual directories will need to be manually created on the new server using the following steps:

  • Open the EVBAAdmin web page

  • Right click on the Customers (one at a time)

  • Select Check Virtual Directory

  • Click the OK button to confirm the Virtual Directory has been successfully checked.

9. Verify the license is installed under \Program Files (x86)\Enterprise Vault Business Accelerator\Installed Licenses\. If not installed, can upload the license from the EVBAAdmin administration website.

10. Uninstall CA or DA from the original server.

Was this content helpful?