Tools
How Can FTP Voyager Automatically Synchronize Folders on Two Different Sites?
FTP Voyager offers a powerful synchronization utility, but it cannot directly synchronize the content on two different servers in a single scheduled task. However, this article shows how to use TWO related tasks to provide a one-way server-to-server sync solution with FTP Voyager.
First published date
Last published date
Overview
FTP Voyager offers a powerful synchronization utility, but it cannot directly synchronize the content on two different servers in a single scheduled task. This article shows how to use two related tasks to provide a one-way server-to-server sync solution with FTP Voyager.
Product section
Resolution
- Set up and test your "source" and "destination" site profiles in FTP Voyager. You must have full permission (including write, delete, and directory privileges) on the destination server.
- Set up a local staging folder that will be shared by both tasks. (e.g., such as "D:\local\syncstage15") If applicable, make sure the service under which FTP Voyager runs has full permission to this folder.
- Open FTP Voyager Scheduler.
- Create a new but unscheduled task to synchronize content from your Source site to the staging folder.
- Click the "New" button from the top toolbar.
- In the "Scheduled Task Settings" dialog:
- Select your SOURCE site profile (on the "Task" tab)
- Rename to "Two Site Sync 1 of 2"
- UNCHECK the "Enabled" box
- Ignore the "Schedule" tab for now
- Click "OK" and confirm that an empty task whose name ends in "1 of 2" has been added to the task list.
- Select your "1 of 2" task and then select the window to the right of the task list. (The one containing the "Order" and "Action" columns.)
- Right-click the window, and then select "New..." to add an action.
- Select "Synchronize Local Folders" from the "Action to perform" drop-down. (This means "synchronize local folders to match existing remote folder.")
- Use the "Browse Folder..." button to select your staging folder (e.g., "D:\local\syncstage15") in the "Local file or folder" field.
- Type "/" (or a specific subfolder) into the "Remote file or folder" field.
- UNCHECK "Don't Delete" (if we want source deletions be replicated too).
- Leave all other settings unchanged.
- Click "OK" to save your action and confirm that your "1 of 2" task now contains one action.
- Create a new but unscheduled task to synchronize content from your Source site to the staging folder.
- Click the "New" button from the top toolbar.
- In the "Scheduled Task Settings" dialog:
- Select your DESTINATION site profile (on the "Task" tab)
- Rename to "Two Site Sync 2 of 2"
- UNCHECK the "Enabled" box
- Ignore the "Schedule" tab for now
- Click "OK" and confirm that an empty task whose name ends in "2 of 2" has been added to the task list.
- Test the synchronization manually.
- Run your "1 of 2" task (right-click task and select "Start") and confirm that a faithful copy of the files and folders from the source server now exists in your staging folder.
- Then run your "2 of 2" task and confirm that a faithful copy of the files and folders from the source server now exists on your destination site.
- Add a new file to the source site and repeat these tests to make sure the file is transmitted from source to destination.
- Delete a file from the source site and repeat these tests to make sure the file deletion is transmitted from source to destination.
- Schedule (automate) the synchronization.
- Double-click your "1 of 2" task and flip to the "Schedule" tab
- Select "Daily" from the "Schedule Task" drop-down
- Set Start Date to today and the "At" time to 00:01 (or "12:01 AM")
- Make sure "Every" is set to "1 day(s)"
- Click the "Advanced..." button
- Leave "End Date" unchecked
- CHECK the "Repeat" box
- Set "Every" to 5 minutes
- Set "Until" to "23 hours" and "50 minutes"
- Before leaving, flip to the "Task" table and ENABLE the task (CHECK the "Enabled " checkbox.
- Also CHECK the "Start this task when FTP Voyager Scheduler is started" checkbox.
- Repeat the process with your "2 of 2" task, except:
- Set the "At" time (under "Start Date") to 00:03 (or "12:03 AM")
- Kick off today's automation.
- Note that FTP Voyager will list tomorrow as the next time to run when you save these tasks. We will need to manually start them today to test.
- Start the "1 of 2" task. Note that the "Next Run Time" will five minutes from now.
- Wait 2 minutes.
- Start the "2 of 2" task. The "Next Run Time" of this task should now be two minutes after the "1 of 2" task's "Next Run Time".
- Test the automatic synchronization.
- Make some additional changes to your Source site (add files, delete files, rename folders, etc.)
- Wait 10 minutes and make sure your changes have been reflected on the destination server. (Also check your staging folder if you need to troubleshoot the automatic process.)
Caveats
This solution is most appropriate for "low to medium" volume sites, where fewer than 100 changes and total file changes of less than 1GB is expected between each scheduled run.
This solution will only work for single-direction ('one way") synchronizations. Each task is individually scheduled, so the timing of the end-to-end (source-to-destination) sync process may vary from 1-9 minutes, but the end-to-end process will be reliable as long as it remains one-way.
Feel free to experiment with different timings in your own system.
- Make some additional changes to your Source site (add files, delete files, rename folders, etc.)
- Wait 10 minutes and make sure your changes have been reflected on the destination server. (Also check your staging folder if you need to troubleshoot the automatic process.)