I was setting up a new SharePoint 2010 installation for my new TFS 11 Beta deployment and I thought to myself I might as well do it on Windows Server 8 Beta. The task was a bit challenging, but if you have already installed SharePoint 2010 on Windows 7 then you wont feel that uncomfortable.

  I also feel like giving out the usual “do not try this at home” message; this was just an experiment I do not advise that you use Windows 8 Server Beta in production environments nor SharePoint 2010 on Windows 8 Server Beta.

The Environment

  Just to give a bit more detail behind this, I am now running Hyper-V 3.0 on my desktop PC as I couldn’t resist installing Windows 8 CP on it. So all the work here is done on Hyper-V 3.0. The host is 12 core Intel i7 on an X79 chipset with 32GB DDR3 Quad Channel RAM.

  Windows Server 8 ships with IIS 8.0 and .NET 4.5 by default. .NET 3.5 can be installed via the Add Roles and Features wizard. You might not like the Windows Server Dashboard (/Server Manager) but it really allows one point access to the entire machine configuration without going through the clunky new Start panel which is optimised for home users and touch input devices instead.

  I strongly advise that you remove The IPv6 protocol from your Ethernet adapter as in my scenario, it tried to contact my domain controller using IPv6 which I only configured as IPv4. I had the same issue with my Windows 8 CP install.

Prerequisites

  First and foremost, the prerequisites installer is not compatible and Windows Server 8 tells you about it straight away. You can always ignore it and run it but it will eventually disappear from your desktop without even an error message. The issue here is that a component that existed in Windows Server 2008R2, no longer exists.  The component is ServerManagerCmd.exe which resides in %WINDIR%\System32. Someone was kind enough to develop a replacement which can be found here. If you don’t speak French, simply scroll to the bottom of the post and get the executable file and place it in your \Windows\System32 directory. We will need this to get the main SharePoint installer running.

  So the first and most obvious task is to get the prerequisites onto your new box. Lets start by adding .NET Framework 3.5 (and 2.0), IIS, Application Server Role and WIF 3.5 via the “Add Roles and Features” wizard on the brand new Server Manager. Click on manage on the top right corner and select “Add Roles and Features”. The next few steps should be straight forward so I will not go into much detail.

Roles

The following Roles are required:

  • Application Server
  • Web Server (IIS)

Features

The following Features are required:

Generic
  • .NET Framework 3.5 Features (and all sub-features)
  • Windows Identity Foundation 3.5
  • Windows PowerShell (this is automatically installed on WS8 and you cannot remove it)
  • Windows Process Activation Service and all sub-features
Application Server

I am not sure why I selected some here, at some point i was desperate to get this working so I’ve selected some things I probably didn’t need. No harm there.

  • .NET Framework 4.5
  • COM+ Network Access
  • Web Server (IIS) Support
  • TCP Port Sharing
  • Windows Process Activation Service Support
    • HTTP Activation
    • TCP Activation
Web Server
  • Management Tools
    • IIS Management Console
    • From IIS 6 Management Compatibility:
      • IIS 6 Metabase Compatibility
      • IIS 6 WMI Compatibility
    • IIS Management Scripts and Tools
  • Web Server
    • From Common HTTP Features:
      • Default Document
      • Directory Browsing
      • HTTP Errors
      • Static Content
    • From Health and Diagnostics:
      • HTTP Logging
      • Custom Logging
      • Logging Tools
      • Request Monitor
      • Tracing
    • From Performance:
      • Static Content Compression
      • Dynamic Content Compression
    • From Security:
      • Request Filtering
      • Basic Authentication
      • Digest Authentication
      • Windows Authentication
    • From Application Development
      • .NET 3.5 Extensibility
      • Application Initialization (more on this later on)
      • ASP.NET 3.5
      • ISAPI Extensions
      • ISAPI Filters

Redistributables

  If the prerequisites installer didn’t work at all for you, you can download and install all prerequisites as described in the Hardware and software requirements (SharePoint 2010). Keep in mind that the .msu files are intended for windows 6.0 and 6.1 but do not apply to 6.2 (Windows 8).

IIS Configuration

  One more detail here is the fact that new application pools will be created for the .NET 4.0 runtime instead of .NET 2.0. To avoid that, open the IIS management console and select the server node.Under actions you should see a “Change .NET Framework Version”. Make sure you have selected  selected v2.0.50727 in the dialog. Now click on the “View Application Pools” link under actions and at the new view under actions should notice a “Application Pool Defaults…” link. Open that up and select the following:

  • .NET Framework Version=v2.0. We don’t want SharePoint creating .NET 4.0 Application Pools.
  • Start Mode=AlwaysRunning. I have the impression this will automatically warm up my apps after IIS resets/recycling.
  • Ping Enabled=false. This will prevent those annoying timeouts when you have hit a breakpoint or exception in the debugger and you are spending some time inspecting the locals, only to find out that IIS has recycled the application pool thinking that it crashed instead of having stopped execution, taking away your debugging session. Keep in mind this is optional if you wont develop on the box.

Patching Up

  Just to be on the safe side I have applied SP1 and the December 2011 CU. The other reason behind the December 2011 CU is because I am using SQL Server 2012 RC.

Configuring your Farm

  My first attempt to set up the farm was made using PowerShell and specifically New-SPConfigurationDatabase. The error there was that SharePoint 2010 does not support .NET 4.0. Looks like PowerShell executes under .NET 4.0 in Windows 8 so I have instead used the products configuration wizard which completed successfully.

  Following that, I have used the UI to create my Service and Web Applications which all completed successfully.

  SharePoint felt faster on Windows Server 8 and I am not sure if the fact that Hyper-V 3.0 was also involved contributed to that. It is a real shame that PowerShell executes under the .NET 4.0 runtime so I guess we will need to wait a bit longer before we can properly run SharePoint 2010 on Windows Server 8.

Update: Thanks to @guilhrme for his PowerShell tip: “Hi, its easy to resolve your Powershell problems executing SharePoint 2010 commands on Windows 8 or Windows Server 8 (.net 4.0 runtime error). Open powershell with administration account, and type PowerShell.exe -Version 2. Next, load the Snapin of SharePoint with the following command: Add-PsSnapin Microsoft.SharePoint.Powershell. Now, you will be able to run your SharePoint commands with Powershell 2.0 engine.”

And Also Stefan for suggesting the use of PowerGUI on Windows 8

Advertisements