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
Development
Intranet Team Sites
Test
Intranet Team Sites
Production
Intranet Team Sites
Sandbox
Intranet Publishing Site
Development
Intranet Publishing Site
Test
Intranet Publishing Site
Production
Intranet Publishing Site
Sandbox
Internet Publishing Site
Development
Internet Publishing Site
http:// TechPlanetDEV
Test
Internet Publishing Site
http:// TechPlanetTST
Production
Internet Publishing Site
References:
Comments
Post a Comment