I often get asked why I like Hyper-V or why I don’t like VMware. The answer, strangely, isn’t about technology. Anybody that knows me well, knows that I’m not a technology bigot. Meaning I don’t get fanatical about particular companies or pieces of technology. In my house we have six tablets. A Surface RT, a Surface Pro (soon to be replaced by a Pro 2), 3 Android tablets, and an iPad. They all get used on a regular basis. There is no favourite. Just a preference for one device over the other based on the particular use case in question and the strengths of each device at addressing that use case. I’ve used VMware products for years and I like them. They have met many of the requirements I’ve had for a long time.
So how does this relate to Microsoft vs. VMware? Well, I see a lot of fanaticism over VMware. A large percentage IT Pros really love it and many are fanatical about it. They are quick to criticize alternatives (like Hyper-V) without having all of the facts. Another issue is that most people see the results of past consumption and mistake it for current market trends. Let me explain that with an example. Currently Android phones outsell iPhones however, most people see more iPhone sin use that Android phones because iPhones have been around longer have had past sales success. What is being seen is phones that were purchased over the last several years still in use.
Enough digressions. Back to Microsoft and VMware. Historically, VMware has had the edge over Microsoft in the hypervisor market. With Hyper-V 3, most experts would agree that the gap has narrowed enough that for most organizations, the differences are insignificant from a pure technical capabilities perspective. It’s like choosing between a Honda and a Toyota. Both vendors have offerings in every major segment. Most consumers would be equally well served by a Camry or an Accord but preferences still abound. In the virtualization world, there are many other factors to consider such as migration costs, retraining, new licensing, etc. VMware has had very strong technical offerings for a long time and the investments made by many organizations can’t easily be shifted. Of course, historically, there are many examples of a technically superior product being eclipsed (BetaMax vs. VHS, Amiga vs. PC, FLAC vs. MP3). It also isn’t about first or early movers in a market. Consider Blackberry losing 33% market share in 2012 while Android now has nearly 80% market share in the smartphone market. Of course, depending on when you read this the current market share may be very different.
So back to my previous statement “It isn’t about technology”. I’ve shown examples of a superior product losing out as well as examples of an early mover with a dominant market position being eclipsed by a relative newcomer. If not technology, what’s it about then?
Well, I’m an IT Pro. Any IT Pro worth his salt will tell you that the three key elements of a successful IT rollout of any system are People, Process, and Technology. Not necessarily in that order, but all three ingredients are required for success.
As I’ve mentioned previously, VMware has great technology and Microsoft is no slouch either. We can remove people from the equation since both Microsoft and VMware have access to the pretty much the same talent pool and really, the people that matter most aren’t the vendor’s staff but the enterprise customers’ datacenter staff. So a talented VMware administrator could easily be a talented Microsoft administrator. Using the same logic, you might conclude that the processes that are used in enterprise datacenters would also be a wash between VMware and Microsoft implementations and for the most part you’d be right. However I believe Microsoft has an edge. Here’s why:
Microsoft has a long history of supporting cloud/online services that process billions of transactions a year. Consider Hotmail/Outlook.com, XBOX Live, Office 365, Azure, as a few examples with revenue Microsoft has had to develop some fairly robust processes for managing their datacenters. This isn’t new for Microsoft. Consider the ITIL based Microsoft Operations Framework (MOF) currently at version 4.0 has been around since 2000. VMware doesn’t have an online services history to learn the hard lessons of datacenter management or the history of helping customers manage their datacenters from a process perspective. Microsoft has taken the battlefield tested processes they’ve used for over a decade and incorporated many of them into one of the newer and lesser known products in the System Center suite, Service Manager.
Service Manager helps organizations align business processes with technology delivery to create efficiencies in service delivery. The product is tightly integrated with the rest of the system Center suite (especially products like Operations Manager, and Configuration Manager) as well as Active Directory. The rich CMDB provided by Service Manager helps to manage the inevitable VM sprawl that accompanies virtualization. It is also a great platform to bolt on a SAM/ITAM solution like the one from Provance (Full disclosure: Provance is headquartered a few kilometres from my homeand I know many of their staff professionally – We’ve worked on joint projects and I’ve had more than a few drinks with them over the years.).
Until VMware has a similar offering, organizations that want to enable IT Service Management (ITSM) best practices, will find it much easier with a Microsoft private cloud solution than with a VMware solution.
BTW – Market share numbers for last year shows an interesting trend in the hypervisor adoption rates:
Source – Wall street Journal / IDC
Are we in the midst of a Blackberry like decline for VMware?
I’m sure that most organizations perform some sort of backup of their System Center 2012 Configuration Manager (CM12) sites, however, how many of them have actually tested their backup?
Probably very few, as it can be very difficult to simulate a failure in production and perform a site recovery. Backups are good. Backups that you know you can actually restore from are better.
This post is intended to give the reader an understanding of the general case backup requirements of CM12, a sample backup strategy, and how to test the backup by simulating a failure and performing a restore of the database portion of the site. I typically walk my clients through this process before handing them the keys to their new CM12 environment.
The instructions provided here are based on System Center 2012 Configuration Manager SP1 and MS SQL Server 2012 SP1.
The Scheduled Backup Task
CM12 has a built in maintenance task call Backup Site Server. It performs synchronization between the database and the site control file and other key configuration elements of the Configuration manager site. Although a restore from a database backup is also supported in CM12, this post will only address using the Configuration Manager scheduled backup task as most administrators should be familiar with it.
As part of the site configuration, the maintenance task to perform a site backup should be configured to perform a daily backup stored in an easily accessible location. For the purposes of this post, let’s use E:\CM12_Backup
Figure 1 – Configure Backup Maintenance Task
The success of the backup task can be verified in the following ways:
- Review the timestamp on the SMSBKUP.LOG file that the Backup Site Server maintenance task created in the backup destination folder. Verify that the timestamp has been updated with a time that coincides with the time when the Backup Site Server maintenance task was last scheduled to run. Review the log files for errors.
- In the Component Status node in the Monitoring workspace, review the status messages for SMS_SITE_BACKUP. When site backup is completed successfully, you see message ID 5035, which indicates that the site backup was completed without any errors.
- When the Backup Site Server maintenance task is configured to create an alert if backup fails, you can check the Alerts node in the Monitoring workspace for backup failures.
- In <ConfigMgrInstallationFolder>\Logs, review Smsbkup.log for warnings and errors. When site backup is completed successfully, you see Backup completed with a timestamp and message ID STATMSG: ID=5035.
The backup files in E:\CM12_Backup should be moved to an archival media as per corporate standards. Multiple copies should be maintained in the event that one copy is corrupted or unavailable as it is preferable to restore from an older backup that to recreate the entire infrastructure manually if the latest backup is unavailable.
Additional Items to Backup
The Backup Site Server task is intended to backup key elements of the Configuration Manager site that require synchronization, or other special attention.
Items that are not backed up by the Backup Site Server maintenance task that should be considered for inclusion in any supplementary backup tasks are listed below:
- Any custom reports and extensions used to create them (models, views, tables, etc.)
- The content library stored in the <drive:>\SCCMContentLib folder
- Package source files
- User State Migration Data
To restore a Configuration Manager Site Server, follow these steps:
- Run the Configuration Manager Setup Wizard from installation media or a shared network folder. For example, you can start the Setup wizard by using the Install option when you insert the Configuration Manager DVD. Or, you can open Setup.exe from a shared network folder to start the Setup wizard.
- On the Getting Started page, select Recover a site, and then click Next.
- Complete the wizard by selecting the options that are appropriate for your site recovery
Once the site has been successfully recovered, the following tasks need to be performed:
- Re-enter the passwords for any accounts that are used by site systems (refer to the Configuration guide for a list of accounts – you have one right?)
- Reinstall and hotfixes or Cumulative Updates applied to the site since the initial build
- Restore the Content Library
- Restore the Package Source Files
- Restore the User State Migration Data
Partial Recovery – Database Only
The site recovery wizard will run the same prerequisite checks that a full install will perform. If a full rebuild of the server OS was not performed and only a database recovery is required, the restore process may fail on the detection of a dedicated SQL instance with the following error:
Dedicated SQL Server instance Failed
The same error may be encountered during a test of the restoration process due to remnants of the site in the registry that may indicate a previous installation.
To remedy this error, delete the following registry keys:
- [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\Operations Management\Components\SMS_SITE_SQL_BACKUP
The same issue may also arise when testing the DR process. The same resolution method can be used. I have created a batch file that I use to speed up this process. Here is the source for my DelKeys.bat file:
Performing a Database Only DR Test
As the base OS, SQL Server and, Configuration Manager Application software can all be rebuilt from generic source media, the most important part of a DR test is to verify that the site configuration and database can be restored as these items will be specific to your organization. The following method can be used to simulate a failure and restore.
- Create one or more objects (such as collections) and make some configuration changes (such as a boundary).
- Perform a site backup. To quickly start a site backup without modifying the backup schedule, use Service Manager to start the SMS_Site_Backup service.
- Once the backup has completed, delete the objects and configuration changes made in step 1
- Use the command PREINST.EXE /STOPSITE to stop all CM12 services. Browse to “\Program Files\Microsoft Configuration Manager\Bin\x640000409” to find the executable.
- Use SQL server Management Studio to Detach the site database
Figure 2 – Detach Configuration Manager Database
- Rename the <DB_Name>.MDF and <DB_Name>.LDF files which are found under \Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA
Delete the following three registry keys:
- HKLM\SOFTWARE\Microsoft\SMS\Operations Management\Components\SMS_SITE_SQL_BACKUP
- Perform the Site Recovery task and select restore database from backup.
- Browse to the location of the database backup.
- The site recovery details will be pre-populated.
- Browse to the location of the downloaded prerequisites from the initial installation process.
- The pre-requisite check will run and complete and then the installation will begin.
- Site and installation settings will be pre-populated as will the database information.
- Once the process is started it will appear as the original installation. Refer to the Server Build Guide for more details.
- Once the recovery is complete, verify that the objects and configuration items that you created in Step 1 are recovered.
- Remove the Test Objects and configuration items.
- Additional information about the restore can be found in the c:\ConfigMgrSetup.Log file
Now go test those backups.