Thursday, October 14, 2010

SharePoint 2010 Service Architecture

SharePoint 2010 Service Architecture
SharePoint 2010 Logical Architecture
SharePoint 2010 Architecture and Design Models


Introduction

Recently I wrote a series of blogs on Enterprise Search and FAST ESP with the intention of having a deep dive into SharePoint Search 2010. There are many changes to both the logical and physical topologies of SharePoint 2010. Most of the readers of this blog series are very familiar with SharePoint 2007 but not so much with SharePoint 2010 (since it is in beta). Before doing a deep dive into SharePoint Search 2010 we need to have a good grasp of the changes for SharePoint 2010.
A well architected logical and physical SharePoint environment tends to revolve around Search. Search tended to drive much of the logical and physical architectures for SharePoint 2007. In this blog series I am going to do an introduction to the SharePoint 2010 services, logical and physical architectures. It is critical to have this worked out from the beginning because the SharePoint architecture must scale with the business. What we have seen is once SharePoint is implemented; it becomes highly adopted.

SharePoint 2010 Versions
In SharePoint 2007 the versions we became very familiar with were:
  • Windows SharePoint Services (WSS)
  • MOSS 2007 Standard
  • MOSS 2007 Enterprise
For SharePoint 2010 it has changed to:
  • SharePoint Foundation Services
  • SharePoint Server 2010 Standard
  • SharePoint Server 2010 Enterprise
Tier Architecture

SharePoint 2010 has not changed from a Tier perspective. There are Web, Application and Database tiers. What’s important is it to understand is how to architect those tiers. For SharePoint 2010 the Application tier has changed significantly as it is more sophisticated than what was available in SharePoint 2007. Some things that we will get into within this series are creating service farms and partitioned services.

Service Application

Important changes that you should be aware of:
  1. In SharePoint 2007 there was Shared Service Providers (SSP) which was used to host services. SSPs have been completely removed from SharePoint 2010 and services can be run independently.
  2. Some services in SharePoint 2010 will be referred to as Service Applications. Not all services in Central Administration are Service Applications. In the table below, you will see which services are considered to be Service Applications. You will see a trend that Service Applications tend to map to major features of SharePoint rather than services which could be considered part of the infrastructure of SharePoint.
  3. Service Groups have been introduced to logically manage Service Applications. When Service Applications are added they will be included in a Default Group. Web Applications can use that Default Group or use a Custom Group of Service Applications. What this provides is greater control of which Service Applications are available to specific web applications. If you are familiar with SharePoint 2007, the Service Group concept is one of the reasons we created different SSPs because sometimes we needed to create barriers between web applications.
  4. SharePoint 2010 services can be reused within and across farms. This was not available in SharePoint 2007 and provides a significant amount of scalability options.
  5. SharePoint 2010 supports Service Partitioning. If you are familiar with database partitioning, think of it is horizontal partitioning of data within a SharePoint service. Not all services support service partitioning; partitioning is only used in services that are data driven. A typical scenario is that a centrally managed/cross farm service with data that should not be exposed to all subscribing farms. If that is the case, a farm would subscribe to a partition of centrally managed service. In SharePoint lingo each partition is referred to as a “tenant”.
Knowing what we now know, when scaling out these services we will take the following into consideration:
  • Multiple instances of the same Service Applications can be initiated within a farm.
  • Service Applications are shared across Web Applications within a farm by Service Group.
  • Some Service Applications can be shared across multiple farms while others cannot.
  • Service Groups can logically contain Service Applications that reside in other farms.
  • Web Applications have the flexibility to use multiple instances of the same type of Service Application (regardless of which farm hosts that service).
  • Service Applications can have its data partitioned and only accessible to specific subscribers.
  • Service Groups can be used to logically scale for performance, security and scalability.
Some side notes:
  • Service Applications are hosted within IIS. It is possible to have Service Applications deployed to different application pools to achieve process isolation (important for both security and fault tolerance). So it is possible to have a single machine host many services and isolation between them.
  • Each Service Application instance has a Connection which Web Applications connect to. Web Applications use these Connections (sometimes referred to as proxies) to send and retrieve data from a Service Application.
  • If the same type of Service Application is used more than once in a single Web Application, one of the Connections will be marked as the primary.
  • Services are deployed through the Configuration Wizard, Central Admin and using Windows PowerShell. Services can be managed through Central Admin and PowerShell.
Given this flexibility in service configuration you now can:
  • Have better ability to share dedicated services across regional locations.
  • Have the ability to create dedicated services by business unit. For instance a Finance Web Application may have a dedicated Excel Services Service Application instance while a different Excel Services Service Application instance may be available to the rest of the farm.
  • Now have greater control to ensure that data cannot be shared between logical groups of users. For instance lock down departmental or intranet data.
  • Have the ability to support hosted models in a more secure and efficient manner.
  • Service Applications that have expensive operations, like Search, can be centralized and reused across farms.
We will put these rules for Service Applications into action in the next part of this series.

SharePoint 2010 Services

In SharePoint 2007 we commonly had to configure the following services:
  • Document Conversions Launcher Service
  • Document Conversions Load Balancer Service
  • Excel Calculation Services
  • Office SharePoint Server Search
  • Windows SharePoint Services Help Search
  • Windows SharePoint Services Web Application
In many cases with SharePoint 2007 implementations services were not configured correctly. This resulted in poor performance and the inability to scale to meet business demand. Many people implementing SharePoint 2007 did not understand that both a logical and physical architectures have to be aligned to how SharePoint services will be utilized. This will be a problem for many on the 2010 platform.

As discussed the service architecture has changed for SharePoint 2010 in many ways. Before we dive into all of the strategies of how services should be aligned in both the logical and physical architectures let us understand what the new services are.

Here is a list of services for SharePoint 2010. I found several pieces of information and I manually created this table with the information that I have.


ServicesDescriptionService ApplicationCross FarmPartitioningAvailable On
Access Database ServicesNew service that allows for viewing, editing and interacting with MS Access through a browser.YesNoYes **SharePoint Server 2010 Enterprise
Application Registry ServiceEnables users to search and collaborate around business data. Provides backward compatibility to BDC service.NoNoNASharePoint Foundation 2010 and up
Business Data ConnectivityAccess to line of business systems. Service now supports writing to data services.YesYesYesSharePoint Foundation 2010 and up
Central AdministrationCentral Admin SiteNoNoNASharePoint Foundation 2010 and up
Document Conversions Launcher ServiceSchedules and initiates document conversions.NoNoNASharePoint Foundation 2010 and up
Document Conversions Load Balancer ServiceBalances document conversions across the SharePoint farm.NoNoNASharePoint Foundation 2010 and up
Excel Calculation ServicesAbility to interact with Excel files in a browser. New extended functionality.YesNoNoSharePoint Server 2010 Enterprise
Lotus Notes ConnectorIndex service connector to index Lotus Notes Domino Servers.YesYesYesSharePoint Server 2010 Standard and up
InfoPath ServiceSupports hosting InfoPath forms in SharePoint.NoYesYes **SharePoint Server 2010 Enterprise
Managed Metadata ServiceNew service that manages taxonomy structures and definitions.YesYesYesSharePoint Server 2010 Standard and up
Microsoft SharePoint Foundation Incoming E-mailEmail service. This will run on the machine where the web application is running.NoNoNASharePoint Foundation 2010 and up
Microsoft SharePoint Foundation Subscription Settings ServicesNew service used to track subscription IDs and settings for services that deployed in partition mode.YesNANASharePoint Foundation 2010 and up
Microsoft SharePoint Foundation User Code ServiceNew service runs code deployed as part of a sandbox solution and runs in restricted mode. Must be started on any machine in the farm that needs to run Sandbox code.NoNANASharePoint Foundation 2010 and up
Microsoft SharePoint Foundation Web ApplicationThe service that runs the web application.NoNoNASharePoint Foundation 2010 and up
Microsoft SharePoint Foundation Workflow Timer ServiceResponsible for running timer jobs.NoNoNASharePoint Foundation 2010 and up
PerformancePointBI Dashboard services.YesNoNASharePoint Server 2010 Enterprise
PowerPointNew services that allows viewing, editing and broadcasting PowerPoint in a browser.YesNoYes **SharePoint Server 2010 Enterprise
ProjectHost project server 2010.YesNoYesAdditional server product.
Search Query and Site Settings ServiceService that performs a query across built indexes.YesYesYes*SharePoint Server 2010 Standard and up
Secure Store ServiceService provide SSO authentication.YesYesYesSharePoint Server 2010 Standard and up
SharePoint Foundation SearchService that provides search capabilities for SharePoint Foundation Search only. For SharePoint Server 2010 Standard and Enterprise this service will perform online Help search.NoNoNASharePoint Foundation 2010 and up.
SharePoint Server SearchCrawls content, creates indexes and performs queries. Automatically configured.YesYesYes*SharePoint Server 2010 Standard and up
State ServiceNew services that provides temporary storage of user session data for SharePoint components.YesNoYes **SharePoint Server 2010 Standard and up
Usage and Health Data CollectionReporting services that provide farm wide usage and health.YesNoYesSharePoint Foundation 2010 and up
User ProfileNew and expanded social networking services and features.YesYesYesSharePoint Server 2010 Standard and up
User Profile Synchronization ServiceSynchronizes user and group profile information that is stored in the SharePoint Server 2010 profile store with profile information that is stored in directory services across the enterprise. Works with AD, BDC, Novel LDAP and Sun LDAP (more info).YesYesYesSharePoint Server 2010 Standard and up
Visio Graphics ServiceAbility to view published Visio diagrams in a browser.YesNoYes **SharePoint Server 2010 Enterprise
Web Analytics Data Processing ServiceCaptures data for analytics.YesYesYesSharePoint Foundation 2010 and up
Web Analytics Web ServiceWeb service interfaces for analytics.YesYesYesSharePoint Foundation 2010 and up
Word Automation ServicesService that performs automated bulk document conversions.YesNoYes **SharePoint Server 2010 Standard and Up



* FAST Search cannot be partitioned.
** Supports partitioning but is not needed because there is no tenant data.

Next
In the next blog we will actually jump into the topologies of SharePoint farms (with diagrams) based on the information captured we have gone over.

References

No comments:

Post a Comment