There are a lot of ways to use Shibboleth in a cluster; it will not limit the way you set up your web environment. Make this decision based on what is best for your situation and application.

The first option is to install the SP on every machine. They can share keys, certificates, and an entityID so that they appear to be a single Shibboleth service/application. Shibboleth 2.0 makes clustering like this a lot easier with its built-in support for an ODBC session store.

A second common choice is to set up a single proxy through which all users pass, bootstrapping into another environment. See the Shibboleth Shim Filter for an example of how to do that.