Scaling Across a SharePoint Farm


In addition to the logical structure of SharePoint, which can be scaled out, SharePoint includes the ability to physically spread data and content across multiple servers. This is one of the principal design changes implemented since the first versions of SharePoint, which did not scale very well beyond a single server. The concept of the SharePoint farm subsequently allows for a much greater range of flexibility and scalability of an environment because services and databases can be distributed.

Defining Farm Server Components

SharePoint Farms consist of two, three, four, or more servers sharing a common configuration database. A farm provides for the distribution of processing and application power across multiple machines, in addition to providing a limited degree of additional redundancy into an environment.

Each SharePoint server installed into a SharePoint farm takes on specific sets of roles in that environment. The roles for SharePoint servers in a farm are as follows:

  • Web server This type of SharePoint server is stateless and does not contain any data. It is used to provide web-based services for end users. Part of a front-end server configuration, multiple load-balanced web servers can be deployed to scale out the distribution of SharePoint data to multiple users.

  • Search server A designated search server is used to conduct searches against indexed data in SharePoint.

  • Index server An index server collects index information from the SharePoint database and makes it available for searching.

  • Job server A job server hosts shared jobs for the farm.

  • Configuration database server The configuration database server contains the sole configuration database for a SharePoint farm. This database contains all farm information and is stored on a designated SQL Server 2000 database server.

  • Content database server Content database servers are SQL Server 2000 systems that contain one or more content databases available to servers in a farm. The content databases contain all the document and file content stored within SharePoint sites.

  • Component settings database server This type of server holds a copy of the component settings database, which defines services for each portal site.

NOTE

A single server can perform more than one of the roles listed in a SharePoint farm. It is, in fact, more common for multiple roles to be performed on specific servers than to have dedicated servers for each task.


As an organization's requirements from SharePoint scale beyond the capabilities of a single server, additional servers added into a farm become a necessity. Understanding how those servers can be designed and scaled properly into an environment is key.

Utilizing Shared Services Across SharePoint Farms

SharePoint scalability does not end at the farm level. On the contrary, SharePoint's capability to extend its resources to large deployments is supported with the concept of Shared Services. Shared Services is the capability to share specific functionality across multiple SharePoint farms. For example, search capability can be extended across more than one SharePoint farm utilizing the Shared Services model. Although individual items cannot be shared using this approach, the following items can be:

  • Alerts

  • Audiences

  • Personal sites

  • Single sign-on service

  • Search

  • User profiles

Several limitations exist for deploying SharePoint using the Shared Services approach, however. The following are limitations of using this model:

  • The parent and child farm servers must belong to the same domain or trusted domain environment.

  • Server farms cannot be separated by firewalls and must have essentially full network access between each other.

  • SharePoint Portal Server 2003 editions and languages must be the same between servers in each farm.

  • A child portal site cannot switch roles with a parent portal site.

  • When configured to use Shared Services, a server farm cannot be removed from that functionality. In addition, some services have to be turned off in the child server farm to be able to use shared services.

For the largest of SharePoint deployments, Shared Services allows a degree of scalability beyond the server farm itself, allowing for the sharing of resources between multiple SharePoint environments.

Designing a Small SharePoint Farm

Many SharePoint environments operate efficiently on the resources of a single server. For organizations that have outgrown that functionality, or that desire to segregate certain components onto different servers, distribution of SharePoint components into a SharePoint farm becomes a reality.

The base level of SharePoint farm functionality involves the creation of a pair of servers, as illustrated in Figure 22.3. The first server, known as a front-end server, runs the Web, Index, Job, and Search components of SharePoint, but doesn't store SharePoint data itself.

Figure 22.3. Designing a small SharePoint farm.


The second server in the farm houses the SharePoint SQL database components and is dedicated to this task. This server can either be a new database server or an existing SQL database server with SharePoint databases running on it.

Designing a Medium-Sized SharePoint Farm

In larger and more complex environments, the need to scale out a SharePoint farm into more components becomes a reality. Many users accessing the data can tax the web services capabilities of a single front-end server, which necessitates the creation of multiple servers, as illustrated in Figure 22.4.

Figure 22.4. Designing a medium-sized SharePoint farm.


The two front-end servers in this example run with the Web and Search components enabled. Network load balancing is used to distribute the load of users in the farm. In addition, a dedicated job and index server is used to offload those functions. Finally, two database servers are used to house the content databases for the farm.

Designing a Large SharePoint Farm

For the largest organizations, SharePoint is scalable to allow access to hundreds of thousands, or potentially millions or users. By deploying many load-balanced, front-end servers, dedicated search and index servers, and clustered SQL Server 2000 database servers, a lot of redundancy and scalability can be built into a SharePoint deployment.

In the example illustrated in Figure 22.5, eight front-end web servers are load balanced using Microsoft's NLB service. Two dedicated search servers (a farm should not have more than four) provide dedicated access to search capabilities for the portal. Two index management servers (also no more than four deployed), one running the Job component, provide for dedicated indexing capabilities. Finally, two sets of a four-node Active/Passive cluster environment provide access to the SharePoint databases. This example is just one of many options but illustrates a typical best-practice large SharePoint farm environment.

Figure 22.5. Designing a large SharePoint farm.





Microsoft SharePoint 2003 Unleashed
Microsoft SharePoint 2003 Unleashed (2nd Edition) (Unleashed)
ISBN: 0672328038
EAN: 2147483647
Year: 2005
Pages: 288

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net