Boatczy
Contributor
Contributor

Vmware ESX Server and SAN best practices

We are in the middle of implementing ESX with our SAN (NetAPP FAS3020)

I have been going over the best practices that is in NetAPP document TR3428.

As far as snapshots,

I implemented a perl script that queries the esx server and return a list of datastores and then create snapshots of my VM's using quisce option.

I then parse out the name of my volume that is included with in the datastore list

using that

I then delete the oldest snapshot on the filer, rename the remander and create a new one

I then delete all my VM's snapshots

We are using snap mirror so, snapmirror is replication snap over to the other filer and if I need to restore, I would use of of my manual snaps with in the snapmirror snap.

This being said, I have a couple of questions.

Do I need to use the memory option when I create the VM snapshot with the quiesce option?

Also, I have SQL server on a few VM's, When I create a VM snapshot using the quiesce option do I get a good state for SQL come up?

Thanks

0 Kudos
5 Replies
jparnell
Hot Shot
Hot Shot

The memory option depends what state you're happy for your VM to be if and when you revert/restore the snapshot. If you're ok with it being in a crash consistent state then don't snapshot the memory, if you would like it to be in a running state then snapshot it. Personally I wouldnt snapshot memory when taking daily backups. Its just the same as traditional backups, which i've never had a problem restoring.

I can't comment on SQL state.

James

Lfrisino
Enthusiast
Enthusiast

Our envionment is pretty much setup like yours. We have two FAS 3020Cs. For the SQl vm, we have the DBA turn off the databases nightly at a specified time. At that point, we take a vm snapshot, then a NetApp snapshot. At another specified time (shortly after), the DBA has a Wiindows Task that starts up the databases. We then have a cron job delete the vm snapshot.

Boatczy
Contributor
Contributor

Do you feel that the Database server would need to be off to get a good snapshot?

If we create the snapshot with the quiesce option as well as memory option this is suppose to flush the buffers and hold incoming IO when the snapshot is created.

Do you think the DBA is just being extra cautious? I am going to continue my database backups and log backups for extra backup measures.

But I would think that the snapshot should be good for SQL, as long as I quiesce the VM.

What do you think?

0 Kudos
Boatczy
Contributor
Contributor

Thanks

0 Kudos
Lfrisino
Enthusiast
Enthusiast

When I spoke to my DBA (Oracle and SQL), he tried before to restore a database that was not stopped (previous to a snapshot) and it was corrupt. He had to restore from one that was stopped on the weekend. He feels the same way for SQL as well.

0 Kudos