SPEAKER: I'm going to show you our journey
to activate Google Cloud Backup and DR by using three
different projects just to sort of simplify what you will see
as you go through your journey.
So we begin our journey like any Google Cloud product
by enabling the API.
So to do that, we need to find the actual product.
So we go to the classic hamburger menu.
We scroll down to operations.
And the top option will be Backup and DR.
Like any Google product, we need to enable the API.
So we hit the enable button.
And once that's done--
I'll now skip to a different project
to show you what it will look like-- we'll get prompted
to activate the service.
Now, this begins with a short video
that explains exactly how that activation process works.
We can watch that video later.
You could always rewatch it by just hitting
the open tutorial button.
We choose where we want to locate our management console.
We choose which VPC network we want to attach it to.
And then, that management console
will be attached to your network using private services
connection.
So this is the same methodology that Google
uses to effectively publish multiple services
into your network-- services like Google Cloud VMware
Engine.
We then deploy our first backup and recovery appliance.
And once we've done that, I'll skip ahead.
When we come back to the Backup and DR panel,
instead of saying enable or instead
of saying the activation, we're now enabled.
We're now ready to begin backing up data and more importantly,
recovering that data.
So to do that, we log into the management console.
When I hit that button, it brings me to here.
Now, what you're looking at here is not
a brand new implementation.
This is actually one where I have already
added multiple data sources that I want to create backups for.
So I created some backup plans.
I then went to Backup & Recover, Backup.
I then identified the data sources
that I wanted to back up, such as databases and VMware
VMs running in VMware Engine, as well as compute engine
VMs running in Compute Engine.
My onboarding resulted in a number of applications
being protected.
And I'm going to show you some examples of how I recover them.
So to do this, I go Backup & Recover and Recover.
My first example is going to be for VMware VMs.
So I choose a particular VMware VM that I wish to recover.
And in this case, all the backups of this VMware VM
are being written to object storage.
I choose the point in time I wish to recover.
I choose Mount.
I choose recover as a new virtual machine.
I give the machine a name.
I choose which vCenter I wish to recover it to.
Doesn't have to be the same vCenter.
I choose which EXS host I wish to run it on.
I choose which data store I want to use to hold the VMX file.
That's the stub file that describes the VM.
I then hit Submit to create that new VM.
What I'm now going to do is jump across to the vCenter
where you can clearly see at the moment,
I do not have a VM with that name.
What happens is that the backup created by Google Cloud
Backup and DR is used to create a new virtual machine
through an NFS data store.
You can see the creation and the powering on of the machine
has occurred.
And there is my recovered VM.
And you can see that it's booting up.
In my next example, I'm going to recover a SQL server database.
To do this, we're backing up the entire SQL server instance.
I'm going to choose that instance.
Choose a point in time.
Select Mount.
Select the host that I want to mount it to.
Select the database I want to bring up.
I can choose which point in time I wish to roll it forward
to using logs.
I can give the database a name.
Because in this case, I'm mounting it
back to the same database that it's coming from,
I'm just going to call it recovered dB.
And I'm going to hit Submit.
I now go to SQL Server Management Studio.
You can see that I have all of the source databases,
but I do not have the recovered database that I just created.
Once the mount completes, the new database
will appear as a brand new database, Recover DB.
Just to prove this is exactly the same database, that's
the source database, AdventureWorks.
If I go and select the top 1,000 rows,
there's the top 1,000 rows in that table.
Now, I'm going to go and look at the mounted database.
So I will select the same database, Tables.
You can see it's got exactly the same tables.
Select the top 1,000 rows.
And they actually loaded quicker than the source--
the same data.
Now, if I wanted to retain this database, what I could do--
I could go to active mounts.
I could select my recovered database
and migrate it onto the host server
to remove its dependence on the Backup and DR service.
This will create a copy on the local server's disk,
which is a great way to recover from a production failure.
We do a mount.
We get the application up and running.
We do a migrate later.
In my third example, I'm going to go
to Backup & Recover, Recover.
But this time, I'm going to recover a GCE
instance, a Compute Engine VM.
We're only backing up one with a quaint name of Tiny.
I choose the point in time I wish to recover.
I choose Mount.
I choose Mount as New GCE Instance.
Now, because Tiny is coming from a project known as avwarglab1,
I cannot create a new GCE instance with the same name
unless the source VM has disappeared.
But what I can do is mount it into any other project.
So as you can see, my service account
has access to multiple projects.
So I'm going to mount it into a different project, which will
allow me to keep the same name.
I can set things like labels.
If labels were set on the source VM, they will be prompted here.
I can set network tags.
I can choose which VPC I'm going to mount it into.
But I do not have to go to the same region.
I could go to a different region or a different subnet.
I can assign an IP.
And in fact, I could even assign the same IP
that the source VM had.
Once I'm happy with all the settings, I select Mount.
Now, just to show that I have nothing up my sleeve,
this is a project that I'm mounting into.
As you can see currently, there are no Compute Engine
instances.
Once I confirm from the job monitor
that the mount job has completed,
I can head back to the project, refresh,
and I now have a brand new VM created in one project
and recovered using the same name
in a totally different one.
That completes our demonstration.