[THEME MUSIC]
GABE WEISS: Hi.
Welcome to "Architecting with Google Cloud."
I'm Gabe Weiss.
Shared file storage is the unsung hero
of application development.
Pick the right solution, chances are, no one's going to notice.
But pick the wrong solution, and you'll
be chasing bottlenecks for days.
No one knows this better than our partners over at NetApp.
And today, I've got Oliver Krause, technical marketing
engineer from NetApp, to tell us about a great solution
for Windows file sharing.
Oliver, why don't you take a second,
introduce yourself, and tell us a little bit
about what you and NetApp do?
OLIVER KRAUSE: Hi, Gabe.
Thanks for having me.
So I'm Oliver, located in Germany near Munich.
Over 20 years ago, I started at a storage startup
called NetApp.
It became a unicorn.
And today, it's one of the biggest storage
and data management companies in the world.
I held many different positions in that company,
usually in presales positions, helping customers
solve their storage problems.
And a few years ago, I switched into our cloud business
simply to help do new stuff in the cloud world.
GABE WEISS: Glad to have you.
So Oliver, I've got a Windows application
and I want to run it in the Cloud.
But I know there are a ton of file storage solutions
out there.
Maybe you could tell us just a little bit
about what's out there, and some pros and cons.
OLIVER KRAUSE: Yeah, in the storage world,
we have three different kinds of storages.
The first one is a traditional disk,
like a hard disk or an SSD, or a USB stick.
It's basically a disk which you plug into a computer
into your computer, put a file system on top of it,
and use it locally.
It's also called block storage.
After some time, people thought, oh, it
would be cool if we could use that file
system on that disk on multiple computers, so share the data.
And don't share it on a disk base,
but share it on a per file base.
So basically, file sharing was invented.
Some file sharing file systems were invented.
And people were able to use data on multiple VMs or multiple
computers in that time.
And then the new kids on the block
is object storage, like Google Cloud Storage.
It uses HTTP to store data.
Relatively new, let's say 10 years or something.
And it's a great way to store unstructured data.
But most of the enterprise applications in enterprise data
centers still don't talk object, but we
talk file NAS to share data.
GABE WEISS: So people just say, like, just lift and shift.
It's so easy.
But clearly, if your application doesn't speak object storage,
that's not going to be so easy.
So you've been around.
What specific challenges have you
seen in terms of shifting a Windows application up
to the cloud?
OLIVER KRAUSE: OK, yeah, so let's
assume we want to do a lift and shift with the Windows
application.
And that application requires data
sharing between multiple VMs, which is, by the way,
a very common scenario.
To enable that, you first need to deploy a GCE instance
with Windows--
with operating system running.
You need to size your VM incorrectly.
Eventually, you have to patch it,
keep up with the latest patches.
You have to monitor it.
Maybe the performance requirements change,
so we have to resize it.
You have to think about backup and recovery,
and maybe even make it highly available-- so multiple sounds
and so on.
And after you did all of that, then you
can start to attach a data disk, put a file system on top of it,
and share it via the SMB protocol to other machines.
GABE WEISS: So hang on.
You mentioned SMB.
Some folks might not necessarily know what SMB is.
Could you just explain real quick
what that is, and maybe compare it
to what folks might be more familiar with NFS?
OLIVER KRAUSE: Yeah, so to share out the local file system,
which is on a disk, in a computer, if you want
to share it out to different computers,
you need a protocol to access the file system over a network.
In the old days, most systems have been Unix.
And NFS was invented, Network File System, which is still
used in Unix-based or Linux-based systems today,
and very popular.
In the Windows world, Microsoft invented
SMB, which is an abbreviation for Server Message Block.
In the beginning, it was not a very good protocol.
But anyway, in the 2000s Microsoft
renamed it CIFS, "sifs," which stands for Common Internet File
System.
Everything had to be named internet something.
Later on, Microsoft renamed it back to SMB.
Today, we have SMB version 2.1, and very recently 3.0,
which are very good and capable protocols.
GABE WEISS: Got it.
And I know, Cloud Volume Services, or CVS for short,
supports both SMB and NFS.
So this leads nicely into what we want to talk about today.
So to start, why don't you just tell us, what is CVS?
OLIVER KRAUSE: CVS is net shares as a service.
You create a volume and share it via NFS or SMB,
or both, to your clients.
And since it's a service, it is super
easy to use and to consume, and trouble-free to manage.
GABE WEISS: And how does CVS help us specifically
with a Windows migration, for example?
OLIVER KRAUSE: Yeah, like I said,
if you do it with a Windows way, you
have to manage a Windows VM with all the adjacent problems.
CVS, in contrast, is a service.
So you can easily create volumes.
You can scale them up and scale them down, both capacity
and performance-wise.
You pay per gigabyte per month, just like you do
with persistent disks and GCS.
You get a bill from Google instead of NetApp,
because it's built for Google.
Google takes support calls, so it's supported by Google.
And additionally, we have snapshots built in.
And these snapshots are different
from the persistent disk snapshots you might be used to.
So let me quickly elaborate on these snapshots
and give you three use cases.
These snapshots are instant to do.
Within a second, you created a snapshot, which is basically
a photo of your file system.
You can do multiple of them.
And with that, you can build a history of your file system,
like a versioning system.
And for the first use case, let's assume
you want to upgrade an application.
And you are concerned that this upgrade might fail
and it changes your data, and you
are left with an unfinished upgrade which
changed your data.
You simply do a snapshot, which is super-fast.
It's like creating a backup in a second.
You do the upgrade.
If it works fine, delete the snapshot afterwards.
If it fails, you have a snapshot,
and can easily restore your data to the last known good state.
The second use case, which is likely
the most relevant one for a lot of customers,
is you can enhance your backup and recovery
processes with snapshots.
Simply build a snapshot schedule,
which takes a snapshot every day for the last few weeks.
And if you delete that file, you can simply
go back to a snapshot with a Windows File Explorer,
so the user itself can do it in the UI.
They can simply go in there and identify the last good version
of the file, and restore it back to a file system.
So it helps them avoid a help desk ticket,
and nobody likes help desk tickets, right?
And the restore is much, much faster.
And you can even go beyond that.
Since snapshots are so lightweight and cheap to do,
simply take them every hour.
Take hourly snapshots.
And if you now delete a file, you're
not only getting a version from yesterday
from the nightly backup.
You can get a version from last hour,
which is way more current.
So that's a super-cool functionality
to reduce a recovery point objective.
And the last use case, since we are talking Windows operating
systems here, the issue with Windows
is where it's in danger that ransomware
infects them and encrypts all the files on your disk.
Since you have snapshots, you can take them every hour or so.
And you have a very recent known good state
where your files have not been infected.
And the cool thing is, you can really quickly restore
the files individually, or you can roll back the whole volume.
Within a few seconds, half a minute or so,
you can roll it back to the state of a last known snapshot,
and basically delete all the encrypted files by that--
super cool.
And last thing, it doesn't matter
how big your file system is.
Be it a terabyte or 100 terabyte, the time it takes
to create a snapshot or roll back a snapshot,
it's all the same.
GABE WEISS: These snapshots sound really cool.
Can you make copies of them?
Can you clone them for other applications?
OLIVER KRAUSE: Yeah, you can.
Simply create a snapshot of a volume,
and then create a new volume from that snapshot.
And by the way, this process also takes a few seconds.
Let's say you are done in half a minute or less.
GABE WEISS: Yeah, so the developer in me
is imagining, as we were talking, it popped into my head
of--
we oftentimes, as application developers,
run into a situation where you've
got a very specific configuration of files
on disk that reproduce a problem for your applications.
And sometimes, reproducing that is kind of hard.
But if you're making these snapshots,
I can imagine a place where you get a file system set up where
it reproduces the problem.
You snapshot it so that you can make changes, and then
reset to be able to reproduce the problem.
That's super-cool.
So Oliver, I'd love to dive in a little bit deeper here.
Could you walk through maybe where
we can find it, and then a use case
or to where we'd want to use it?
OLIVER KRAUSE: Yeah, the good thing
is it's directly built into the GCP console.
Just open the GCP console, search for Cloud Volumes.
And it's where?
It's also on the left side.
If you look up all the services, you
will find it down at the bottom under Partner Services.
You will also find the documentation
in the Cloud Architecture Center on cloud.google.com.
Regarding use cases, I want to present two.
The first use case is a pretty generic architecture,
which is used on thousands of legacy applications.
You have multiple GCV EVMs running Windows applications,
and they need a file share to share data.
So what you do is you simply provision a CVS share
and map it to the Windows systems.
And we have multiple examples where this applies.
The first one would be, for example, VDI, Virtual Desktop
Infrastructure, where you have SMB shares for the user home
directories, for group directories where people
share data between multiple users,
and for the profile shares.
Another one would be automotive and manufacturing.
They're running a lot of computer-aided design
and computer-aided engineering applications.
Most of them want to talk to a file system to share data,
so an SMB share is the way to go here.
And that applies to many other industry verticals.
And the last one I want to mention
is media and entertainment.
More and more, we see that these people
have geographically dispersed teams working together
on a project.
And they all need to access the same data and the same media
assets in a performant and consistent way.
To aid these requirements, we have a solution
called Global File Cache, which builds
on top of CloudVolume service.
It helps you to share out a share globally
to all the different sites--
for example LA, London, Singapore,
while retaining excess performance over a VAN network,
on the other side minimizing traffic to reduce costs
and enabling global file locking to avoid conflicts
when multiple users try to modify
the same file at the same time.
GABE WEISS: This is all really great.
Thank you so much, Oliver, for being here today,
and talking through this great partnership between Google
Cloud and NetApp using SMB file share on Windows for Windows
application development.
It's really been a pleasure having you here.
OLIVER KRAUSE: Yeah, my pleasure.
Thanks for having me, Gabe.
GABE WEISS: And if you all out there want
to dive in right away, we've got links in the description
below to some more great content to see this in action.
If you all have any more ideas for customer stories
or architecture that you're interested in learning
more about, let us know in the comments.
And if you want to see more of this kind of content, click
Like and Subscribe buttons.
See you next time.
[THEME MUSIC]