Real World SharePoint 2013 Implementation
Patrick Curran, MCT
6 / 1 8 / 2 0 1 4
# C A P S P U G
© 2011 PLANET TECHNOLOGIES, INC.
Founded in 1998
Microsoft Partner with Five Gold Competencies, 11 Silver Competencies
One of only 35 Microsoft Nationally Managed Partners
Six Time Microsoft Federal Partner of the Year and Three Time Microsoft SLG Partner of the Year
Highly Skilled Staff
– Microsoft Certified Masters
– Microsoft MVP’s (SharePoint, Exchange)
– Microsoft Certified Trainers
– Microsoft Certified Partner for Learning Solutions (CPLS)
– 130+ Microsoft Consultants
Office Locations – DC, Denver, Harrisburg, Redmond, Europe, Middle East and Africa (EMEA)
Vertical Markets include Federal, State and Local Government, Education, Healthcare and Private
Sector
Work Experience in 42 States and 33 Countries
© 2011 PLANET TECHNOLOGIES, INC.
MCT, MCPD, MCITP, MCP, MCTS, MCSA
Director, Federal Practice, Planet Technologies.
SharePoint Architect.
Co-Author of Microsoft SharePoint 2013: Designing and
Architecting Solutions.
Working with SharePoint since 2003.
PCfromDC.com
@PCfromDC
© 2011 PLANET TECHNOLOGIES, INC.
Microsoft® SharePoint® 2013: Designing and Architecting Solutions
© 2011 PLANET TECHNOLOGIES, INC.
1.
Introduction to ContosoPharma.
2.
Introduction to ContosoPharma IT.
3.
Review architecture and verify solution.
4.
Review supporting documentation.
5.
Review implementation of Server 2012 and SQL2012.
6.
Review implementation of WAC (OWA) farm.
7.
Review implementation of Server 2012 and SP2013.
8.
Review implementation of Workflow Manager farm.
9.
Preparing for Disaster Recovery
10.
Review a Different Production Environment
We have won a bid for deploying SharePoint 2013 at Contoso
Pharmaceuticals. The winning proposal is to deploy a
SharePoint 2013 farm for 25 people growing to 100 people.
IT has already purchased 2 servers!
Let’s get started!
© 2011 PLANET TECHNOLOGIES, INC.
Make sure that if you use acronyms that everyone in the room understands what you mean. Do NOT assume that even the most basic of concepts will be understood. For example, HA, means High Availability, meaning if a server or service fails that there is a continuity of operation with minimal enduser impact…
While using network load-balancing will allow for distributed load on the network, it is needed for high availability, even if the farm is only for 50 people.
© 2011 PLANET TECHNOLOGIES, INC.
Day 1 Conclusion:
Client would like 1 SharePoint farm, created in HA (high availability mode). Already purchased hardware (although needed specs still).
Schedule meeting with IT Staff to validate requirements without
CIO in the room.
© 2011 PLANET TECHNOLOGIES, INC.
Farm drawing at this point
© 2011 PLANET TECHNOLOGIES, INC.
SQL Server Always-On http://technet.microsoft.com/en-us/library/hh913923(v=office.14).aspx
© 2011 PLANET TECHNOLOGIES, INC.
SQL Server Always-On
© 2011 PLANET TECHNOLOGIES, INC.
Office Web Application
(WAC- Web Access Companion) Server
• New “disconnected” Service
• Cannot be installed on a SharePoint Server
© 2011 PLANET TECHNOLOGIES, INC.
Workflow Manager 1.0
(WAWS- Windows Azure Workflow Server)
• Another “disconnected” Service
• Can be installed on a SharePoint Server
• 1 or 3 servers (not 2 or 4). Yes, only 1 or 3
• A great example of the new SharePoint application model. Workflow communications happen via the core app model technologies, CSOM and REST, and authenticates through OAuth.
Current Versions
• Workflow Manager = 1.0 Refresh
• Service Bus = 1.1
© 2011 PLANET TECHNOLOGIES, INC.
This is basically the meeting to really see what is going on within the organization and to see what they really want / need. Also verify with IT any questions that were left outstanding and see if IT and the CIO are on the same page.
Make sure that if you use acronyms that everyone in the room understands what you mean. Do NOT assume that even the most basic of concepts will be understood. For example, DR, means Disaster Recovery, meaning if your primary location fails to exist that there is a continuity of operation without any or minimal end-user impact…
© 2011 PLANET TECHNOLOGIES, INC.
I am not referring to Dr Hibbert or Dr Nick when I say DR
IT Hands over Pre-Purchased server documentation
IT has been informed that a Dev environment is a good idea
And a 3 rd server has magically been allocated to the project.
Start conversation of SLAs, RTOs, and RPOs
Server Hardware Dell PowerEdge R720 (x3)
CPUs
Cores / CPU
Threads / CPU
Total Threads
RAM
Drive Letter
Drive Function
RAID Level
2
8
16
32
C:
Host OS & VM SQL Temp
Files
64 GB
D:
VM OS Drives
1 (Mirror)
E:
VM SQL Data
Files
F:
VM SQL Data
Files
G:
VM SQL Backup
Files
10 (Mirror/Stripe) 10 (Mirror/Stripe) 10 (Mirror/Stripe) NA
H:
Host "Hot
Spare"
NA
Individual Drive Size 146GB
Spindle Speed 15k
Total Drive Size 146GB
500GB
15k
1000GB
900GB
10k
1800GB
900GB
10k
1800GB
900GB
10k
900GB
900GB
10k
900GB
Z:
Host DVD
Drive
NA
NA
NA
NA
© 2011 PLANET TECHNOLOGIES, INC.
http://technet.microsoft.com/en-us/library/cc262485(v=office.15).aspx#hwLocServers
SharePoint Server Minimums (3 tier)
–
CPU: 4 cores
– RAM: 12 GB
SQL Server Minimums (small deployment < 1,000 users)
– CPU: 4 cores
– RAM: 8 GB
Minimums Host A
CPU
Host B
24 threads 20 threads
RAM 68 GB 56 GB
© 2011 PLANET TECHNOLOGIES, INC.
Oh, so you don’t want own any datacenter CALs and you don’t want to purchase any?
http://www.microsoft.com/en-us/server-cloud/products/windows-server-2012r2/buy.aspx#fbid=-RPCoaYVf-4
Server 2012R2 Datacenter Processor + CAL $6,155
Server 2012R2 Standard Processor + CAL $882
© 2011 PLANET TECHNOLOGIES, INC.
IT Meeting Scenario
Host
OS
C:\ D:\
Data Drives
E:\ F:\ G H
Z:\
Backups
Hot
Spare
Temp
Drives
VM
OSs
Log Drives
NIC Team
Contoso Internal
Network
W ork fl ow
Network
Host
M achine
Ne twork
© 2011 PLANET TECHNOLOGIES, INC.
Farm drawing at this point
2
1
Production
Cloud1 staff.contosopharma.com
wf.contosopharma.com
wac.contosopharma.com
4
3
Production
Cloud2
Development
Cloud3
5 dev-staff.contosopharma.com
dev-wf.contosopharma.com
6 dev-wac.contosopharma.com
Office
Web
Applications
Workflow
Manager
SQL2012 SP2013
© 2011 PLANET TECHNOLOGIES, INC.
Oh, So That’s Not What You Meant?
After updated drawings are handed back over to IT for review, it is determined by the client that they want one production farm in DC and another COOP farm in VA for disaster recover.
COOP = Continuity of Operations
© 2011 PLANET TECHNOLOGIES, INC.
Oh, So That’s Not What You Meant?
http://technet.microsoft.com/en-us/library/jj841106(v=office.15).aspx
© 2011 PLANET TECHNOLOGIES, INC.
Oh, So That’s Not What You Meant?
Farm drawing at this point
Production
Cloud1
1 staff.contosopharma.com
wf.contosopharma.com
2 wac.contosopharma.com
© 2011 PLANET TECHNOLOGIES, INC.
Development
Cloud3
5 dev-staff.contosopharma.com
dev-wf.contosopharma.com
6 dev-wac.contosopharma.com
COOP
Cloud2
3 staff.contosopharma.com
wf.contosopharma.com
4 wac.contosopharma.com
Oh, So That’s Not What You Meant?
What you really want is a stretched farm…
Stretched Farm = “A single farm that has servers in multiple physical locations”
• Originally not supported for SharePoint 2013
• Must be less than 1 millisecond latency between all the SQL Servers and the front-end Web servers in one direction , and at least 1 gigabit per second bandwidth. http://blogs.msdn.com/b/zwsong/archive/2011/04/04/killing-two-birds-with-onestone-sharepoint-ha-and-dr-with-stretch-farm-and-everything-you-want-to-knowabout-it.aspx
• There must be a highly consistent intra-farm latency of <1ms, 99.9% of the time over a period of ten minutes . (Intra-farm latency is commonly defined as the latency between the web front-end and database servers) http://blogs.technet.com/b/stefan_gossner/archive/2013/04/04/update-on-stretchfarm-support-in-sharepoint-2013.aspx
• Distributed topologies across one or more geographic areas is not supported.
(huh?)
© 2011 PLANET TECHNOLOGIES, INC.
Oh, So That’s Not What You Meant?
What you really want is a stretched farm…
What does this really mean?
• I cannot find another reference other than Stefan’s that says no geographic border crossing of data.
• Latency is latency… <1ms does not care if data is traveling 1m or 1km
• Reality is that a bad switch setting or a slow network will not even allow for a supported SharePoint farm let alone a stretched farm.
© 2011 PLANET TECHNOLOGIES, INC.
Oh, So That’s Not What You Meant?
What you really want is a stretched farm…
Dark Fibre : unlit fibre, meaning that there are no other lasers using that piece of glass
• Typically set as a 10GB/s link requiring 2 fibre channels 1 for TX and 1 for RX.
• Fibre bandwidth does not change latency
• You cannot defy physics, the speed of light in fibre is 300 x 10^6 m/s * 0.66 = 200 x
10^6 m/s (roughly 200km / ms or 124 miles / ms)
• If out of fibre channels, you can always increase bandwidth by multiplexing
© 2011 PLANET TECHNOLOGIES, INC.
Oh, So That’s Not What You Meant?
What you really want is a stretched farm…
If you are one of those, “I hate physics, can you please just tell me what I need to know” people:
Formula for distance in
0.1ms
Distance in 1ms
Copper
18000 / (180 x 10^6 m/s)
18km (11 miles)
Fibre
200000 / (200 x 10^6 m/s)
200km (124 miles)
© 2011 PLANET TECHNOLOGIES, INC.
Oh, So That’s Not What You Meant?
Farm drawing at this point
Development
Cloud3
5 dev-staff.contosopharma.com
dev-wf.contosopharma.com
6 dev-wac.contosopharma.com
© 2011 PLANET TECHNOLOGIES, INC.
2
1
Production-HQ
Cloud1 staff.contosopharma.com
wf.contosopharma.com
wac.contosopharma.com
Production-COOP
Cloud2
3
4
Review Current Documentation
Note: At this point in time, HQ and COOP sites are in different
IP ranges.
HQ
172.20.0.xxx
COOP
172.20.8.xxx
Issues
Requires a lot of IP addresses
DNS replication and DHCP updating needs to happen quickly
(was not happening with ContosoPharma)
© 2011 PLANET TECHNOLOGIES, INC.
Review Current Documentation
Farm drawing at this point… What’s Wrong?
Development
Cloud3
5 dev-staff.contosopharma.com
dev-wf.contosopharma.com
6 dev-wac.contosopharma.com
© 2011 PLANET TECHNOLOGIES, INC.
2
1
Production-HQ
Cloud1 staff.contosopharma.com
wf.contosopharma.com
wac.contosopharma.com
Production-COOP
Cloud2
3
4
Review Current Documentation
Farm drawing… Final?
Cloud3
5 dev-staff.contosopharma.com
6 wf.contosopharma.com
dev-wac.contosopharma.com
2
1
Cloud1
Office
Web
Applications
Workflow
Manager
SQL2012 SP2013
© 2011 PLANET TECHNOLOGIES, INC.
SQL Server Web Server staff.contosopharma.com
wf.contosopharma.com
ca.contosopharma.com
wac.contosopharma.com
4
3
Cloud2
Contoso Internal Network NIC Team
Contoso Virtual NIC
Contoso Workflow NIC
Server Management NIC
Contoso Internal Network
Server, SQL, and WAC Installation
Have scripts prepared for setting up the VMs on the host server.
– You should have different scripts for SQL and SharePoint
Have scripts prepared to set up the virtual server from a
“SYSPREP’d” state.
As of April 2014 CU, SharePoint now has SQL Availability
Group cmdlets.
– Get-AvailabilityGroupStatus
– Add-DatabaseToAvailabilityGroup
– Remove-DatabaseFromAvailabilityGroup
– Trevor Seward has a nice post
• http://thesharepointfarm.com/2014/05/sharepoint-database-availability-group-cmdlets/
© 2011 PLANET TECHNOLOGIES, INC.
Server, SQL, and WAC Installation
Review database management for SharePoint 2013
– http://technet.microsoft.com/en-us/library/cc825329(v=office.15).aspx
– Move site collections between databases
– Move all databases
DO NOT CREATE A NLB CLUSTER ON THE SQL SERVER
ALWAYS-ON SERVERS!
© 2011 PLANET TECHNOLOGIES, INC.
Server, SQL, and WAC Installation
Create your SQL backup jobs now
– If you have not already started your backup and restore strategy with client, start it now.
– Do not put all of your eggs in one basket
–
Content is KING!
© 2011 PLANET TECHNOLOGIES, INC.
Server, SQL, and WAC Installation
Anything WAC related refer to Wictor Wilén
– http://www.wictorwilen.se/spc14-scripts-for-mastering-office-web-apps-2013operations-and-deployments
Configuring Office Web Apps in SharePoint 2013 (Steve Peschka)
– http://blogs.technet.com/b/speschka/archive/2012/07/23/configuring-officeweb-apps-in-sharepoint-2013.aspx
Configure Office Web Apps for SharePoint 2013 (TechNet)
– http://technet.microsoft.com/en-us/library/ff431687.aspx
Office Web Apps 2013: Patching your WAC farm with no downtime
– http://www.wictorwilen.se/office-web-apps-2013-patching-your-wac-farm-withno-downtime
Apply software updates to Office Web Apps Server
– http://technet.microsoft.com/en-us/library/jj966220.aspx
© 2011 PLANET TECHNOLOGIES, INC.
Server, SP2013, and WAWS Installation
Enable all required features on the server.
Install all SharePoint and Workflow bits.
SYSPREP the server.
Export the image from Hyper-V and validate.
– Create new VM run through scripts and make sure everything works.
– When new bits are updated in farm, update bits on image, sysprep again retest.
Create all SharePoint servers in the farm based off of this image.
Have scripts prepared to set up the virtual machine from a “SYSPREP’d” state. Including having the scripts available to add the new server to the
SharePoint Farm.
© 2011 PLANET TECHNOLOGIES, INC.
Server, SP2013, and WAWS Installation
Name your workflow instance appropriately, don’t just go with the default name of “SharePoint”
$site = "https://staff.contospharma.com"
$workflowHostUri = "https://wf.contosopharma.com:12290"
$scopeName = “SharePoint -Production"
Register-SPWorkflowService -SPSite $site `
-WorkflowHostUri $workflowHostUri `
-ScopeName $scopeName
© 2011 PLANET TECHNOLOGIES, INC.
Server, SP2013, and WAWS Installation
Anything WAWS related refer to Spence Harbar
– Has an excellent 4 part blog post on Workflow
– http://www.harbar.net/articles/wfm1.aspx
– http://www.harbar.net/articles/wfm2.aspx
– http://www.harbar.net/articles/wfm3.aspx
– http://www.harbar.net/articles/wfm4.aspx
Just in case you want not as good information, here is msdn
– http://msdn.microsoft.com/en-us/library/office/jj163276.aspx
And here is TechNet
– http://technet.microsoft.com/en-us/library/jj658588(v=office.15).aspx
© 2011 PLANET TECHNOLOGIES, INC.
AppFabric (Distributed Cache Service) Farm
© 2011 PLANET TECHNOLOGIES, INC.
AppFabric (Distributed Cache Service) Farm
By default (and in SharePoint), cached items in an
AppFabric Named Cache are stored only once across the entire cluster.
–
SharePoint uses 10 Named Cache Stores
Cache Name TTL
ActivityFeed
ActivityFeedLMT
LogonToken
168 hours
168 hours
10 hours
Configuration Location
UserProfileApplication.Feed
CacheTTLHours
UserProfileApplication.
FeedCacheLastModifiedTi meTtlDeltaHours
SPSecurityTokenServiceMa nager.WindowsTokenLifeti
me
ServerToAppServerAccess
Token
24 hours (hard coded)
ViewState 31 minutes
SPWebApplication.FormDig
estSettings.Timeout + 1
© 2011 PLANET TECHNOLOGIES, INC.
Search
SecurityTrimming
Default
Access
Bouncer
1 hour
1 hour
(hard coded)
(hard coded)
AppFabric (Distributed Cache Service) Farm
If the cache host storing the cached item crashes or is shutdown “nongracefully”, that item is no longer available in the cache.
AppFabric is NOT SharePoint’s responsibility
Currently at v1.0 CU5
– http://www.wictorwilen.se/how-to-patch-the-distributed-cache-in-sharepoint-2013
Must Reads
– http://blogs.msdn.com/b/besidethepoint/archive/2013/03/27/appfabric-caching-and-sharepoint-1.aspx
– http://blogs.msdn.com/b/besidethepoint/archive/2013/03/27/appfabric-caching-and-sharepoint-2.aspx
– http://blogs.technet.com/b/uktechnet/archive/2013/05/07/guest-post-distributed-cache-service-insharepoint-2013.aspx
© 2011 PLANET TECHNOLOGIES, INC.
Haven’t you already done this?
You have:
• SQL Always-On up and running moving data asynchronously up to Azure (or DR location of choice) to warm standby farm.
• Standby images to add servers to Farm if need be.
• Scripts have been tested and proven.
• Documentation created on what to do in case of an emergency.
• Not just tested once and forgotten, but added to and updated after each test
• Save master file in your SharePoint Farm, but DO NOT save current version in SharePoint. Have physical copies printed, .pdf’s emailed, just something to walk your team through a restore if SharePoint goes down.
© 2011 PLANET TECHNOLOGIES, INC.
2
1
Cloud1 staff.vandapharma.com
3 owa.vandapharma.com
5 wfm.vandapharma.com
8
© 2011 PLANET TECHNOLOGIES, INC.
6
7
Content
Workflow
11
12
13
14
15
9
Cloud3
10
20
Services
21
22
18
19
16
Cloud2
17
Email: pcurran@go-planet.com
Twitter: @PCfromDC
Blog: http://PCfromDC.com
Email: pcurran@go-planet.com
Blog: PCfromDC.com
Twitter: @PCfromDC
© 2011 PLANET TECHNOLOGIES, INC.