Prerequisites:


Make sure you have access to the DNS provider control panel where your domains used for Rushfiles installation are published


* Make sure you have access to the SSL wildcard certificate used on your Rushfiles sites


* Make sure to create a backup for your “Archive Cache” folder and for your MongoDB database. (Paths to the mentioned folders where chosen when you installed Rushfiles). This will be used if something goes bad in your attempt to migrate, and it will help you restore your data to a functional state. (See the guide here for backing up MongoDB https://docs.mongodb.com . Make sure you`re following the right version of the guide that matches your DB version.)




Migration process:


1. Establish a common storage path between the current server and the one you wish to migrate. We recommend an easy mountable storage drive that could be mounted both on the old instance and the new instance. However, this is only a suggestion and you can choose from a wide range of solutions for the best storage solution (between the 2 instances) according to the hardware needs and capabilities of your setup.

 

Note : It is of a high importance that the link between the chosen common storage solution (eg. Network hdd) and your servers is a high speed reliable one

 

2. After your common storage is in place, set the “ArchiveCache” path on the old server (current server) to point on your newly mounted common storage solution.


Here is the guide you should use for moving your cache to the common storage http://helpdesk.rushfiles.com/support/solutions/articles/5000653196-moving-cache-on-server-

 

Repeat the same step for your new server (the server you want to migrate to) and make sure it`s “ArchiveCache” is pointing to the same common storage path.

 

 

3. Navigate to your IIS webserver (Internet Information Services) and copy all the websites + application pools from the old server to your new server.


4. . Export your wildcard SSL certificate from the old server and install it on the new instance.


5.  Run the Rushfiles MongoDB updater. The installer will be provided by Rushfiles. 


Navigate to your Rushfiles installation folder , locate your MongoDB folder copy it to the new server and run the batch file called Install service (you might need to modify it to contain your correct system paths )


Na

Change your MongoDB standalone installation on the old server to a replica set installation, and add the new MongoDB server as a Replica Set member. 

 

In order to do that the mongo service will need to be restarted so you`ll experience a period of downtime. (Might take some time)

 

Follow this steps for converting your standalone installation into a replica set. Make sure you have a MongoDB backup in place as stated in the prerequisites section.

 

                       · Locate your mongod.conf file under the Rushfiles installation folder (eg. C:\RushFiles\MongoDB)

 

· Modify your mongod.conf file in order to enable journaling, create a bindIP and set a name for your Replica Set.

 

Here`s an example of how your mongod.conf should look like (make sure it matches your MongoDB version)

 

 

 

 

· Restart your MongoDB server from your services menu or use the Mongo tools.



 

 

Open a cmd.exe with administrator privileges and navigate to your MongoDb installation folder inside mongo ”bin” sub-folder.


Issue the following commands:


mongo.exe --host “Internal IP of your Server

This will connect you to your mongo shell . Issue the following commands inside the mongo shell.


rs.initiate() This will allow mongo to create system configuration for your replica set .  


rs.add (IP of the new MongoDB installation) Make sure the MongoDB service is started in your new service installation and has the same config value in the mongod.cfg file as your old installation 


rs.status() This should list both of your servers , the old one as a Primary and the new one as a Secondary .


 You can find detailed information about MongoDB replica sets under this link https://docs.mongodb.com/v3.0/administration/replica-sets/

4.

6. Lower your TTL on the .*your domain.com to the most responsive time (eg.60 seconds)

 

7. When your secondary MongoDB server is up to date with the primary server (Has the entire data set copied) change the priority of the new server, in order to become primary. Follow this guide https://docs.mongodb.com/v3.0/tutorial/adjust-replica-set-member-priority/


Navigate to your XMongoClientSettings.cfg file in the Rushfiles installation folder  and change the connection values for domainmaster , vshare and mailservice to include both members of the replica set . 


The XMongoClientSettings.cfg is located under RushFiles/domainmaster.yourcompanydomain.com/Config/XMongoClientSettings.cfg 

                                                                            RushFiles/vshare.yourcompanydomain.com/Config/XMongoClientSettings.cfg

                                                                            RushFiles/RFMailService/Config/XMongoClientSettings.cfg

Note : If any of the above paths do not exist you`ll have to manually add them and copy the XMongoClientSettings.cfg to each path. 


After you have modified the XMongoClientSettings.cfg config file rename it to MongoClientSettings.cfg (in all locations). 


Here is how your MongoClientSettings.cfg file should look like and it`s location example : 


 


 

8. Point your DNS records to the new server (the one you want to migrate to)


9. Restart MongoDB as a standalone server. Modify the mongod.conf file again , remove the ReplicaSet option and set the bind IP to local host , 127.0.0.1 and restart the MongoDB server or service.

 

Note:  Points 7, 8 and 9 should be done quickly one after the other to avoid any data being sent to the old Rushfiles installation. We recommend you set a 5 minutes’ maintenance window in order for users not sending any data to your old installation.

 

10. Check your new Rushfiles installation and make sure all the data has been successfully migrated. If you can`t detect any issues you are now ready to remove your old installation completely.