Making backups: how to stop worrying about your data

That was five years ago. Then for the first time we seriously took up the issues of “insurance” of our data, and in working on various projects we tried a lot of solutions.
Now that we have acquired our own solution to the problem, I want to summarize a little our experience. I hope that our full cones will help you reduce your suffering a bit and find the best backup service for you.
Self-written scripts

Pros: low cost, flexibility.
Cons: variable reliability, lack of guarantees.
To suit: non-standard projects, system administrators.
At first, we decided not to splurge on serious decisions and write scripts for data recovery on our own. Well, or almost on my own: good, there were a lot of ready-made options on guthub. Five sleepless nights, a lot of coffee mugs - and now I am the gurus of bash'a, rsync'a and other technologies. When writing your script, it is important to decide where you back up your data and do not forget to save your databases. This solution has obvious advantages: flexibility - you decide what features you need and how to implement them; training - during the writing process you can get acquainted with any new programming language, technology or API. In addition, the cost of the final product is determined only by you.
But the price of the error here is quite high, as it may result in the loss of part of the project. It’s good that we understood this during the testing phase of information recovery. Saving on backups is useless.
Business Solutions


Pros: high reliability, technical support.
Cons: high price, closed source and infrastructure.
To suit: medium and large business.
Unfortunately, we did not succeed in trying these solutions in practice - the web studios and start-ups in which I worked could not allocate the necessary budget for the purchase of these solutions.
These are icebreakers in the world of backups. They serve large companies and have been on the market for many years. If you have a problem, then technical support will definitely come to the rescue in the shortest possible time. I am talking about Ashampoo, Acronis, Symantec, Handy and others. These solutions impress with their very high reliability, technical support and experience in the market. The only thing that stops small businesses and freelancers from using is the high price for reliability (from $ 1,000 per year). There are also questions to the closed code of these systems - it is not clear what is hidden in these black boxes.
Hosting Solutions


Pros: low price, quick initial setup.
Cons: low confidence, low flexibility.
Suitable for: simple sites.
But this path saved me recently. One of the very old customers forgot to renew the hosting and his account with all its data was deleted after a month. The story ended with a happy end: within a day a new account was registered and the site was restored from the host’s backup.
Technical implementation differs for hosters, usually it all comes down to one checkmark when creating a virtual machine. It’s not always clear where the hoster stores a backup of your data, because it can also be a server in an adjacent rack. The question also arises as to how often he makes backups and how many previous copies he stores. The recovery procedure is not clear how well and how quickly we can access the necessary information. Carefully check this information with the hoster. If you cannot find the answers in the documentation, be sure to ask for support.
Consumer Solutions

Pros: low price.
Cons: low reliability, lack of settings, low upload speed.
Suitable for: small news portals.
Dropbox, google drive, box.com, crashplan and others are gaining popularity recently, including for use on the server. Having tested this option six months ago, I can confidently say that at the moment this crude solution is not suitable for use in live projects. Usually, a short script is added to them (for example, rsync every evening in a folder) and it all seems to work. The main advantage is the low price, since consumer solutions have a lot of competition, they have to dump. Ideal for backup media files. But there are a lot of minuses: starting from the low download speed to the server (20 kb / s) and ending with the fact that the console clients are very raw, constantly “fall off”.
Three steps to be calm!

Pros: ease of installation, ease of tincture, reliability.
Cons: lack of flexibility.
Suitable for: freelancers, indie developers, startups, web studios.
And so, the moment came when, when we next set up the backup for the new project, we said: “Enough to endure this!” and decided to implement a full service, which will help us find peace of mind for our data in just three steps. To install the client on the server, you need only one command, all backup management (selection of directories and databases, schedule and tracking) occurs through a convenient web interface. There is a minus: in some situations, the flexibility of setting up a backup may not be enough. We think that we will be useful to freelancers, indie developers, startups and small businesses (such as web studios) who want to be calm about their data.
Client
We develop the client in Python - the language is supported “out of the box” in all server operating systems. The source code will be published in PyPI and on github.com so that any interested developer can check us out. The client will receive settings from our service, compress the necessary directories and immediately upload them to Amazon S3. All data exchange takes place via https.Web interface



We are developing a web interface with the help of modern frameworks AngularJS and Django. Using one control panel, you can configure multiple servers at once. For each server, you select the necessary directories for backup, specify the parameters for connecting to the DBMS, select the database. The backup schedule is configured flexibly. The control panel displays a backup log with the status, size and runtime.