SharePoint 2010 High Availability - SPC2C
-
Upload
michael-noel -
Category
Technology
-
view
2.436 -
download
2
description
Transcript of SharePoint 2010 High Availability - SPC2C
Architecting a Fault Tolerant and High Performance SharePoint
2010 Farm
Michael Noel
Convergent Computing (CCO.com)
@MichaelTNoel
Michael Noel
• Author of SAMS Publishing titles “SharePoint 2010 Unleashed,” “SharePoint 2007 Unleashed,” “SharePoint 2003 Unleashed”, “Teach Yourself SharePoint 2003 in 10 Minutes,” “Windows Server 2008 R2 Unleashed,” “Exchange Server 2010 Unleashed”, “ISA Server 2006 Unleashed”, and many other titles .
• Partner at Convergent Computing (www.cco.com / +1(510)444-5700) – San Francisco Bay Area based Infrastructure/Security specialists for SharePoint, AD, Exchange, Security
What we will cover
• SharePoint 2010 Infrastructure Improvements• SharePoint 2010 Databases and Database
Optimization• SharePoint 2007 vs. SharePoint 2010 Roles• SharePoint 2010 Virtualization Guidelines and
Models• Rearchitecture of Site Collections and Content
DBs• Restructuring and Migration of Content• SQL Database Mirroring for High Availability
SharePoint 2010 Infrastructure Improvements
SharePoint 2010 Infrastructure ChangesVersion and Edition Changes
SharePoint 2007 SharePoint 2010
Windows SharePoint Services (WSS) 3.0
SharePoint Foundation 2010
Microsoft Office SharePoint Server (MOSS) 2007: Standard
SharePoint Server 2010: Standard Client Access License
Microsoft Office SharePoint Server (MOSS) 2007: Enterprise
SharePoint Server 2010: Enterprise Client Access License
SharePoint Internet Connector License SharePoint Server 2010 for Internet Sites, Standard
* SharePoint Server 2010 for Internet Sites, Enterprise
FAST Search for SharePoint* FAST Search Server 2010 for SharePoint
SharePoint Designer 2007 SharePoint Designer 2010
Office Groove 2007 SharePoint Workspace 2010
• SSP concept replaced with Service Applications• Each service runs independently, providing
application isolation• All SSP functionality moved to databases, so
they can be consumed from multiple servers more easily
• New products use this framework
SharePoint 2010 Infrastructure ChangesGoodbye Shared Services Provider! (and good riddance…)
• Ribbon interface added• Still a Site Collection in a dedicated Content
DB, so Best practices still apply as follows:● Make redundant (install on multiple web role servers
and Load Balance)● Configure for Kerberos● Configure for SSL (to protect PWs)
• PowerShell is King!
SharePoint 2010 Infrastructure ChangesImprovements to Central Admin Interface and PowerShell
SharePoint 2007 vs. 2010 Roles
SharePoint 2007 vs. 2010 RolesRole Comparison
SharePoint 2007 SharePoint 2010
Web Web
Query Query/Index
Index * (moved into Query)
* (Web used for Crawl) Crawl
Database (SQL x86, x64 - 2000, 2005, 2008)
Database (SQL x64 - 2005, 2008, 2008 R2)
Web, Service App, and Data Tiers
Web
Service Apps
Data
• 2007
• Web/Query/Index/DB
SharePoint 2007 vs. 2010 RolesAll-in-One Farm (Architecture Similar)
2010
Web/Query/Crawl/DB/Search Admin
• 2007
SharePoint 2007 vs. 2010 RolesDedicated SQL Database Server (Also Similar)
2010
• 2007
SharePoint 2007 vs. 2010 RolesSmallest Highly Available Farm
2010
SharePoint 2007 Farm ArchitectureFarm Scalability Limited by Index and SSP
• 2 Web/Query Servers• 2 Service Application Servers• 2 Database Servers
(Clustered or Mirrored)• 2 Query components for
each index partition• 2 Crawlers for the Crawl DB,
one on each Crawl server• Search Admin Service on
one Crawl server
SharePoint 2010 Architecture‘The Six Server Farm’
SharePoint 2010 ArchitectureLarge Farm
• Multiple Dedicated Web Servers• Multiple Dedicated Query Servers• Multiple Dedicated Crawl Servers, with multiple Crawl DBs to increase parallelization of
the crawl process• Multiple distributed Index partitions (max of 10 million items per index partition)• Two query components for each Index partition, spread among servers
SharePoint 2010 Databases
Proliferation of Databases
• SharePoint 2010 has moved a large number of services to the data tier
• End result is a significantly higher number of databases, often more than 20 in a single farm
• Database IO needs also increase
SharePoint Databases by Version (1 of 3)
SharePoint Foundation
SharePoint Server 2010 Standard
SharePoint Server 2010 Enterprise
Project Server 2010
PowerPivot
FAST Search
Configuration X X XCentral Administration content X X XUsage and Health Data Collection
X X X
Business Data Connectivity X X XApplication Registry service * (BDC Upgrade)
X X X
Subscription Settings service * (PowerShell Enabled)
X X X
Content Database(s) X X XSearch – Search Administration X XSearch - Crawl X XSearch - Property X X
SharePoint Databases by Version (2 of 3)
SharePoint Foundation
SharePoint Server 2010 Standard
SharePoint Server 2010 Enterprise
Project Server 2010
PowerPivot
FAST Search
User Profile - Profile X X
User Profile - Synchronization X X
User Profile – Social Tagging X X
Web Analytics - Staging X X
Web Analytics - Reporting X X
Secure Store X X
Stage X X
Managed Metadata X X
Word Automation Services X X
PerformancePoint X
SharePoint Databases by Version (3 of 3)
SharePoint Foundation
SharePoint Server 2010 Standard
SharePoint Server 2010 Enterprise
Project Server 2010
PowerPivot
FAST Search
Project Server - Draft X
Project Server - Published X
Project Server - Archive X
Project Server - Reporting X
PowerPivot Application DB X
Search Administration X
SQL Database Optimization
SQL Database OptimizationContent Databases Distributed Between Multiple Volumes
DB-AFile 1
DB-BFile 1
Volume #1
DB-AFile 2
DB-BFile 2
Volume #2
DB-AFile 3
DB-BFile 3
Volume #3
DB-AFile 4
DB-BFile 4
Volume #4
Tempdb File 1 Tempdb File 2 Tempdb File 3 Tempdb File 4
SQL Database OptimizationContent Databases Distributed Between Multiple Volumes
• Break Content Databases and TempDB into multiple files (MDF, NDF), total should equal number of physical processors (not cores) on SQL server.
• Pre-size Content DBs and TempDB to avoid fragmentation
• Separate files onto different drive spindles for best IO perf.
• Example: 100GB total Content DB on Four-way SQL Server would have four database files distributed across four sets of drive spindles = 25GB pre-sized for each file.
SQL Database OptimizationTempDB Tips
• TempDB is critical for performance• Pre-size to 20% of the size of the largest content
database.• Break into multiple files across spindles as noted• Note there is a separate TempDB for each
physical instance• Note that if using SQL Transparent Data
Encryption (TDE) for any databases in an instance, the tempDB is encrypted.
Remote BLOB Storage (RBS)
• Remote BLOB Storage (RBS) allows for the documents (BLOBs) to be stored outside of the content DB, resulting in DBs that are 80-90% smaller.
• BLOBs can be stored on lower tier of disk• Really a data management tool, less of a
performance tool• Must be managed and understood• Can use FILESTREAM, but preference is to use
third party
SharePoint 2010 Service Applications
Service Application Matrix
Service applications Description SharePoint Foundation 2010
SharePoint Server 2010 Standard
SharePoint Server 2010 Enterprise
Access Services Lets users view, edit, and interact with Access 2010 databases in a Web browser. X
Business Data Connectivity service
Gives access to line-of-business data systems. X X X
Excel Services Application Lets users view and interact withExcel 2010 files in a Web browser. X
Managed Metadata serviceManages taxonomy hierarchies, keywords and social tagging infrastructure, and publish content types across site collections.
X X
PerformancePoint Service Application
Provides the capabilities of PerformancePoint.
Search service Crawls content, produces index partitions, and serves search queries. X X
Secure Store service Provides single sign-on authentication to access multiple applications or services. X X
State service Provides temporary storage of user session data for SharePoint Server components. X X
Usage and Health Data Collection service
Collects farm wide usage and health data, and provides the ability to view various usage and health reports.
X X X
User Profile serviceAdds support for My Site Web sites, profile pages, social tagging and other social computing features.
X X
Visio Graphics Service Lets users view and refresh published Visio 2010 diagrams in a Web browser. X
Web Analytics service Provides Web service interfaces. X X
Word Automation Services Performs automated bulk document conversions. X X
Microsoft SharePoint Foundation Subscription Settings Service
Provides multi-tenant functionality for service applications. Tracks subscription IDs and settings for services that are deployed in partitioned mode. Deployed through Windows PowerShell only.
X X X
Additional Service Applications
• Office Web Apps● Excel Calculation Services● Word Viewing Service● PowerPoint Service
• Project Server 2010• Third Party (Newsgator, etc.)
Service Application Groups
• Can be granular per Web Application
• Multiple Instances of a Service App can be Deployed in a Farm
• Can create custom Service App ‘Group’ to target specific ones to Web Apps
Physical Isolation for Service Apps
• Use different application pools to isolate the service app pool.
• Uses significantly more resources for each app pool (800MB+ RAM)
Cross-farm Service Applications
• Service Applications can be shared across multiple farms
• Create cross-farm service application connections
Service Apps that Access External Data Sources
• Delegated Windows Identity used for the following Service Apps:● Excel Services● PerformancePoint Services● InfoPath Forms Services● Visio Services
• If not in the same domain, access to external data will fail from these data sources
• Use the Secure Store Service to store service credentials to access these data sources
Caution: Do NOT Enable All Service Applications unless Needed!
• Do NOT use the Configuration Wizard for production farms
• Configuration Wizard assumes defaults, creates GUID databases, etc.
• Too easy to enable all Service Applications• Only turn on those Service Applications that you
need! Memory and Proc are used for every one that is turned on
• Just because you’ve purchased it doesn’t mean it needs to be turned on.
Service App Architecture Example:Simple Farm
Service App Architecture Example:Distributed Admin
Service App Architecture Example:Distributed Admin
Service App Architecture Example:Intranet / Complex
Service App Architecture Example:Dedicated Service App Farm
Service App Architecture Example:Central Corporate Services Model
SharePoint 2010 Virtualized Farm Architecture
SP2010 Role Virtualization
• Excellent Virtualization Candidate• Can be easily provisioned via templatesWeb
• Higher proc/mem requirements, but still good candidate• Often paired with SP2010 Web Role• Requires 2nd Disk for Index
Query
• Higher proc/mem requirements, but still good candidate• Low disk requirements compared to other rolesCrawl
• Requires the most memory, proc, and disk IO• Be cautious when virtualizing, make sure host is scaled• If virtual, be sure to use pass-through or fixed size disks
DB
Allows organizations that wouldn’t normally be able to have a test environment to run one
Allows for separation of the database role onto a dedicated server
Can be more easily scaled out in the future
Virtualized Farm ArchitectureCost-effective Virtual Environment / No HA
High-Availability across Hosts
All components virtualized
Uses only two Windows Ent Edition Licenses
Virtualized Farm ArchitectureFully Redundant Farm with only Two Servers
Highest transaction servers are physical
Multiple farm support, with DBs for all farms on the SQL cluster
Virtualized Farm ArchitectureBest Practice Virtual/Physical Farm with HA and Performance
SQL Database Mirroring for High Availability and Disaster Recovery
Mirroring vs. Clustering
• Clustering is Shared Storage, can’t survive storage failure, makes Mirroring more attractive
• Clustering fails over quicker• Mirroring is not supported for all
databases, but Clustering is• Both Clustering and Mirroring can be used
at the same time
• Introduced in SQL 2005 SP1• Greatly improved in SQL 2008 and now SQL 2008 R2• Available in Enterprise and Standard (Synchronous only)
editions• Works by keeping a mirror copy of a database or databases on
two servers• Can be used locally, or the mirror can be remote• Can be set to use a two-phase commit process to ensure
integrity of data across both servers• Can be combined with traditional shared storage clustering to
further improve redundancy• SharePoint 2010 is now Mirroring aware!
SQL Database MirroringProviding for HA and DR for SharePoint Content
SQL Database MirroringSQL Mirroring Modes
• Synchronous Mirroring (no data loss)• Manual Failover
High Protection
• Synchronous Mirroring (no data loss)• Third ‘witness’ server required, auto
failover
High Availability
• Asynchronous Mirroring (possible data loss)
• Enterprise Edition only• Useful for WAN failover scenarios
High Performance
Mirroring Guidelines
• Use the same version of SQL on Principal and Target• Copy Security from Principal to Target• Each Mirrored DB uses two threads…don’t overload the
server• Database model must be set to FULL (Watch for logs
growth.)• Set the mirror location of each DB by using PowerShell
● $db = get-spdatabase | where {$_.Name -eq "database name"}
● $db.AddFailoverServiceInstance("mirrored database name")
● $db.Update()
Mirroring Limitations
• Some Service Apps store data outside of the data tier, including:● Excel Services Application● Access Services
• If a Service App Server hosting these functions goes down, the end user is affected (for that session only.) They can still use another server to re-initiate the session
Mirroring Database Supportability Matrix (1 of 2)
Synchronous Mirror Support
Asynchronous Mirror Support
Configuration XCentral Administration content XContent Databases X XUsage and Health Data Collection
Business Data Connectivity XApplication Registry service * (BDC Upgrade)
Subscription Settings service * (PowerShell Enabled) XSearch – Search Administration XSearch - Crawl XSearch - Property X
Mirroring Database Supportability Matrix (1 of 2)
Synchronous Mirror Support
Asynchronous Mirror Support
User Profile - Profile XUser Profile - Synchronization
User Profile – Social Tagging
Web Analytics - Staging
Web Analytics - Reporting XSecure Store X XStage XManaged Metadata XWord Automation Services XPerformancePoint X
SQL Database Mirroring3 SharePoint SQL Mirror Models
• Synchronous Mirroring• All Servers in one physical location• Automatic Failover
Single Site HA Mirrored
Farm
• Synchronous Mirroring• Servers span highly connected (1GB
Bandwidth, < 1ms latency) Sites• Automatic Failover
Cross Site HA Mirrored
Farm
• Asynchronous Mirroring• Content DBs Mirrored alone• Manual Failover
Dual Farm / Mirrored
Content DBs
Single Site HA Mirrored Farm
• Single Site• Synchronous
Replication• Uses a SQL
Witness Server to Failover Automatically
• Mirror all SharePoint DBs in the Farm
• Use a SQL Alias to switch to Mirror Instance
Cross-Site Mirrored HA Farm
• Two Sites• 1 ms
Latency• 1GB
Bandwidth• Farm
Servers in each location
• Auto Failover
Two Farm / Mirrored Content DBs
• Two Sites• Two
Farms• Mirror only
Content DBs
• Failover is Manual
• Must Re-index
• More details…
Session Takeaways
• Build SharePoint 2010 Environment in Tandem with SharePoint 2007
• Plan for the increased number of databases in SharePoint 2010
• Design 2010 to be Highly Available and Redundant• Consider FAST Search for enhanced Search
Functionality• Highly Consider Virtualization for the SharePoint Roles• Consider Site Collection and Content DB Restructuring• Migrate / Upgrade with restructuring in mind if possible• Highly Consider SQL Database Mirroring for SharePoint
2010 Databases
Your Feedback is Important
Please fill out a session evaluation form drop it off at the conference registration
desk.
Thank you!
Thanks for attending!Questions?
Michael Noel
Twitter: @MichaelTNoel
www.cco.com