Поделиться через


What MOSS 2007 prerequisites are needed for Windows Server 2008 and how can I automate this?

When I was installing 64-bit Exchange Server 2007 SP1 on my Hyper-V 64-bit Windows Server 2008 guest I found there was a nice servermanagercmd.exe XML file you could leverage depending on what Exchange 2007 role you were installing. If you have many Exchange 2007 servers to build it makes life easier. You can get those Windows Server 2008 prerequisite XML files for Exchange Server 2007 roles here.

Next, I searched for the Windows Server 2008 XML files for MOSS 2007 but for whatever reason I could not find anyone who has developed one. So I could learn for my customers, I decided to figure out how to write my own.  I read up on how to create your own servermanagercmd XML file on TechNet here and I leveraged the XML files written for Exchange as a template.

Since everything is much more granular as far as which components are installed on Windows Server 2008, you must now understand which exact roles and components are needed since you no longer install everything by default even when you install IIS 7.0 for example. The logic behind this is a good one since the less you have installed by default then the less attack surface there is. 

The first thing I had to do was figure out what Windows Server 2008 prerequisites are needed for MOSS 2007. Luckily, I found a reference here from TechNet:

Web Server (IIS) Role and Role Services Required by SharePoint Products and Technologies

Web Server

  • Common HTTP Features *Required
    • Static Content *Required
    • Default Document *Required
    • Directory Browsing *Required
    • HTTP Errors *Required

Application Development

  • ASP.NET *Required
  • .NET Extensibility *Required
  • ISAPI Extensions *Required
  • ISAPI Filters *Required

Health and Diagnostics

  • HTTP Logging *Required
  • Logging Tools *Required
  • Request Monitor *Required
  • Tracing *Required

Security

  • Basic Authentication *Required
  • Windows Authentication *Required
  • Digest Authentication *Required
  • Request Filtering *Required

Performance

  • Static Content Compression *Required
  • Dynamic Content Compression *Required

Management Tools

  • IIS Management *Required

IIS 6 Management Compatibility

  • IIS 6 Metabase Compatibility*Required 

 

           .NET Framework 3.0 Features *Required

    • .NET Framework 3.0

            Network Load Balancing *Optional

            Remote Server Administration Tools *Optional

    • Remote Administration Tools
      • Web Server (IIS)) Tools

Now that I had an official list of Windows Server 2008 prerequisites for MOSS 2007, I decided to create a custom servermanagercmd xml file for MOSS 2007.

Here is the XML file I created:

<!-- ServerManagerCmd Answer File compatible with Windows Server 2008 -->
<!-- Usage: ServerManagerCmd -ip MOSSbase.xml -->
<!-- -->

<ServerManagerConfiguration
Action="Install"
xmlns="
https://schemas.microsoft.com/sdm/Windows/ServerManager/Configuration/2007/1 ">

  <!-- Install the Web Server role with additional child components for MOSS -->
<Role Id="Web-Server"/>

  <!-- Common HTTP features -->
<RoleService Id="Web-Static-Content"/>
<RoleService Id="Web-Default-Doc"/>
<RoleService Id="Web-Dir-Browsing"/>
<RoleService Id="Web-Http-Errors"/>

  <!-- Application Development -->
<RoleService Id="Web-Asp-Net"/>
<RoleService Id="Web-Net-Ext"/>
<RoleService Id="Web-ISAPI-Ext"/>
<RoleService Id="Web-ISAPI-Filter"/>

  <!-- Health and Diagnostics -->
<RoleService Id="Web-Http-Logging"/>
<RoleService Id="Web-Log-Libraries"/>
<RoleService Id="Web-Request-Monitor"/>
<RoleService Id="Web-Http-Tracing"/>

  <!-- Security -->
<RoleService Id="Web-Basic-Auth"/>
<RoleService Id="Web-Digest-Auth"/>
<RoleService Id="Web-Windows-Auth"/>
<RoleService Id="Web-Filtering"/>

  <!-- Performance -->
<RoleService Id="Web-Stat-Compression"/>
<RoleService Id="Web-Dyn-Compression"/>

  <!-- Management Tools -->
<RoleService Id="Web-Mgmt-Console"/>
<!-- IIS 6 Management Compat -->
<RoleService Id="Web-Metabase"/>


<!-- Install .NET framework 3.0 -->
<Feature Id="NET-Framework-Core"/>

</ServerManagerConfiguration>

You can download my sample Windows Server 2008 prereq XML file for MOSS 2007 here. Use it as a reference XML file and tweak and test it as necessary.

Next, I ran the following:

1. Right click on command prompt and select run as administrator

2. From the command prompt run: servermanagercmd -ip mossbase.xml -whatif first to see what is already installed

whatif

3. Now you can tell what is missing from your prerequisites and that your XML file is valid. You are ready to install now so run:

Servermanagercmd -ip mossbase.xml

moss xml

And that is it. All the MOSS 2007 prerequisites are installed on Windows Server 2008 and you are now ready to install MOSS 2007.