Tag Archives: server

Why Windows Server is going Nano: think automation, Cloud OS

Yesterday Microsoft announced Windows Nano Server which is essentially an installation option that is even more stripped-down than Server Core. Server Core, introduced with Windows Server 2008, removed the GUI in order to make the OS lighter weight and more secure. It is particularly suitable for installations that do nothing more than run Hyper-V to host VMs. You want your Hyper-V host to be rock-solid and removing unnecessary clutter makes sense.

There was more to the strategy than that though, and it was at last week’s ChefConf in Santa Clara (attended by both Windows Server architect Jeffrey Snover and Azure CTO Mark Russinovich) that the pieces fell into place for me. Here are two key areas which Snover has worked on over the last 16 years or so (he joined Microsoft in 1999):

  • PowerShell, first announced as “Monad” in August 2002 and presented at the PDC conference in September 2003. Originally presented as a scripting platform, it is now described as an “automation engine”, though it is still pretty good for scripting.
  • Windows Server componentisation, that is, the ability to configure Windows Server by adding and removing components. Server Core was a sign of progress here, especially in the Server 2012 version where you can move seamlessly between Core and full Windows Server by adding or removing the various pieces. It is still not perfect, mainly because of dependencies that make you drag in more than you might really want when enabling a specific feature.
  • PowerShell Desired State Configuration, introduced in Server 2012 R2, which puts these together by letting you define the state of a server in a declarative configuration file and apply it to an OS instance.

I am not sure how much of this strategy was in Snover’s mind when he came up with PowerShell, but today it looks far-sighted. The role of a server OS has changed since Windows first entered this market, with Windows NT in 1993. Today, when most server instances are virtual, the focus is on efficiency (making maximum use of the hardware) and agility (quick configuration and on-demand scaling). How is that achieved? Two things:

1. For efficiency, you want an OS that runs only what is necessary to run the applications it is hosting, and on the hypervisor side, the ability to load the right number of VMs to make maximum use of the hardware.

2. For agility, you want fully automated server deployment and configuration. We take this for granted in cloud platforms such as Amazon Web Services and Azure, in that you can run up a new server instance in a few minutes. However, there is still manual configuration on the server once launched. Azure web apps (formerly web sites) are better: you just upload your application. Better still, you can scale it by adding or removing instances with a script or through the web-based management portal. Web apps are limited though and for more complex applications you may need full access to the server. Greater ability to automate the server means that the web app experience can become the norm for a wider range of applications.

Nano Server is more efficient. Look at these stats (compared to full Server):

  • 93 percent lower VHD size
  • 92 percent fewer critical bulletins
  • 80 percent fewer reboots

Microsoft has removed not only the GUI, but also 32-bit support and MSI (I presume the Windows Installer services). Nano Server is designed to work well both sides of the hypervisor, either hosting Hyper-V or itself running in a VM.

Microsoft has also improved automation:

All management is performed remotely via WMI and PowerShell. We are also adding Windows Server Roles and Features using Features on Demand and DISM. We are improving remote manageability via PowerShell with Desired State Configuration as well as remote file transfer, remote script authoring and remote debugging.

Returning for a moment to ChefConf, the DevOps concept is that you define the configuration of your application infrastructure in code, as well as that for the application itself. Deployment can then be automated. Or you could use the container concept to build your application as a deployable package that has no dependencies other than a suitable host – this is where Microsoft’s other announcement from yesterday comes in, Hyper-V Containers which provide a high level of isolation without quite being a full VM. Or the already-announced Windows Server Containers which are similar but a bit less isolated.

image

This is the right direction for Windows Server though the detail to be revealed at the Build and Ignite conferences in a few weeks time will no doubt show limitations.

A bigger issue though is whether the Windows Server ecosystem is ready to adapt. I spoke to an attendee at ChefConf who told me his Windows servers were more troublesome than Linux,. Do you use Server Core I asked? No he said, we like to be able to log on to the GUI. It is hard to change the culture so that running a GUI on the server is no longer the norm. The same applies to third-party applications: what will be the requirements if you want to install on Nano Server (no MSI)? Even if Microsoft has this right, it will take a while for its users to catch up.

Microsoft financials: record revenue, signs of Windows 8 concern

Yesterday Microsoft released its financial figures for the last three months of 2012.

Quarter ending December 31st 2012 vs quarter ending December 31st 2011, $millions

Segment Revenue Change Profit Change
Client (Windows + Live) 5881 +1140 3296 +416
Server and Tools 5186 +171 2121 +409
Online 869 +85 -283 +176
Business (Office) 5691 -619 3565 -623
Entertainment and devices 3772 -466 596 +79

Although Microsoft reported record revenue, I do not consider these figures all that revealing. The transcript of the earnings call is more to the point. A few notable remarks from CFO Peter Klein and General Manager Investor Relations Chris Suh

  • 60 million Windows 8 licenses sold and 100 million apps downloaded. At 1.66 apps per license that shows lack of interest in the new Windows Store and raises suspicions that some of those sales may actually be downgraded to Windows 7. The remarks from Klein confirm that the new platform is off to a slow start:

It’s early days and an ambitious endeavor like this takes time. Together with our partners, we remain focused on fully delivering the promise of Windows 8.

While the number of apps in the Windows Store has quadrupled since launch, we clearly have more work to do. We need more rich, immersive apps that give users’ access to content that informs, entertains and inspires.

  • Suh states that Windows is selling better to businesses than consumers. Declining interest from consumers is obvious if you walk around a few retailers selling Windows PCs:

Within the x86 PC market, we saw similar trends to prior quarters, with emerging markets outperforming developed markets, and business outperforming consumer. The consumer segment was most impacted by the ecosystem transition, as demand exceeded the limited assortment of touch devices available.

  • System Center 18% revenue growth
  • SQL Server revenue 16% growth
  • Online revenue (this is Bing not Azure) up 11%
  • Windows Phone sales 4 times higher than last year
  • Skype calls up 59%

The company says little about Office 365 and Azure, but my perception is that both are growing fast though how significant they are versus traditional software license sales is less clear.

Trouble ahead? With Windows 8 struggling for acceptance, Office under threat from online and device alternatives, the games console business (overall not just Microsoft) probably in permanent decline, and Windows Phone not yet quite mainstream, you would think so. On the other hand, this is a company with a broad and deep product range and looking at the solid performance of the server products and continuing strength of Windows and Office in business, we may continue to be surprised at its resilience.

Apple gives up on Xserve dedicated server hardware – looking towards the cloud?

Apple is scrapping is Xserve products, according to the latest information on its web site:

Xserve will no longer be available after January 31, but we’ll continue to fully support it. To learn more, view the PDF.

If you do indeed view the PDF, it confirms that:

Apple will not be developing a future version of Xserve

However, the Snow Leopard Server, a version of OS X tuned for server use, remains; and Apple suggests that you install it either on a Mac Pro or on a Mac Mini.

image

That’s all very well; but while a Mini might well make sense for a very small business, larger organisations will not be impressed by the lack of features like dual redundant power supplies, lights out management, and rack mounting, which the Xserve provides.

There are a couple of ways to look at this. One is that Apple is giving up on the server market. Largely true, I think; but my guess is that Apple realises that this type of on-premise server is under threat from the cloud. I do not see this as Apple giving up on corporate computing; that would be unexpected considering the gains it is making with Mac, iPhone and iPad. I do see this as a move towards a client and cloud, or device and cloud, strategy. In that context it is not so surprising.

That said, I imagine there are a few businesses out there focused on supplying Xserve-based systems who will be disappointed by the news. I’ve not used one myself; but from what I’ve heard it is rather good.

Should IT administration be less annoying?

I am more a developer than an IT administrator but sometimes find myself doing (and writing about) admin-type tasks. I am usually under time pressure and I find myself increasingly irritated by annoyances that take up precious time.

It seems to me that there is a hidden assumption in IT, that usability is all-important when it comes to end users, but that the admin can tolerate any amount of complexity and obscurity, provided that the end result is happy users with applications that work. The analogy I suppose is something like that of a motor car with an engineer who gets hands grubby under the bonnet, and a driver who settles back in a comfortable seat and uses only clean, smooth and simple controls to operate the vehicle.

That said, any engineer will tell you that some vehicles are easier to work on than others, and some documentation (whether paper or electronic) more precise and helpful than others. No engineer minds getting oil on their hands, but wasting time because the service manual did not mention that you have to loosen the widget before you can remove the doodah is guaranteed to annoy.

A little detail that I’ve been pondering is the Internet Explorer Enhanced Security Configuration found in server versions of the Windows operating system. This is a specially locked-down configuration of IE that is designed to save you from getting malware onto your server.

That’s a worthy goal; and another good principle is not to browse the web at all on a server. Still, as we all know the first thing you have to do on a Windows server is to install patches and drivers, some of which are not available on Windows Update. In addition, not all servers are mission-critical; I find myself setting them up and tearing them down on a regular basis for trying out new software. It may therefore happen that you open up IE to grab a patch from somewhere; and it is a frustrating experience. Javascript does not work; files do not download. The usual solution is to add the target site to Trusted Sites – thereby giving the site more trust than it really needs. The sequence goes something like this:

1. Browse to vendor’s site to find driver.

2. Notice nothing works, click Tools – Internet Options – Security, Trusted Sites, Sites button, Add.

3. Click Add, forgetting to uncheck the box that says “Require server verification (https:)”.

4. Get this dialog:

image

5. Wonder briefly why IE did not spot that you are adding a site with an http: prefix before rather than after you clicked Add.

6. Uncheck the box, repeat the Add, go back to IE, refresh page to make scripts etc run and likely lose your progress through the site.

7. Find that the site now redirects to ftp://vendorsite.com and you have to repeat the process.

A minor issue of course; but if this is a sequence you have gone through a few times you will agree that it is annoying and not really thought through. Perhaps it is to do with Windows server having a GUI that it does not really need; on Linux or even Server Core you would use the fine wget utility having found the url of the file you need using the browser that you have running alongside your terminal window.

I also realise there are may ways round it, ranging from something to do with laptops and USB pen drives, to installing Google Chrome which only takes a few clicks, does not require admin rights, and happily downloads anything.

What prompts this little rant is not actually IE Enhanced Security Configuration, which is a familiar enemy, but a day figuring out the subtleties of Microsoft’s App-V, brilliant in concept but not the easiest thing to set up, thanks to verbose but unhelpful documentation, dependency on SQL Server set up in the right way that is not clearly spelt out, lack of support for Windows x64 clients except in the beta of App-V 4.6 which is available from a Microsoft Connect URL that in fact reports non-availability; you know the kind of thing:

image

At times like this, the system seems downright hostile. Of course this does not matter, because administrators are trained to do this, and don’t mind provided that the users are happy in the end.

But I don’t actually believe that. In Windows 7 Microsoft deliberately targeted  the things that annoy users because, under pressure from Apple, it figured out that this was necessary in order to compete. The result is an OS that users generally like much better. The things that annoy admins are different, but equally affect how much they enjoy their work; and effort in this area is equally worthwhile though less visible to end-users.

In fairness, initiatives like the web platform installer show that in some areas at least, Microsoft has learned this lesson. There is, however, plenty still to do, especially in these somewhat neglected areas like App-V.

My final reflection: when Microsoft came out with Windows NT Server back in 1993 I expect that being easier to use than Unix was one of the goals. Perhaps it was, then; but Windows soon developed its own foibles that were as bad or worse.