Microsoft SharePoint Foundation 2010 Installation – Part 1

You’re ready to introduce SharePoint 2010 into your [SMB])https://en.wikipedia.org/wiki/Small_and_medium_businesses) and you’ve chosen to install the free with Windows Server version called “Foundation”. Details about this version can be found on the SharePoint Foundation 2010 Production Information webpage. You’ll need a minimum of two servers, virtual or physical with the specifications listed below to get started. While it is possible to run SharePoint 2010 on a single server, it’s definitely not recommended for a production environment. Depending on the service applications you choose to enable and the number of users who will be concurrently using SharePoint, additional servers may be required. Some organizations will choose to install on a minimum of three servers for redundancy of the Web Front End.

Dedicated SQL Server:

Install Microsoft SQL Server 2008 R2 x64 on a dedicated database server. SQL 2008 (non-R2 and SQL 2005 are supported with specific updates installed, but SQL 2008 R2 and SharePoint 2010 are considered to work Better Together according to a Whitepaper available on TechNet. SQL 2008 R2 will run on multiple operating systems, but I prefer to run it on Windows Server 2008 R2. Depending on the size and utilization of your SharePoint farm, other databases may reside on the SQL Server, but it should at least be a dedicated database server that’s only used for SQL Server databases. The SQL Server should be assigned a minimum of 4 cores. Here’s a good MSDN article on the hardware and software requirements for installing SQL Server 2008 R2.

SharePoint 2010 Application / Web Front End Server: A base installation of Windows Server 2008 R2 should be performed. The operating system should be assigned a minimum of 8 GB of RAM for a production environment. The system drive should be a minimum of 80 GB. The SharePoint server should be assigned a minimum of 4 cores. Here’s a good TechNet Article on the hardware and software requirements for SharePoint 2010.

All of the normal tasks per your organization’s standards should be performed on these servers before attempting to install SharePoint. This includes assigning static IP addresses, adding them to the domain, running Windows Updates until no further updates are available, installing Antivirus, Backup Client, setting up a Backup Job, Monitoring, etc.

While not a requirement for SharePoint 2010, I’m installing the PowerShell ISE and enabling scripts on my SharePoint server since it’s one of the main tools I’ll be using:

Import-Module ServerManager
Add-WindowsFeature PowerShell-ISE
Set-ExecutionPolicy RemoteSigned

sp2010-install11.png

Launch the PowerShell ISE:

sp2010-install2.png

Install and Import the Active Directory Module for Windows PowerShell:

Import-Module ServerManager
Add-WindowsFeature RSAT-AD-PowerShell
Import-Module ActiveDirectory

sp2010-install3.png

Create 3 service accounts in Active Directory (sp_Name_Farm, sp_Name_Install, and sp_Name_Pool). This is the minimum number of service accounts required just to install SharePoint. You may end up needing more service accounts. Todd Klindt has an excellent blog on service accounts.

$Password = Read-Host -assecurestring "SP Farm Account Password"
$Name = "spExtranetFarm"
$UPN = "spExtranetFarm@mikefrobbins.com"
$Description = "SharePoint Farm Administrator Account - Extranet"
$Path = "ou=service,ou=accounts,ou=test,dc=mikefrobbins,dc=com"
New-ADUser -Name $Name -AccountPassword $Password -Description $Description `
-Enabled $true -PasswordNeverExpires $true -Path $Path -SamAccountName $Name `
-UserPrincipalName $UPN
$Password = Read-Host -assecurestring "SP Install Account Password"
$Name = "spExtranetInstall"
$UPN = "spExtranetInstall@mikefrobbins.com"
$Description = "SharePoint Installation Account - Extranet"
$Path = "ou=service,ou=accounts,ou=test,dc=mikefrobbins,dc=com"
New-ADUser -Name $Name -AccountPassword $Password -Description $Description `
-Enabled $true -PasswordNeverExpires $true -Path $Path -SamAccountName $Name `
-UserPrincipalName $UPN
$Password = Read-Host -assecurestring "SP AppPool Account Password"
$Name = "spExtranetPool"
$UPN = "spExtranetPool@mikefrobbins.com"
$Description = "SharePoint Application Pool Account - Extranet"
$Path = "ou=service,ou=accounts,ou=test,dc=mikefrobbins,dc=com"
New-ADUser -Name $Name -AccountPassword $Password -Description $Description `
-Enabled $true -PasswordNeverExpires $true -Path $Path -SamAccountName $Name `
-UserPrincipalName $UPN

sp2010-install41.png

Add the sp_Name_Farm and sp_Name_Install accounts to the local administrators group on the SharePoint server:

$User = [ADSI]("WinNT://mikefrobbins/spExtranetFarm")
$Group = [ADSI]("WinNT://sharepoint/Administrators")
$Group.PSBase.Invoke("Add",$User.PSBase.Path)
$User = [ADSI]("WinNT://mikefrobbins/spExtranetInstall")
$Group = [ADSI]("WinNT://sharepoint/Administrators")
$Group.PSBase.Invoke("Add",$User.PSBase.Path)

sp2010-install5.png

Add the sp_Name_Install account to the SQL Server dbcreator and securityadmin roles:

sp2010-install6.png

Test connectivity from the SharePoint server to the SQL server. One easy way to do this is to telnet from the SharePoint server to port 1433 on the SQL server. You’ll need to add the Telnet client to the SharePoint server:

Import-Module ServerManager
Add-WindowsFeature Telnet-Client

sp2010-install7.png

This shows a failure to connect to the SQL server:

sp2010-install8.png

I’m running SQL Denali CTP1 on this particular SQL server. TCP/IP was disabled under SQL Server Network Configuration in the SQL Server Configuration Manager:

sp2010-install9.png

Change TCP/IP to enabled and restart the SQL Server services:

sp2010-install10.png

SQL was also not allowed through the firewall on the SQL Server. I added an exception:

sp2010-install111.png

A successful telnet connection from the SharePoint server to port 1433 on the SQL Server:

sp2010-install121.png

We now have all of the preliminary work out of the way. Login to the SharePoint server as the sp_Name_Install account. Download SharePoint Foundation 2010 if you have not done so already. Part 2 of this blog article series, which will guide you through the actual installation process, will be posted on Thursday July 14th.

µ