Virtualization 3.0

A lot of changes are happening in the IT space right now, with many of the conversations taking place in some Cloud context. What is not always clear is how much of the conversation is hype, and how much has real impact. A growing number of centralized information and information resources are shifting from Corporate Data Centers to both Public and Private Data Centers accessible over the Internet – so called Public and Private Clouds. As the shift grows, each major vendor ties marketing literature to their future “Cloud” strategy for dealing with the changing landscape, creating confusion in the market place.

The confusion becomes even more intense as the term “Cloud” is applied to technologies that have been developed to support large scale Internet accessible infrastructures becomes available to traditional IT organizations. Some may feel it safe to believe all of the Cloud talk is still just hype – but it turns out there are some real gems coming into the market place that can be lost in all of the marketing around Cloud solutions. As a result, I have stopped calling, or even thinking about, the new capabilities as Cloud capabilities  - instead talking about the new technologies as Virtualization 3.0. A process which seems to make previously tenuous and shifting conversation a bit more concrete.

Virtualization 1.0 and 2.0

From my perspective, Virtualization 1.0 was mostly about hardware consolidation. As many companies who conserved resources during lean years began to consider hardware and software upgrades, conversations about consolidating hardware resources through virtualization became the accepted norm. Discussing the opportunity to reduce the amount of hardware required to support small, medium, and large organizations who were upgrading from older software and equipment became a fairly comfortable conversation – particularly as the process was proven by more and more companies. Some organizations also took the opportunity to improve reliability by relocating centralized resources to large scale datacenters or hosting platforms, but not many. So Virtualization 1.0 was mainly about hardware consolidation.

I have spent much of the past 18 months discussing the veritable Recovery Time and Recovery Point objectives I used to plan large scale datacenter environments 10 years ago – but now in the context of virtualization. Discussions often involve not only the virtualization of physical servers, but also the approach to the spectrum of infrastructure availability, ranging from High Availability, to Backup and Recovery, to Disaster recovery and Business Continuity. I now see this discussion and planning about leveraging the capabilities of virtualized environments to meet business requirements – a conversation focused on ensuring IT resources are available when they are needed dispite the unexpected – as Virtualization 2.0. Which means Virtualization 2.0 has been mostly about IT support for Business Continuity.

Virtualization 3.0

Conversations around the third wave of virtualization are just beginning, focusing on two specific areas: Automation and architectures required to support the increasingly large number of virtual machines being supported on fewer, more powerful hosts. Many vendors are using “Cloud” to describe these solutions: vCloud, Private Cloud, etc. primarily because the technologies now available are a direct result of investments in research and development that were required to build large, successful Public and Private Cloud infrastructures. Microsoft, VMWare, and Citrix were forced to explore new technologies in order to provide the support massive datacenter environments with thousands of individual servers required; while at the same time looking for ways to drive down costs for public and private cloud solutions supported by Advertising, Freemium, or pay-as-you-go revenue streams. The fruits of the research and development dollars are now beginning to hit the mainstream in some surprising and exciting ways. It looks like the third wave of virtualization technologies, or Virtualization 3.0, will focus on Automation and Virtualized I/O, or Virtualized Networking – both of which become much more important as Virtual Machines and hosts are able to access an ever increasing amount of RAM and CPU resources.

We will explore some of the more interesting and recent developments over the next few weeks in this series entitled “Virtualization 3.0″.

File Server Resource Manager

Since Windows Server 2003 R2, there has been a hidden gem called the File Server Resource Manager (FSRM) and I’d like to take a few minutes to talk to you about it.

Even though the FSRM has been around for a while, it is still widely unknown.  So, what is so great about this obscure tool? Well, I’m glad you asked. With this tool you can:

  • Create quotas to limit the space that is allowed for a volume or folder, and generate e-mail and other notifications when the quota limits are approached or exceeded.
  • Generate and apply quotas automatically to existing and new subfolders in a volume or folder.
  • Create file screens to control the type of files that users can save, and send notifications when users attempt to save blocked files.
  • Create quota templates that can be easily applied to new volumes or folders.
  • Schedule periodic storage reports to help identify trends in disk usage.
  • Create scheduled tasks that apply actions to subsets of files.
  • Create File Expiration dates (well they are really Tasks).
  • Generate storage reports (my personal favorite).

Before you can get started, you need to get FSRM installed. In server 2008 and 2008 R2 you can add the FSRM by launching the Server Manager. In most cases, the FSRM isn’t installed, so you’ll want to install it by clicking the Add Role Services.

While adding it, you’ll come to the Set Report Options Screen where you’ll want to configure where you save the storage reports and where to email the reports once they are generated.

Once you have the FSRM installed, you’ll see it in the Server Manager under Share and Storage Manager.

There are so many things you can do with this tool that I can only touch the tip of this mighty iceberg in this post. With that said, I’ll walk you through the Storage Reports tool and then let you spend some quality time getting to know this new friend on your own.

As you can see below, I’ve highlighted the Storage Reports Management in the Left Pane, in the far Right Pane, I clicked the “Generate Reports Now…” link which launched the wizard in the middle.

I’ve chosen to Add C:\ as the scope since I’m not doing any file sharing on the Exchange server in my lab. If I were working in a production environment, I most certainly would have had file shares that would have Quotas enabled on even if they were not enforced.  Here in my lab, things are very exciting when it comes to users files so I checked all the check boxes for reports and looked though them.  Here are some of the highlights:

This first one is Duplicate Files and even though this is just an Exchange Sever in my Lab, I was surprised to find Duplicates but there they were 4GB of them.

This second shot is of Large files:

And this last one is of the File Owners:

I’m certain the reports you’ll generate will be a lot more exciting than the ones from my Lab.

Hope to see you here soon!

A Peek inside an Exchange Admin’s Toolbag

Sometimes I’m asked to take a look at a company’s Exchange environment and make sure everything is healthy. I use a variety of tools to collect data, some of which I share with the client, and others would seem too much like reading tea leaves, so I keep that to myself.  I thought I’d share some of the tools I use. This isn’t my full arsenal of tools, but instead it’s a subset that I think will be helpful to most Exchange Administrators. These tools are relevant to Exchange 2007 and Exchange 2010, but not to older versions of Exchange.

The Microsoft Exchange Best Practices Analyzer (BPA) tool will uncover a lot of information. This tool can be found under the Toolbox section of the Exchange Management Console. A great feature to this tool is as Microsoft makes changes to their Best Practices for Exchange, those changes will be updated to the BPA. When you run the BPA, it will connect to your Domain Controller and make sure it’s not trying to connect to a Domain Controller at a different site in Active Directory.  Give the report a name and let it run.

Once the report finishes you’ll see something like this:

As you can see on this server, there are a number of errors needing to be addressed. When you click on one of those errors, you will see there are a few options, one of which is: “Tell me more about this issue and how to resolve it.”  If you follow that link, it will give you details about why this is an important change to make and lead you to Knowledge Base articles that will help you resolve the issues. In this instance, you only see warning level issues.  However, in many cases, there are critical errors.

Another tool that I use extensively is the Application Log in the Event Viewer. If you don’t look at your log viewer often, you may be surprised at what you find. Often, people don’t think to look at logs but when I do I often find skeletons lurking in the closet:

Now for the fun stuff, I thought I’d share a couple of command line tools that will help you get some statistics from your Exchange server.  These commands are run at prompt of the Exchange Management Shell. This first command will get you a list of all your mailboxes on a server and sort them from largest to smallest. This can be quite the eye opener

Change out the items in red to match your environment:

Get-MailboxStatistics -Server SERVERNAME | Sort-Object TotalItemSize -Descending | ft DisplayName,@{label=”TotalItemSize(KB)”;expression={$_.TotalItemSize.Value.ToKB()}}, ItemCount > c:\users\YourUserName\Documents\mailboxes.txt

And Last but not Least, this command line will produce a list of all that ActiveSync Partnerships Exchange still has listed. Some of these partnerships found are rather old and need to be removed, either way you’ll certainly find the results interesting.

Get-Mailbox | ForEach {Get-ActiveSyncDeviceStatistics -Mailbox:$_.Identity} | Select-Object Identity, DeviceFriendlyName, Devicetype, DeviceUserAgent, FirstSyncTime, LastSuccessSync | export-csv c:\users\YourUserName\test.csv