Here is my Blog, my main cyber place to publish what I learn, what I like, and how I live. I am talking about the backup plan. It is for my Blog, actually for the VPS, which my Blog and other stuff running on it.
What do I need to back up?
Basically the VPS has OS, program, and data. The data is always the most important part of them. The second important is a program, for example, this WordPress installation. I made some customization on it. It is hard to make the same one without a copy or records.
I back up the database and all the website programs.
So I know I need to back up the program and data for sure. I also need to keep a record of how the OS is set up and the configuration of the server. I keep them on paper by writing.
How often do I make a backup?
It depends on the frequency of the data update. I make a new post about once a week if I have time. Sometimes I publish twice a week. OK it is not much difference. Another website on the VPS has more fresh data.
So I make the decision I doing the backup every other day.
Where do I keep the backup?
I prefer to keep it a place safe and easy to access.
The place is at my home lab. Every time I make a backup zip file, I transfer it back to my home lab.
It is a NAS. I can access it from my desktop. When I need to rebuild the server, I can easily transfer it to a new VPS server.
How long should I keep the copies?
It is also a very important question. My NAS has enough space to keep them for a year or multiple years.
Before I just keep the three months’ copies.
Now I just keep it, until I don’t have enough space.
Testing my backup
I have a proxmox server in my home lab. There are a few VMs for testing purposes. Including a staging VM, I can use it to test my backup.
I tried to test the backup on it once a month.
What I am not doing for backup?
My blog, VPS was powered by DigitalOcean, and now is on Vultr. They all have snapshot features, backup features, etc. I am not using them. Because they are not free. I have to pay extra to use it.
I make my own shell script to export the database and zip all websites together, transfer them to the NAS in my home lab. Just smooth and free.