Databases Reference
In-Depth Information
Virtual
Server
Virtual
Server
Virtual
Server
Virtual
Server
Virtual
Server
Host Server
Host Server
Host Server
Host Server
Arrows indicate the
physical location
of
each virtual
server's storage
Storage Area Network LUNs
Inadvertently, leading to
a bottleneck if the shared
LUN dosen't have the
performance levels
required of it
FIGURE 17-6
well-performing virtualization environment. However, success can be assured only by consistently
adhering to and monitoring these considerations.
Virtual Database Server Design
This section covers the most important areas of a virtual server's design. Understanding these
elements will ultimately help you deploy SQL Server in a virtual server successfully.
Memory
Of course, the requirement for SQL Server to have sufi cient memory to deliver the performance
levels expected of it isn't eliminated when it's virtualized. If anything, this requirement can become
harder to fuli ll because as you just saw, virtualization creates more opportunities — through
contention — for memory to be taken away from SQL Server. Because the performance of SQL
Server is so dependent on adequately sized and provisioned memory, it ranks i rst in my list of design
considerations. It should be yours too.
For database servers, you should usually ensure that for every GB of memory allocated to the
virtual server there is one GB of uncontended physical memory in the host server, and any future
host servers the virtual server might run on for whatever reason. If your hypervisor allows it, as
VMware's does, a memory reservation should be set to ensure that the virtual server always has
reserved for it the memory it's allocated. This is particularly important in VMware environments
where it's possible to over-allocate a host server's memory in the hope that all the virtual servers
won't need it at the same time, yet performance problems might occur if they do.
Microsoft's Hyper-V technology in Windows Server 2008 R2 Service Pack 1 and later, however,
offers Dynamic Memory, which enables you to allocate any unused physical memory in the host
server to virtual servers should they ever be detected to have low-memory conditions. Reviewing it
in the context of this chapter is interesting given its tight integration with SQL Server 2012 and the
best practice white papers Microsoft is now releasing.
 
Search WWH ::




Custom Search