Architecting SharePoint 2010 Infrastructure

Overview

This document presents such deployment-related information as the different deployment stages and environments, plus a flowchart that illustrates the steps for installing and configuring SharePoint 2010 Products.

Requirements

Before we can deploy Microsoft® SharePoint® Server 2010 or Microsoft® SharePoint® Foundation 2010, we must meet the following requirements:

Hardware requirement: 64-bit

SharePoint Server 2010 and SharePoint Foundation 2010 are 64-bit applications and can only run on a 64-bit edition of the Windows Server® 2008 operating system. We must have hardware that supports the use of a 64-bit operating system and 64-bit SQL Server.

Hardware requirements—Web servers, application servers, and single server installations

The requirements in the following table apply both to installations on a single server with a built-in database and to servers running SharePoint Server 2010 in a multiple server farm installation.

Component

Minimum requirement

Processor

64-bit, four cores

RAM

·         4 GB for developer or evaluation use

·         8 GB for production use in a single server or multiple server farm

Hard disk

80 GB for system drive

We must have sufficient space for the base installation and sufficient space for diagnostics such as logging, debugging, creating memory dumps, and so on. For production use, we also need additional free disk space for day-to-day operations. Maintain twice as much free space as we have RAM for production environments.

 

Hardware requirements—Database servers

The requirements in the following table apply to database servers in production environments with multiple servers in the farm.

Component

Minimum requirement

Processor

64-bit, four cores

RAM

·         64-bit, four cores for small deployments

·         64-bit, eight cores for medium deployments

Hard disk

80 GB for system drive

We must have sufficient space for the base installation and sufficient space for diagnostics such as logging, debugging, creating memory dumps, and so on. For production use, we also need additional free disk space for day-to-day operations. Maintain twice as much free space as we have RAM for production environments.

 

Operating system requirement: Windows Server 2008 or Windows Server 2008 R2

SharePoint Server 2010 and SharePoint Foundation 2010 must be run on a 64-bit edition of Windows Server 2008 with Service Pack 2 or Windows Server 2008 R2.

Database requirement: 64-bit SQL Server 2005 SP2 or 64-bit SQL Server 2008

For server farm installations of SharePoint Server 2010 and SharePoint Foundation 2010, we must be running 64-bit versions of Microsoft SQL Server® 2005 or Microsoft SQL Server 2008 (each with the appropriate service packs and updates) on our database servers.

Server Categories for SharePoint Farm (Three Tear)

A SharePoint farm consists of three tiers out of which Web or Front-End tear consists of SharePoint Web Servers that hosts SharePoint applications, Application Tear that hosts SharePoint services and Search components and finally Database Tear that hosts SharePoint databases. The following illustration shows a SharePoint Server 2010 farm with two front-end Web servers (Web-1 and Web-2) that serve content and host the search query component. The only application server (App-1) hosts Central Administration and the search crawl component for the farm.

 

 

Domain Controller

SharePoint needs a pre-defined domain controller to setup and configure SharePoint Farm Accounts or configure directory synchronization with SharePoint profile services. Gibson will be using iTechPlanet.com as the core Domain which is already pre-configured. It is recommended to use the following symbol for domain controllers.

Database Servers

SharePoint farm uses Microsoft SQL server to store SharePoint databases. If not pre-installing databases, the configuration database is created when we run the SharePoint Products 2010 Configuration Wizard. All other databases are created when we create the service applications and Web applications that require them. It is recommended to use the following symbol for database servers.

Web Servers

SharePoint web servers are basically front end web application servers that hosts SharePoint connected through NLBs (Network Load Balancer). The fundamental role of a front-end Web server is hosting the Web pages, the Web services, and the Web Parts that are necessary to process requests received from users. The Web server directs these requests to the application server, which returns the results to the front-end Web server. Depending on farm requirements, the front-end Web server may also be configured to support search in scenarios where there are not any dedicated search servers. It is recommended to use the following symbol for domain controllers.

Application Servers

SharePoint application servers host most basic SharePoint services, SharePoint central administration and Search services. It is recommended to use the following symbol for domain controllers.

Prepare and Build

Here is the brief overview of different types of Servers required for SharePoint Farm and how to install and build them.

Deployment stage and environment

Planning:

Purpose:

Before we can deploy, we must plan the solution we want to deploy. After the planning stage, we move through the deployment stages in the following table, updating and revising wer plans as we test.

Steps:

·         Perform business analysis

·         Determine goals and objectives

·         Determine infrastructure requirements

Output:

·         Solution plan

·         Topology and resource requirements

Proof of Concepts (POC):

Purpose:

Used for determining whether a solution will meet business needs and to determine an appropriate infrastructure plan.

Steps:

·         Deploy farm

·         Deploy solution

·         Collect benchmark data

·         Evaluate proof of concept

·         Refine goals and infrastructure requirements

Output:

·         Updated solution plan

·         Updated topology and resource requirements

Characteristics:

POCs are often created during evaluation phase to test the product or solution. A POC can be hosted on a development environment or on a small scale production computer. Sometimes the POC moves through several stages in continuous development.

Expected Duration and Stability:

·         Set up, reviewed, and then discarded

·         Not a stable environment – no service-level agreement for users

Farm Architecture:

Medium scale

Two tiers Application/Web servers

and Database server

Small scale

All server roles installed on a

single physical server

Pilot (small scale test):

Purpose:

Pilots are used to test a solution on a small scale. Pilots are used to test solution readiness (no real data, just functionality testing). A pilot can also be used to test for production characteristics (real data, actual work); this is recommended.

Steps:

·         Deploy pilot farm

·         Deploy pilot solution

·         Collect benchmark data

·         Evaluate pilot

·         Refine goals and infrastructure requirements

·         Determine operations plan

Output:

·         Updated solution plan

·         Updated topology and resource requirements

·         Operations plan

Characteristics:

A limited set of users has access to the environment to test the functionality and performance of the solution and infrastructure.

Expected Duration and Stability:

·         Limited time frame

·         Limited service-level agreement for solution readiness testing

·         Production service-level agreement for production testing

Farm Architecture:

Medium scale

Closer to planned production environment.

Small scale

Each server role on its own server.

Development:

Purpose:

Development phase is being used for developing applications and solutions for SharePoint 2010 Products.

Steps:

·         Deploy development computers or farm

·         Develop solution

·         Test and evaluate solution

·         Refine solution

Output:

·         Solution

Characteristics:

Development environments exist throughout the lifecycle of the project. Initial development of the solution is followed by testing and refining the solution. Note that SharePoint Workspaces can be used to keep development environments synchronized.

Expected Duration:

·         Exists throughout solution lifecycle

·         Not a stable environment – no service-level agreement for users

Farm Architecture:

Medium-large scale

Closer to planned production environment.

Small scale

Each server role on its own server.

User Acceptance Test (UAT):

Purpose:

A pre-production environment used for testing solutions against a subset or complete copy of production data. Also used for validating the backups or operational procedures.

Steps:

·         Deploy UAT farm

·         Deploy UAT solution

·         Implement operations plan

·         Evaluate solution

·         Evaluate operations plan

·         Test for capacity and performance

Output:

·         Updated operations plan

Characteristics:

Topology should be as similar to production environment as possible. Testers ensure that all solution elements function as expected in network and security conditions that match the conditions of the production environment.

Expected Duration:

·         Long-term availability – this is a stable pre-production environment

·         Limited service-level agreement for users

Farm Architecture:

Medium-large scale

Closer to planned production environment.

Small scale

Each server role on its own server.

Production:

Purpose:

This is the live environment that our users interact with in production environment.

Steps:

·         Deploy production farm

·         Deploy production solution

·         Implement operations plan

·         Deploy additional environments:

·         Authoring and staging farms

·         Geo-distributed farms

·         Services farms (Search, Taxonomy)

Output:

·         Updated production plan

Characteristics:

It is business critical and appropriate service-level agreements are in place.

Expected Duration:

·         Long-term availability – this should be a stable environment

·         Full service-level agreement for users, appropriate to the solution and business requirements

Farm Architecture:

Medium-large scale

Closer to planned production environment.

Small scale

Each server role on its own server.

Configure Settings, Services, Solutions and Sites

In this phase, we prepare the farm to host our site content by configuring global settings, creating services applications, deploying customizations, and creating and populating the sites. We can use the Farm Configuration Wizard to these configuration steps, or we can perform them by using either the SharePoint Central Administration Web site or Windows PowerShell. Configuration steps are not isolated to a specific tier in the server infrastructure. These steps include only a high-level overview of the process. To successfully plan and perform our deployment, follow the recommendations and procedures in the Planning Guide and the Deployment Guide for SharePoint Server 2010 or SharePoint Foundation 2010.

Best practices for maintaining multiple environments

Keep the environments synchronized by using the following:

·         Profile replication engine – a tool for keeping profile and social data synchronized across farms.

·         Content deployment – a method of moving content between authoring, staging, and live environments.

·         Mirroring and log shipping – two techniques for keeping content changes synchronized across farms.

Keep the environments clean by using the following best practices:

Be sure to reformat your computers before re-using hardware between environments or within an environment. Do not simply uninstall and reinstall. If there are old customizations or configurations, they can affect how that computer works and introduce errors into your environment.

Service Accounts

SharePoint needs some pre-defined service accounts to install and configure SharePoint. SharePoint will elevate the following accounts as necessary during installation. So, for each environment we will be adding "_Environment" for each service account. Like:

For Sand Box environment "sp_admin" will be "sp_admin_SB"

For Development environment "sp_admin" will be "sp_admin_DEV"

For Test environment "sp_admin" will be "sp_admin_TST"

For Production environment "sp_admin" will be "sp_admin_PRD"

Account name

Role

Domain rights

Local SharePoint Server rights needed

SQL rights needed

sp_admin

Used to install SharePoint binaries.

Domain User

Local administrator on all SharePoint boxes

dbcreator and securityadmin SQL roles

sp_farm

Farm account. Used for Windows Timer Service, Central Admin and User Profile service

Domain User

Local Admin during UPS provisioning, log on locally right

None

sp_webapp

App pool id for content web apps

Domain User

None

None

sp_serviceapps

Service app pool id

Domain User

None

None, unless using Office Web Apps. Them must give access to content databases manually

sp_search

Search process id

Domain User

None

None

sp_content 

Account used to crawl content

Domain User

None

None

sp_userprofile

Account used by the User Profile services to access Active Directory

Must have Replicating Change permissions to AD. Must be given in BOTH ADUC and ADSIEDIT. If domain is Windows 2003 or early, must also be a member of the "Pre-Windows 2000" built-in group.

None

None

sp_superuser

Cache account

Domain User

Web application Policy Full Control

Web application super account setting

None

sp_superreader

Cache account

Domain User

Web application Policy Full read

Web application super reader account setting

None

DNS Names

It is recommended to use the DNS names (http://spsandbox) instead of physical server address and port number (http:// CADVHYP001:80) for each web application in a SharePoint Environment. The DNS names are being used to assign the host headers for the web applications.

Environment

Web Application

DNS Name

Sandbox

Intranet Team Sites

http://intranetSB

Development

Intranet Team Sites

http://intranetDEV

Test

Intranet Team Sites

http://intranetTST

Production

Intranet Team Sites

http://intranet

Sandbox

Intranet Publishing Site

http://TheInnovationSB

Development

Intranet Publishing Site

http://TheInnovationDEV

Test

Intranet Publishing Site

http://TheInnovationTST

Production

Intranet Publishing Site

http://TheInnovation

Sandbox

Internet Publishing Site

http://TechPlanetSB

Development

Internet Publishing Site

http:// TechPlanetDEV

Test

Internet Publishing Site

http:// TechPlanetTST

Production

Internet Publishing Site

http://www.TechPlanetCanada.com

 

References:

 

http://technet.microsoft.com/en-us/library/cc850692.aspx

http://technet.microsoft.com/en-us/library/cc263199.aspx

Comments

Popular posts from this blog

Cloud Computing Technology Assessment

Database Testing With DBUnit

Data Science, Big Data & Microsoft Machine Learning