Summary:
This article will detail how to migrate/”cut over” from Dev to Prod.
Article Sections:
Method:
This article assumes the following:
- Dev databases will be copied over to the new SQL server including
-
- SolverDW
- Solver_Repository
- Solver_Scheduler
Databases may be called BI360DW, BI360_Repository, BI360_Scheduler
-
- You have a completely separate production environment which includes
- Web Server
- SQL server
- Services Server
- Application server (if needed)
- You are familiar with the installation process. This article will not detail the steps of the installer, please reference the installation guide should you have questions.
- You are on Solver Private Host 5.2.30319 or newer. If you are installing an older version of Private Host, please contact Solver Support.
The below steps can be followed whether you are creating a separate Dev or a Production environment. Solver licensing allows for the same keys to be used in both a Production and Dev environment as long as there is only one of each type of environment.
Note: You are migrating all configuration from one environment to the other. This will include:
- Publisher subscriptions
- Assignments
- workflows
Steps to Create a Prod Environment Mimicking your Dev Environment
The following will detail the steps needed to create a Production environment that mimics your Development environment.
- Ensure that the new web server is white listed on the SMTP server.
- Begin by taking backups of the above mentioned databases.
- Restore the three databases to the new environment.
- If you are installing Private Host version 5.2.30319+ it is recommended that these databases be restored as SolverDW, Solver_Repository and Solver_Scheduler. Naming these databases with the BI360 prefix can be done if preferred or if you wish to keep the database names the same across your environments.
- After restoring the databases, run the following script on the Repository Database to enable Service Broker. It will automatically run against either the Solver_Repository or the BI360_Repository, whichever exists on your production SQL server.
declare @DatabaseName nvarchar(1000) ,@SQL nvarchar(max) Set @SQL = '' Set @DatabaseName ='' Select @DatabaseName = name from sys.databases where name in ('Solver_Repository','BI360_Repository') --print @databasename select @SQL = @SQL + 'USE [Master]' +char(13)+ 'Alter Database ['+@databasename+'] SET SINGLE_USER with ROLLBACK IMMEDIATE' +char(13)+ 'Alter Database ['+@databasename+'] SET ENABLE_BROKER WITH NO_WAIT' +char(13)+ 'Alter Database ['+@databasename+'] SET MULTI_USER' +char(13) --print @SQL exec sp_ExecuteSQL @SQL
- Migrate the SSIS package from the DEV SQL server to the Production SQL server and update the settings accordingly.
- Navigate to the web server and run the Solver Private Host installer.
- If in step 2a, you restored your database as BI360_Repository, please run the reg key file found in the installation download first, prior to running the installer.
- Don’t forget to add the IIS APPPOOL\Solver user with read and write permissions to the c:\Program Files\Solver location
- After the installation is complete, your site should load on the web browser to http://solver.local. Please do the following where applicable:
- Set site bindings (http, https, and redirects). Not required, but commonly needs to be done.
Note: Solver cannot assist in setting up SSL and Redirects - Update the private host URL in settings system settings. This is required.
- Update the connection from the get data menu. This is required.
- Set site bindings (http, https, and redirects). Not required, but commonly needs to be done.
- Navigate to the services server an install Service Fabric
- Navigate to the services server and run the Solver Private Host installer.
- If in step 2a, you restored your database as BI360_Repository, please run the reg key file found in the installation download first, prior to running the installer.
- After installing SF, run the script below on the Repository database to update the install to point to the new SF install:
DECLARE @SFServer nvarchar(100) ,@repositoryName nvarchar(100) ,@SQL nvarchar(max) set @SFServer = '' --type in SF Server Name /* DO NOT MODIFY BELOW THIS POINT */ set @repositoryName = '' set @SQL = '' select @repositoryName = name from sys.databases where name in ('Solver_Repository','BI360_Repository') --print @repositoryName select @SQL = @SQL + 'USE ' + @repositoryName +char(13)+ 'UPDATE MasterSettings'+char(13)+ 'SET [Value] = ''http://' + @SFServer +':19081/SolverFabric.Scheduler/JobSchedulerWeb/'''+char(13)+ 'WHERE [Key] = ''Solver.ServiceFabricSchedule'''+char(13)+ 'UPDATE MasterSettings'+char(13)+ 'SET [Value] = ''http://' +@SFServer +':31313'''+char(13)+ 'WHERE [Key] = ''Solver.ServiceFabricSignalR'''+char(13) --print @SQL exec sp_ExecuteSQL @SQL
Navigate back to the Portal and you should have a fully operating Private Host install that mimics your Dev environment. Here are some quick tests to verify everything:
- Log in as multiple users to verify accounts can log in
- Run some reports
- Run a budget template
- Run a publisher job
- Ensure that your nightly SSIS package runs
- Add a user to the application and make sure the user gets the invite.
Properties:
Solver Private Host