Backing up and Restoring Systems
A good backup strategy is vital to running production systems in any public cloud. This ensures you can always revert your systems to a secure state in case of catastrophic failure.
In this topic:
A good backup strategy typically means building up multiple layers of protection and fail-safe mechanisms that, when combined, provide an acceptable level of security. Joyent recommends a combination of the following backup strategies:
- Place code and config files under version control (Subversion, Perforce, Git, and so on).
- Archive data to an NFS share---NFS is served off of a separate physical server.
- Install a back up server and use NFS space as an archive---this is the best solution as you can restore individual files.
Hosting your application on a SmartMachine does not mean your data is preserved. You are still responsible for ensuring the preservation of any data or applications that you host in the Joyent Public Cloud. The way in which you configure your backup strategy can vary widely. Below are a few suggested approaches to configuring your SmartMachine backup strategy.
You can purchase and install a third-party storage solution. Ideally, you will want a storage solution that stores your data in virtual tape libraries on an NFS mount. When considering a backup solution, perform due diligence and ensure you arrive at a solution that is tailored toward your specific business needs.
|The commercial backup solutions in the below list are only intended as examples.|
|You can host your backup server on any type of machine you like (SmartOS, Linux, Windows). Commercial offerings that support Solaris should run on SmartOS without issue.|
Typically, commercial backup products include hefty price tags. Small to medium sized companies may want to consider an Open Source solution. However, when considering open source products, you need to compare the strengths and weaknesses of open software with commercial software. In general, commercial software is more expensive but provides mature support channels. With open source, you can typically get started for far less money but you may find yourself at some point in need of support with limited options.
|Use open source software at your own risk!|
You can write custom scripts that automate the entire backup process to an NFS mount. When creating scripts, you should archive daily copies of changed files and rotate old files.
You should periodically test all of your backups to ensure that you can restore them properly when needed. This solves two problems:
- Testing verifies that you are backing up files that are correctly restored when you need them during an emergency.
- Testing gives you an opportunity to document and preserve the entire backup process. Preserving these types of processes is difficult during times of crisis.