SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow...

34
1 SharePoint 2013 Performance and Capacity Management John Naguib Senior Consultant/Portfolio Architect HP

Transcript of SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow...

Page 1: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

1

SharePoint 2013

Performance and

Capacity

ManagementJohn NaguibSenior Consultant/Portfolio Architect

HP

Page 2: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

2

Who am I

- Senior Technical Consultant/ Portfolio Architect in HP

- Active in writing wikis, blogs and forums

- MCITP, MCPD, MCTS and MCT, TOGAF Foundation 9.1 Certified

Blog: http://johnnaguib.blogspot.com

Twitter: @johnnaguib

TechNet Profile: https://social.technet.microsoft.com/profile/john%20naguib/

Page 3: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

3

Agenda

• Introduction• Capacity Planning• Performance Monitoring• Capacity Management• Performance Optimization• Tools• My Sharings• Questions

Page 4: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

4

SharePoint to a User

Page 5: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

5

SharePoint to Consultants/Operations

Page 6: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

6

SharePoint Traditional Topology

Page 7: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

7

SharePoint Streamlined Topology

Page 8: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

8

Capacity Planning

Web Front End and Requests per second

• Number of WFEs needed (@100 RPS/server)

Calculate RPS: either with existing data or with assumptions

N: Total number of unique users ("20,000 of whom access the farm on any given day")C: Concurrent user rate ("30 percent of the users will use the portal at the same time")RPD: Requests per day per user ("Each user makes 400 requests in the course of a business day")Peak usage ratio = 3 ("peak usage can be as much as three times")Average RPS = (N * C * RPD * Peak Usage)/seconds

Page 9: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

9

Capacity Planning 2

Apps Server Capacity Planning:

*Start with two application servers dedicated to the query processing component and index partitions and place all other service application components on a separate application server. Based on utilization, consider either adding all-purpose application servers that are configured similarly, or adding application servers to dedicate resources to specific service.

*Services that consumes resources like PerfromancePoint

*Search Separation 10 million, 40 million, 100 million

http://www.microsoft.com/en-us/download/details.aspx?id=30383

Page 10: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

10

What to Monitor

Page 11: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

11

What to Monitor (2)# Counter

1 % Processor Time

2 Disk-Average Disk Queue Length

3 Disk-% Idle Time

4 Disk-% Free Space

5 Memory- Available Mbytes

6 Memory- Cache Faults/Sec

7 Memory- Pages/Sec

8 Paging File % Used

9 Paging File %Used Peak

10 Network Interface Card- Total Bytes/Sec

11 Process(w3wp and owstimer.exe) -Working Set

12 Process(w3wp and owstimer.exe) -%Processor Time

13 Application Pool Recycles

14 ASP.net- Requests Queued

15 Request Wait Time

16 Request Rejected

Page 12: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

12

How to Monitor

SCOM

3rd Party

Performance monitor Dataset Collectors

power shell script and export to CSV

Adding counter to usage DB (configure data collection)

Page 13: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

13

How to Monitor 2

SQL Server Tools ( SQL Server Profiler)

IIS Logs

Capacity planning limits

Page 14: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

14

Capacity Management# Counter Potential Bottleneck

Condition

Action

1 % Processor TimePersistently greater than 75%

· Upgrade processor, Add additional processors, Add additional servers

2 Disk-Average Disk Queue Length Gradually increasing· Upgrade to faster disks, Increase number of disks, Implement data striping, Move some data to alternative servers

3 Disk-% Idle Time Persistently less than 90% · Increase number of disks, Move some data to alternative disks or servers

4 Disk-% Free Space Persistently less than 30% · Increase number of disks, Move some data to alternative disks or servers

5 Memory- Available Mbytes Less than 2 GB on WFE server · Add memory, Remove unnecessary services,

6 Memory- Cache Faults/Sec Persistently greater than 1 • Add Memory, Increase Cache size Move some data to alternative disks or servers

7 Memory- Pages/SecPersistently greater than 10

• Add Memory

8 Paging File % Used Greater than 50%• Add Memory

9 Paging File %Used Peak Greater than 75% • Add Memory

10 Network Interface Card- Total Bytes/SecPersistently greater than 40% of capacity

• Upgrade NICs,· Investigate further (outgoing traffic, incoming traffic, and memory buffers)

11 Process(w3wp and owstimer.exe) -Working Setgreater than 80% of totalmemory

• Add Memory

12Process(w3wp and owstimer.exe) -%Processor

Time

Persistently Greater than 75% • Upgrade processor, Add additional processors, Add additional servers

13 Application Pool Recycles Several per day · Verify application pool settings, Ensure application pools are not set to

automatically recycle unnecessarily

14 ASP.net- Requests QueuedPersistently Large numbers (100s)

Add WFEs servers

15 Request Wait Time Persistent delays Add WFE servers

16 Request Rejected Greater than 0 Add WFE servers

Page 15: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

15

Demos

Page 16: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

16

Performance Optimization

1 ms Latency between SQL and SP

20 ms latency to retrieve the first byte (Logical Disk: Avg. Disk sec/Read)

stretched Farms !!

Minimal and optimal memory requirements for SharePoint and SQL servers (minimal 12GB SharePoint Server; 16GB SQL server, but depends on the deployment size

Page 17: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

17

Performance Optimization 2

Create a SQL alias cliconfg.exe

Disable loopback check

http://blogs.technet.com/b/sharepoint_foxhole/archive/2010/06/21/disableloopbackcheck-lets-do-it-the-right-way.aspx

Latest OS updates

SP Service Packs

Use Hardware Load Balancers

Page 18: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

18

Performance Optimization 3

Log Files on different than primary (system) disk

Use naming convention for service accounts, services and database names

Disable unused Windows services (eg.: Spooler, AudisoSrv, tabletInput, WerSvc)

WarmUp Scripts

Set Quotas on Web Applications

Page 19: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

19

Performance Optimization 4

Compression

Caching

Avoid Long Backup Jobs

Code Check

Page 20: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

20

Tools: Developer Dashboard

In SharePoint 2013 improved to provide more information in more accurate way to track and debug issues with page rendering time.• Running in separate window to avoid affecting rendering of actual page• Detailed request information per page with chant view• Dedicated tab for ULS log entries for particular request$svc = [Microsoft.SharePoint.Administration.SPWebService]::ContentService$dds = $svc.DeveloperDashboardSettings$dds.DisplayLevel = "On"$dds.Update()

New-SPUsageApplication -Name "Usage Application" -DatabaseName"SP2013A_Logging"

Page 21: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

21

Tools: SQL Profiler

Microsoft SQL Server Profiler is a graphical user interface to SQL Trace for monitoring

an instance of the Database Engine or Analysis Services.

Page 22: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

22

Tools: Health Analyzer

Page 23: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

23

Tools: Fiddler

Web debugging and traffic trace

http://www.telerik.com/download/fiddler/fiddler4

http://blogs.msdn.com/b/fiddler/archive/2011/12/10/fiddler-windows-8-apps-enable-loopback-network-isolation-exemption.aspx

My IIS response Header tool

Page 24: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

24

Tools Log Parser and RPS

http://blogs.msdn.com/b/brian_farnhill/archive/2014/04/03/calculating-rps-statistics-from-iis-logs.aspx

http://blogs.msdn.com/b/mohamed_el_ashmawi/archive/2011/09/23/sharepoint-2010-capacity-management-log-parser.aspx

http://smallcitydesign.com/how-to-get-sharepoint-2010-requests-per-second-rps/

To get the total number of users per log file

logparser -i:IISW3C "select top 20 count(*) as ct,cs-username as user from *.log group by user order by ct desc"

Page 25: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

25

Tools SETH SharePoint Engineer Troubleshooting Helper (SETH)

This SharePoint Engineer Troubleshooting Helper diagnostic is designed to detect certain problematic

conditions that may exist in the configuration of the server that is running Microsoft SharePoint Server.

The problematic conditions are checked only on the server on which this manifest is executed.

To make sure that you have maximum coverage,

we recommend that you run SETH on each computer in the Microsoft SharePoint farm.

https://wc.ficp.support.microsoft.com/SelfHelp?knowledgebaseArticleFilter=

http://support.microsoft.com/en-us/kb/2522171

https://support.microsoft.com/en-us/kb/2793381?wa=wsignin1.0

Page 26: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

26

Tools SETH SharePoint Engineer Troubleshooting Helper (SETH)

Page 27: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

27

Tools SPSFarm Report

Document your Farm

http://spsfarmreport.codeplex.com/

Run Powershell script

[Environment]::CurrentDirectory

Copy the generated file with the xslt

Page 28: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

28

Tools SPDocKIT

Page 29: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

29

Tools: Visual studio: Performance Test

Page 30: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

30

My TechNet ArticlesSharePoint Tools and Codes

SharePoint Vanity URLs

SharePoint Sites are not deleted

Remove WFE Role from Farm

SharePoint 2013 HNSC

Configure OWA with Certificates

AAM and SharePoint 2013 SSL web applications

Create Self Signed Certificates

SharePoint 2013 and Kerberos

SharePoint 2013 Capacity Management

Workflow Manager Disaster Recovery

Page 33: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

33

My Contacts

Blog: http://johnnaguib.blogspot.com

Twitter: @johnnaguib

TechNet Profile: https://social.technet.microsoft.com/profile/john%20naguib/

Page 34: SharePoint 2013 Performance and Capacity Management · SharePoint 2013 Capacity Management Workflow Manager Disaster Recovery 31 My TechNet Gallery Sharing's SharePoint 2013 Performance

34

Thanks