One of the biggest trends I'm currently seeing with my clients is the desire for a consolidated SQL Server environment. However, just because my clients think they need to consolidate doesn't mean they're ready to do so, or even necessarily that they should. Before you consider implementing a consolidated SQL Server environment, you must assess your existing environment to determine whether planning a consolidation is even possible—or worth your time. (Because the analysis and assessment can be time consuming, you might want to obtain help; see the sidebar "Getting Help" for more information.) This article outlines the steps you need to take to gather the information necessary for making such an assessment. The solution that I discuss involves workload consolidation; for an alternative consolidation solution, see the Web-exclusive sidebar "Different Paths to Server Consolidation: Workload vs. Virtualization," http://www.sqlmag.com, InstantDoc ID 95465.

Driving Factors
Consolidation tends to be a top-down rather than bottom-up business decision. In most cases, upper management wants to do more with less and hopes to recover some costs. Thus, consolidating SQL Server is only part of a much larger transformation within a company. Another case in which a company might push for SQL Server consolidation is if its data center is at or near capacity and building a new data center isn't an option. However, the biggest driver for consolidation that I see on a regular basis is a situation you might be familiar with: SQL Server sprawl.

SQL Server has always been a Trojan horse in many environments—it sneaks in through the back door and becomes pervasive because it's so easy to install and deploy whenever an organization needs a database server. You can install SQL Server on everything from mobile devices through servers. A side effect of this phenomenon is that it leads to a mentality of one database per instance, with that solitary database housed on a standalone server that's typically underutilized and/or has poor availability. In some cases, a company's lone SQL Server machine is a desktop machine that was never meant for production. But because people started using the instance and liked the solution built on top of the database, that desktop machine became mission critical.

These days, you might be able to gain more significant performance increases for your SQL Server installations with a shelf full of blade servers than you can with a 4U server you purchased only three years ago. Because many companies house terabytes of data that require management, you need to carefully consider everything from hardware purchases to operations. Consolidation means more than just stacking multiple SQL Server instances or putting multiple databases in one instance. You need to take into account the amount of cooling needed to ensure that the servers don't overheat, as well as the overall energy requirements for the multiple servers in your data center.

To do consolidation right, you'll most likely need to buy new servers. Assuming that you can use your existing servers might be a bad idea. If you reconfigure the servers, you won't have a true fallback plan after you consolidate. Instead, consider repurposing existing hardware to refresh development, quality assurance (QA), or staging environments. As you assess your consolidation strategy, you must decide how much and what type of new hardware you need and determine the cost.

In addition, ask yourself whether each instance in your environment was deployed and is administered in the same manner. In my onsite experience with both large and small customers, not a single one has consistently deployed SQL Server in exactly the same manner—despite the fact that each organization has posted standards. Managing these environments is a nightmare for DBAs. If each instance has different sort orders, service pack levels, database options, configuration settings, and other differences, you must remember all the variations or you might do something on one server that would be detrimental to another. Consolidation can assist in solving these problems; in fact, it's often the catalyst to standardize deployments and other paradigms (e.g., operations, processes, administration) in an environment.

What You Don't Know Will Hurt You
The first and perhaps most important thing you need to begin consolidating your environment is information. You need more than just a day's worth of Performance Monitor statistics, because a day's worth of counters won't give you enough information on which to base decisions for a proposed consolidation. In addition, numbers tell only part of the story.

First, compile a complete list of the known servers or other machines on your network with SQL Server installed. Although most clients think they know their entire SQL Server inventory, they actually don't. After you have this list, use a third-party tool (e.g., Quest Software's Reporter) or a homegrown utility (using Windows Management Instrumentation—WMI) to query all of the machines on the network that have any kind of SQL Server resource (including products such as Microsoft SQL Server Desktop Engine—MSDE). Then, compare the lists to see whether any new SQL Server installations were discovered. If the lists don't match, you need to determine who owns the newly discovered instances, what they're used for, and why you didn't know about them.

Next, record all aspects of SQL Server (e.g., physical machine information such as processor type and speed, brand, and model; all OS settings, including driver versions, service packs, and patches; instance configuration, including all server-level options and settings, code page, security, jobs, and DTS or SQL Server Integration Services—SSIS— packages; database configuration, including database options, database size, amount of free space, and size of each file). Record this information for every discovered SQL Server machine and instance. This detailed information will ultimately help you determine which databases you might be able to combine with others on a specific instance of SQL Server, as well as which databases will work well together. The information you document will influence many aspects of your consolidation assessment and plan, including your decision regarding the final instance standard (e.g., the version of SQL Server, which forms of high availability you might deploy). The documentation will also serve as a reference if you move a database and someone needs to know where it came from and whether you moved, reconfigured, or recreated objects such as jobs, DTS or SSIS packages, and replication. This might be the only chance to capture a complete snapshot of your SQL Server environment.

Although most DBAs don't track historical information about each database, you need this information (e.g., database usage, growth patterns—including size of database backups). For example, if a database has been in production for two years, knowing its growth pattern can help you predict the kind and amount of storage space you might need in the future. Merely making best guess estimates isn't an effective method for sizing an environment. If you don't have accurate information, you might wind up undersizing or grossly oversizing your proposed environment. Undersizing means you'll run out of capacity quickly, possibly even before you finish the consolidation; oversizing might cost your company money that could have been better spent elsewhere.

You can't turn back the clock and create information that doesn't exist, so do your best to track down the information you need. If you're lucky, the information might exist elsewhere, such as in a central monitoring system that has been monitoring disk counters for two years but that you didn't have access to. Talk to your systems administrators to see if they have information about your database servers that you don't have.

In addition to having growth information, you need to understand each database, instance, and server's performance. Your company most likely has a centralized tool such as Microsoft Operations Manager (MOM), NetIQ AppManager, or Computer Associates' (CA's) Unicenter that's gathering these statistics. If not, you can use Performance Monitor counters to find this information. Before you set up your own monitoring, make sure you aren't duplicating any efforts. Although you could gather statistics from every available counter, doing so would be overkill—you'd have a volume of information that you wouldn't know what to do with. Instead, gather information from a select list of counters that gives you the biggest bang for your buck. The Web-exclusive sidebar "Using Performance Monitor to Record Counters," http://www.sqlmag.com, InstantDoc ID 95466, explains how to obtain the information you need. For SQL Server counters, you can also query SQL Server 2005's Dynamic Management Views (DMVs) or SQL Server 2000's sysperfinfo.

   Prev. page   [1] 2     next page



You must log on before posting a comment.

If you don't have a username & password, please register now.