Veeam have had Object and Direct to Object storage support for backups for a while now.
I was looking into C2 Object Storage which brings a bunch of perks to the table that make it a top choice. First off, let's talk about the price – it's simple and easy to understand, with no surprises with a fixed per terabyte cost each month. I love this.
Plus, here's the kicker: you can fetch all your stored data every month for free which is perfect for Veeam Backups as you often need to restore data right!?
No hidden tricks or extra fees. They keep it straightforward - no charges for API requests or deleting data. It's hassle-free and budget-friendly. Let's dive in and see how you can get up and running within 10 minutes.
First, head over and register/sign up and enabled C2 Object storage. You are going to need it to follow along at home.. as well as a Veeam Backup environment V12 generation.
Adding a bucket and credentials
Let's start by adding a bucket trough the c2 cloud console. I am also electing to create access keys during bucket creation. We will need these when we add the C2 Object storage bucket into Veeam.
It is great to see that Synology have decided to implement Object Lock - this is absolutely one of the most important things you should enable when writing backups to object storage.
This allows for Veeam to write in data and make it immutable to prevent from accidental or malicious modification or deletion. These are you backups so take care of them!
Best of all, its a simple click to enable it in c2 cloud, and same on the Veeam end. Just leave it to not setting default retention - we will control this on the Veeam end.
You will now be presented with some access keys if you selected that option. Let's add them to Veeam. Via the menu top-left, select Credentials then Cloud
Then select Add, and we want to select "AWS access key" since C2 is S3 compatible.
Enter the details provided by the c2 portal.
That is the basic setup done. We can now add the bucket into Veeam and configure a backup job.
Adding a repository - Direct-to-object support
Under your backup infrastructure, select Add backup repository
Then object storage, followed by s3 compatible
Give it a name, mine is going to be c2-veeam-direct1
On the next screen we need to add the account and service point. The account we have already added so select that from your existing credentials.
For the service point you want to grab this from the c2 portal where you created the bucket. Out to the right on your bucket list hover until the copy endpoint shows up. Select that and paste it into your service point in Veeam. You can leave region as default us-east-1 or enter any other value.. it's not relevant with C2.
All going to plan you can now select from available buckets and I can then choose the veeam-direct1 bucket we created earlier.
I am then adding a lab1 folder inside the C2 object storage bucket to write our Veeam backups into.
Ok now, remember we talked about Immutability and Object lock? Well here is where we configure it in Veeam. After ticking that option, enter your desired immutability period, mine is going to be 14 days but you do what works for your scenario, could be more, or less.
Work your way through the rest of the wizard, my Lab is just defaults, but you may have something different you want to adjust on the way through.
Now, Veeam will configure some things in the background and you will after a short while have a new object storage repository we can use for backups!
Configuring a backup job
Now we have added the storage, let's target a backup job and get our infrastructure backed up, and immutable!
Add a new backup from the Veeam console, give it an appropriate name and description.
Add some items, or select tags, resource pools or folders. I am just selecting my K3s Kubernetes cluster plus a Development server running in my lab.
Now here is the cool part. We can now target this job directly to our object storage - meaning we do not need (other than some cache space) to add any additional backup storage locally to store these backups. Synology C2 Object is going to be our primary target.
You can also set your retention, this can be as much as you like, remember our repository was set to 14 days of immuability but you can write more data here, just know that anything >14 days in our case will not be immutable.
Since this is an additional backup of these same machines I am actually going to adjust the schedule to 10am Weekdays.
And there you have it, a backup job protecting your virtual machines using Veeam and targeting Synology C2 Object storage. Let's start the job and see how we go.
This is running on my little lab backup server which is fairly under powered, i suspect we will max-out the CPU before we hit any bottlenecks out on C2 Object.
And yes I was correct, peaking around 500Mbps on my side which is about maximum for my lab due to processor constraints.
I will let this job play out and in a follow up post, we will look to restore some data from C2 Object.