?
Solved

What are the cons and prose using 1 POC VM spanning a whole blade vs multiple VMs on 1 blade?

Posted on 2016-11-03
7
Medium Priority
?
109 Views
1 Endorsement
Last Modified: 2016-11-04
Short story.
We want to migrate to different SQL databases over to VM environment.
Currently, both Data bases are store on two different servers.
Both are 1.3 TB , Both are very heavily utilize , There are lot of transaction done per minute

We have two options either go with one VM spanning whole blade or multiple VMs on 1 blade.

What are the cons and prose using 1 POC VM spanning a whole blade vs multiple VMs on 1 blade?
Performance wise, storage and cost wise
1
Comment
Question by:michalek19
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 3
7 Comments
 
LVL 40

Expert Comment

by:lcohan
ID: 41872799
From all you describe above due to the size and "traffic" - IO against your database(s) in my opinion it is inappropriate to use VM as if you use "one VM spanning whole blade " then what's the purpose for that? Better having a physical in my opinion as performance in VM is caped (as far as I'm aware up to vsphere  5.5 we're using) to max 8(12) CPU's and 16GB of RAM. As soon as we went up to 20CPU's and 24GB of RAM performance went actually down and we ended up having one whole VM consuming the host so...you will need to asses very well in my opinion if VM's are appropriate to run your SQL back end VS Physicals no matter what IT will tell you related to management.

"What are the cons and prose using 1 POC VM spanning a whole blade" - you just add one layer of unnecessary expensive software on top of physical host OS to manage not much.

Ideally the systems should be designed indeed to have "multiple VMs on 1 blade?" or 1 host but no matter what powerful host you have think that if you need more than 8(12)CPU's and 16GBRAM per VM image...better use physicals.
1
 

Author Comment

by:michalek19
ID: 41872904
Thank you very much for explanation but do you think Flash Storage would be good for this setup?
0
 

Author Comment

by:michalek19
ID: 41872978
Also, my biggest concern is storage access.  This is critical for high-performance database applications, and if our current physical servers have and utilize 2 HBAs then we will see a hit going to a VM which will at best give us one HBA worth of throughput to each VM.

What suggestions you will recommend for  high-performance database applications in case of moving toward VM?

Do you think this solution  will help me for 2 applications with thousand of transactions per minute?
There are two DB's each  is 1 TB

IT solution:

1 Blade = 2 CPU Sockets = 16 Physical cores = 32 Hyperthreads
Create 2 VMs – each with 16 Hyperthreads = 16 vCPUs dedicated to the same
Assign to each VM 500 GB Flash storage in the backend

Can you please explain?
0
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

 
LVL 40

Expert Comment

by:lcohan
ID: 41874177
I have a few questions before I can share my suggestions based on my experience and these are:

1. what do you mean by "Flash Storage"?  hope is not something like SSD you have in mind due to their limitation by design and I mean they will just "die" after the certain number of "writes" occurred right? so you'll need some good quality storage and fast network for that in my opinion.

2. you mentioned "There are two DB's each  is 1 TB" and my question is - are they on separate SQL instances and if yes my second question would be why?

3. you specified 16 cores per VM but not how much ram so if you have a physical with "2 CPU Sockets = 16 Physical cores = 32 Hyperthreads" and you want to "Create 2 VMs – each with 16 Hyperthreads = 16 vCPUs dedicated to the same" or 8 core each I believe you'r MAX RAM would be 24GB for each VM and from my experience as mentioned and unfortunately anything beyond that won't bring better performance no matter how big the host is - period! Well again, up to vsphere 5.5 we are currently running with various hardware but same results. So to add a bit more "stir" to this...compare the 16 vCPUs and 24GB RAM to what you have today and think what will you be doing when you are in production and things aren't going pretty well with performance, you added ALL indexes you can, code is optimized as much as possible, ETC...so you need to grow right? How will you be growing when VM's are not really designed to run lets say 40CPU's and 132GB of RAM right?

Besides all the above, you mentioned "There are two DB's each  is 1 TB" then "Assign to each VM 500 GB Flash storage in the backend" which is only half of one database right? Or in other words you'll need at least 3*500GB (SAN LUN's in my opinion) for each VM in order to support 1TB database on each VM running one SQL instance right?


as detailed here: http://androidpcreview.com/are-torrents-damaging-your-mini-pc/2237/
"...the flash storage, including Solid State Drives (SSD), has a finite amount of read-writes that it can perform before the drive just plain dies. No clicking like normal hard drives….just dead." so I would think twice putting my SQL databases on SSD's...but maybe I'm wrong.
1
 

Author Comment

by:michalek19
ID: 41874616
Thank you

So, this is Prove off concept project to find best solution for out two separate databases

2. you mentioned "There are two DB's each  is 1 TB" and my question is - are they on separate SQL instances and if yes my second question would be why?

ANSWER: Two different data bases that needs to be move from our old servers to new VM environment or other solution.


3. you specified 16 cores per VM but not how much ram so if you have a physical with "2 CPU Sockets = 16 Physical cores = 32 Hyperthreads" and you want to "Create 2 VMs – each with 16 Hyperthreads = 16 vCPUs dedicated to the same" or 8 core each I believe you'r MAX RAM would be 24GB for each VM

ANSWER: IT Dept. did not specify how much RAM for each server. They said " a fully loaded 2 socket blade can have total 500 GB or more"


4. Besides all the above, you mentioned "There are two DB's each  is 1 TB" then "Assign to each VM 500 GB Flash storage in the backend" which is only half of one database right? Or in other words you'll need at least 3*500GB (SAN LUN's in my opinion) for each VM in order to support 1TB database on each VM running one SQL instance right?


VM1 = Pwerewre Replacement POC VM:        16 Physical Cores of CPUs – configured as 16 vCPUs,  256 GB RAM, 1.5TB regular disk plus 500GB flash  (deploy sql 2014)

VM2 = AXXXXX Migration POC VM:              16 Physical Cores of CPUs – configured as 16 vCPUs,  256 GB RAM  1.0TB regular disk plus 500GB flash       (deploy sql 2014)
0
 
LVL 40

Accepted Solution

by:
lcohan earned 2000 total points
ID: 41874676
OK got it - so the two VM's will have each 16 16 Physical Cores of CPUs – configured as 16 vCPUs + 256GB RAM and enough storage for the OS+Databases which is fine - just make sure to configure MAX SQL memory even if you'll have 256GB for each to leave enough space for OS and other processes as described here:
https://technet.microsoft.com/en-us/library/ms177455(v=sql.105).aspx
https://www.brentozar.com/archive/2008/03/sql-server-2005-setup-checklist-part-2-after-the-install/

One more question before deciding with separate SQL Servers on 2VM's instead of just 1SQL hosting both databases - are there ANY distributed queries to be executed against both databases? If the answer is yes then besides the cost of having to run 2 SQL Servers on 2 separate VM's apears the huge cost to run those distributed queries as by far SQL is better to cross database queries residing inside same SQL Engine (ande is natural and easy to grasp why) VS the same distributed queries to be executed against 2 SQL servers.
1
 

Author Closing Comment

by:michalek19
ID: 41874751
Thank you so much
0

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In this blog post, we’ll look at how ClickHouse performs in a general analytical workload using the star schema benchmark test.
In today's business world, data is more important than ever for informing marketing campaigns. Accessing and using data, however, may not come naturally to some creative marketing professionals. Here are four tips for adapting to wield data for insi…
This video teaches viewers how to encrypt an external drive that requires a password to read and edit the drive. All tasks are done in Disk Utility. Plug in the external drive you wish to encrypt: Make sure all previous data on the drive has been …
In this video, Percona Solution Engineer Rick Golba discuss how (and why) you implement high availability in a database environment. To discuss how Percona Consulting can help with your design and architecture needs for your database and infrastr…

764 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question