MOSS Architecture and Shared Services


I have been doing some work recently on MOSS architecture for large deployments and thought that I’d share some of my findings. MOSS architecture is very similar to SharePoint 2003 in some ways but different in a few crucial areas.


So what is the same?


MOSS adopts a typical 3-tier model with web servers at the front, application servers in the middle and a database server at the back where all the data and config is stored.


The front-end web servers are simple web servers that can be network load balanced to achieve additional performance and fault tolerance (like 2003). The backend database is a typical SQL 2005 database service and can be clustered as you’d expect.


So what is different?


The interesting bit is what goes on in the middle. With MOSS, it is mandatory to have a Shared Service Provider. This is a collection of application servers that provide shared services out to any portals or sites that need them. These services include:




  • Search


  • Index


  • Audience compilation


  • User profiles database


  • My Sites


  • Business Data Catalogue


  • Excel Services

Any of the above services can exist on any number of servers within the SSP. For example, for a small-ish deployment you could have them all on one box, or you could scale them out onto different boxes as you see fit. There are no rules that govern where these services reside within the SSP or how many servers you have servicing them (with the exception of the Index server – only one per SSP). For example if you want 10 search servers – got for it … “fill your boots” as we’d say here in England!


This model is very similar to the 2003 approach with one crucial difference,  the SSP has no portal affiliation. This means that you are not forced to have a specific parent/child style portal topology in order to use Shared Services which was one of the big sticking points with Sharepoint 2003 shared services.


So what does the ‘Portal’ actually do now?


For starters, it is now called ‘Collaboration Portal’, not ‘portal’ and it is just another type of site collection that is hosted on an IIS site (called web applications in MOSS). Portals no longer contain any application services such as search, my site etc – all these services now have to come from an SSP. This means that all you need to host a portal is a web server and a place to put the content database.


Different portals can live on their own hardware which is completely isolated from any other hardware other than the fact that it consumes services from a centrally managed SSP. Alternatively, you can put some of your portals on shared hardware and some on dedicated.


I always hear requirements around different business units wanting their own portal which has its own visual style, custom webparts, different SLAs etc . With this model, there does not have to be any affiliation between any portals or sites if it is not required.


This diagram outlines the logic of how SSP provide services that are consumed by several site collections:



So does this mean that ‘Supported Farm configurations’ have gone?


In short, yes!


This model means that you can scale any element of the system out as you see fit. However, there are several recommended server layouts that will meet most scenarios. These broadly follow the small, medium and large models of Sharepoint 2003, but should be considered as starting points only. You can easily deviate to a different setup depending on your requirements.


So how does all this map to physical servers?


All three tiers (web, application, database) of the SharePoint model can be hosted on a single machine or scaled out to a huge collection of servers to meet the requirements.


Most organisations will want some level of fault tolerance and separation between server roles. Typically these kind of organisations will have at least 2 web servers running your portals and sites, at least one application server hosting all services (maybe a second for fault tolerance) and one database cluster. This diagram shows this model:



Larger organisations may want to have separate web servers for each of their portals, sites and my sites. They may also have multiple application servers as part of the SSP. This diagram describes this model:



I hope this was usefull. There is an increasing amount of content on the public Microsoft sites now about this stuff, so be sure to have a dig around.

Comments (37)

  1. dmahugh says:

    Great post, Martin!  Thanks for sharing.

  2. EROL says:

    Thanks EROL MVP SPS

  3. Here is an assortment of various 2007 Microsoft Office Server System Documentation / Reference Materials…

  4. Riaz says:

    Brilliant article, well done!

    Riaz

    Framfab UK

    http://www.framfab.co.uk

  5. Smurf says:

    Very informative. Keep going 🙂

  6. An excellent post here from Martin Kearn which starts to unravel the complexities of large-farm server…

  7. So I have been doing some research and work on SharePoint 2007 Architecture recently. I came across a…

  8. Dave Wollerman says:

    I would like to see more about how the global architecture process is setup. I know of issues right now with 2003 that you "shouldn’t" use shared services over a WAN and it is recommended that you have a seperate farm in each region.

    My question is has 2007 fixed this problem? can we have a WFE and DB servers in europe, but use a global set of shared services servers in North America?

    I am sure there is a ton of stuff 2007 can do that hasn’t been published yet, but I would like to see if it is headed down a certian track.

    Thanks,

    Dave

  9. Pete Brown says:

    Excellent article, helped fill in a few gaps. Looking forward to your next excellent posts 🙂

  10. Festa says:

    It’s all Greek to me. But not only does Mr Kearn write superb articles on bewilderingly complex issues concerning Microsoft-powered networks, he also produces a marvellous pasta bake and plays a mean bass guitar!

  11. MarkDurose says:

    Nice article Martin, I have being looking at sharepoint recently and your blog and links to others is going to be very useful.

    Regards,

    Mark

  12. Jerry says:

    I have a question regarding MySite.

    How do you scale for millions of users?

  13. AtWorksLLC says:

    Martin,

    Nice article.  I have a couple of questions regarding the use of SSPs in a WSS environemnt, and the licensing of SSPs in a multi-tier front-end architecture.

    1. Do WSS 3.0 web applications have to share the same config database as the primary SharePoint server in order to use the SSPs privided by the SharePoint server?

    2.  What is the impact from a licensing standpoint?  If WSS clients can use SSPs, do users need to have a SharePoint Server CAL?

    Thanks

    environment anImagine I have load-balanced Front-end web servers Do WSS 3.0 sites

  14. In response to the lciensing questions and use of WSS …

    1) No, the farms that are consuming the shared services will have their own config and content database. They will most likely be on a different SQL server in large deployments.

    2) I am not a licensing guy and cannot be sure about this (please seek an official answer from your account manager), but I think that if your WSS sites are consuming services from the MOSS SSP then your users will need MOSS CALs because they are using MOSS functionality (even if it is presented via WSS). If you are only using WSS, you dont need MOSS as a WSS only install will provide the same search engine but none of the other shared services.

  15. In response to the My Site scalability question …

    My Sites scale the same way as any other sites … you simply add web servers and beef up the SQL backend. There is a rule of thumb that you should not have more than 8 web servers for each SQL backend, but you can always use multiple content databases anyway.

    Please refer to the planning doucments for more details http://www.microsoft.com/office/preview/beta/deploy.mspx

  16. Gavin Guinane says:

    Very clear article Martin. Well done.

  17. Este post no blog do Martin Kearn, contém um artigo interessante sobre a arquitectura do MOSS

  18. Raju says:

    Very Good.

  19. Sahil says:

    Great article….

    Helped a lot…

    Well done…

  20. ale says:

    very good and informative article..thanks dude

  21. Noel Dsouza says:

    Can we seperate the different Tiers i.e. Web Servers,Application Servers and the database clusters using Firewall.if So what port do they use.

  22. kris says:

    Very nice article, superb

  23. Noel Dsouza says:

    I am not sure if this is a true 3 tier architecture .I see a direct communication between the web servers and the database servers.

  24. Ahmed says:

    I have few doubts relating to Medium Farm Deployment.

    I have 2 load balance servers one applicaiont server and one database server.

    my doubt is where does the central administration go it should be in the front end servers or it should be in the Application server but since I am using query and index server in the application server and it is not recomended to use index server for central administrion then how can we configure the front end servers.

  25. Bon Scott says:

    Is there a wat to create SharedServices? I could not find anything about this topic,…

  26. Lex says:

    Martin,

    What i dont understand is the way a web-front end install relates to an SSP install.  To clarify, to install on 3 separate servers, 1) sql 2005, 2) SSP 3) web-frontend Team Sites and 4) MySites, do I have to install Central Administration on servers 2),3) and 4)?  Do i then have to create web-applications on 3) and 4) from their central administration web applications and associate these in the SSP server?

  27. valentine says:

    this is great, i had installed and configured my first Moss in vs2005 and when i got to configuring SSP i was not sure what to do, but this article has cleared it all for me.  Great stuff Martin, you are a life saver!!! i start my new moss role next week.

    Dog’s bollocks

  28. GM says:

    I have 2 load balanced WFE servers, one Application server and a clustered Database server(s).

    Can I set my WFE boxes to also be Query Servers and have Search/Index Server Role on Application Server (SSP). With this setup, when a user searches for results, will the user get results even if Application server is down?

    Thanks everyone, in advance for your responses.

  29. JoF says:

    Hi Martin,

    Great article.

    Sorry, I’am just new with MOSS 2007. Do you have any relevant article regarding explanation on configuration steps on a server farm environment? I can clearly follow the deployment guide of MOSS (I can successfully up a site) but I would like to understand why each step is needed or important. Hope you can help me.

    Thanks

    Regards,

    JoF@corebuilt.com

  30. kentek says:

    Thanks for all you great info but I’m still in a quandary on how to repair or replace a SSP.

    If one wanted to delete an SSP what would be the steps and how to test that the new SSP is working correctly?

    I have a single MOSS 2007 Server for test.

    Everything is pretty much working except the Shared Services site.

    Can you point me to some in depth documentation?

  31. Satyam says:

    Too good…Excellent article…

  32. dexter says:

    Great!!!!!!!!!!!!!

  33. One of my first ever blog articles (and by far most popular to date) was a set of instructions on how

  34. לאחר שסיימנו את הפעלת השירותים, כל שנותר לנו בכדי להעלים את ההערה האדומה הוא להקים את ספק השירותים המשותפים

  35. I recently presented a talk at the Office Developer Conference in San Jose and I was surprised about