Professional Documents
Culture Documents
Brendan Griffin
Premier Field Engineer brendan.griffin@microsoft.com
The information contained in this document represents the current view of Microsoft Corporation on the issues discussed as of the date of publication and is subject to change at any time without notice to you. This document and its contents are provided AS IS without warranty of any kind, and should not be interpreted as an offer or commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information presented. The information in this document represents the current view of Microsoft on the content. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED, OR STATUTORY, AS TO THE INFORMATION IN THIS DOCUMENT. The example companies, organizations, products, domain names, e-mail addresses, logos, people, places, and events depicted herein are fictitious. No association with any real company, organization, product, domain name, email address, logo, person, places, or events is intended or should be interred. Code snippets, samples, or examples contained in this document are provided AS-IS without warranties of any kind. Do not distribute. The descriptions of other companies products in this document, if any, are provided only as a convenience to you. Any such references should not be considered an endorsement of support by Microsoft. Microsoft cannot guarantee their accuracy, and the products may change over time. Also, the descriptions are intended as brief highlights to aid understanding, rather than as thorough coverage. For authoritative descriptions of these products, please consult their respective manufacturers.
Page ii
SharePoint 2010 - Office Web Apps, Installation, Configuration and Troubleshooting Guide, Prepared by Brendan Griffin "SharePoint 2010 - Office Web Apps" last modified on 29 Nov. 11, Rev 10
Reviewers
Name Version approved Position Date
Page iii
SharePoint 2010 - Office Web Apps, Installation, Configuration and Troubleshooting Guide, Prepared by Brendan Griffin "SharePoint 2010 - Office Web Apps" last modified on 29 Nov. 11, Rev 10
Table of Contents
Introduction ................................................................................................................... 1 Office Web Apps - Overview ........................................................................................ 2 Deploying Office Web Apps ......................................................................................... 3
Installing Office Web Apps ...................................................................................................... 3 Configuring the default file open behaviour ............................................................................. 4 Starting Office Web Apps Services ......................................................................................... 5 Creating the Office Web Apps service applications ................................................................. 5 Activating the Office Web Apps feature ................................................................................... 5
Un-installing Office Web Apps ................................................................................... 17 Troubleshooting Office Web Apps ............................................................................ 18
Page iv
SharePoint 2010 - Office Web Apps, Installation, Configuration and Troubleshooting Guide, Prepared by Brendan Griffin "SharePoint 2010 - Office Web Apps" last modified on 29 Nov. 11, Rev 10
Introduction
This document provides details of how to deploy, configure and troubleshoot Office Web Apps in a SharePoint 2010 environment, it makes the assumption that Office Web Apps will be deployed to an existing SharePoint 2010 farm. Instructions on how to deploy Office Web Apps to a new SharePoint 2010 farm can be found here - Deploy Office Web Apps (Installed on SharePoint 2010 Products) http://technet.microsoft.com/en-us/library/ff431687.aspx#bkmk_ins_exis_farm
Page 1
SharePoint 2010 - Office Web Apps, Installation, Configuration and Troubleshooting Guide, Prepared by Brendan Griffin "SharePoint 2010 - Office Web Apps" last modified on 29 Nov. 11, Rev 10
Page 2
SharePoint 2010 - Office Web Apps, Installation, Configuration and Troubleshooting Guide, Prepared by Brendan Griffin "SharePoint 2010 - Office Web Apps" last modified on 29 Nov. 11, Rev 10
Install Office Web Apps on each server within the farm by running Setup.exe from the installation media Once Office Web Apps has been installed on every server within the farm, run PSConfig on each server within the farm to complete the installation
Page 3
SharePoint 2010 - Office Web Apps, Installation, Configuration and Troubleshooting Guide, Prepared by Brendan Griffin "SharePoint 2010 - Office Web Apps" last modified on 29 Nov. 11, Rev 10
The Windows PowerShell commands below will activate the OpenInClient feature in each site collection. $defaultOpenBehaviorFeatureId = $(Get-SPFeature -limit all | where {$_.displayname -eq "OpenInClient"}).Id Get-SPSite -limit ALL |foreach{ Enable-SPFeature $defaultOpenBehaviorFeatureId url $_.URL } Once the installation and configuration of Office Web Apps has been performed the behaviour can be changed to open documents in Office Web Apps rather than the client, using the Windows PowerShell commands below. $defaultOpenBehaviorFeatureId = $(Get-SPFeature -limit all | where {$_.displayname -eq "OpenInClient"}).Id Get-SPSite -limit ALL |foreach{ Disable-SPFeature $defaultOpenBehaviorFeatureId url $_.URL } Alternatively this setting can be configured on a per document library basis if required.
Page 4
SharePoint 2010 - Office Web Apps, Installation, Configuration and Troubleshooting Guide, Prepared by Brendan Griffin "SharePoint 2010 - Office Web Apps" last modified on 29 Nov. 11, Rev 10
This can be done manually on a per site collection basis or can be automated for all site collections using the Windows PowerShell commands below. $webAppsFeatureId = $(Get-SPFeature -limit all | where {$_.displayname -eq "OfficeWebApps"}).ID Get-SPSite -limit ALL |foreach {Enable-SPFeature $webAppsFeatureId -url $_.URL} Any site collection created after Office Web Apps have been deployed will automatically have the Office Web Apps feature activated. If the feature isnt activated for a site collection Office Web Apps can be used to view documents in a browser if the default behaviour of the document library has been configured to open document in a
Page 5
SharePoint 2010 - Office Web Apps, Installation, Configuration and Troubleshooting Guide, Prepared by Brendan Griffin "SharePoint 2010 - Office Web Apps" last modified on 29 Nov. 11, Rev 10
browser however if a user attempts to edit the document using the Edit in Browser option, this will return the following error.
Page 6
SharePoint 2010 - Office Web Apps, Installation, Configuration and Troubleshooting Guide, Prepared by Brendan Griffin "SharePoint 2010 - Office Web Apps" last modified on 29 Nov. 11, Rev 10
OneNote
OneNote configuration is controlled on a per site collection basis using the Windows PowerShell cmdlet Set-SPOneNoteWebAppConfig, ClipartEnabled Enables support for inserting clipart in Microsoft Word Web App and OneNote Web App. NotebookVersioningEnable Specifies that the notebook use its internal versioning system to track versions. Proxy The URL of the proxy server configured to allow HTTP requests to Office.com to succeed. Used so that the server is able to retrieve and insert clipart in the Word Web App and OneNote Web App. SyncIntervalMaxInSeconds The minimum interval, in seconds, for replicating when the user is idle. The default value is 30. SyncIntervalMinInSeconds The minimum level, in seconds, for replication to occur when a user is idle. The default value is 5. SyncIntervalMinOnHeavyLoadInSeconds The sync interval level, in seconds, for the OneNote Web App when the server is experiencing heavy load. Valid values are 1 to 1000.The default value is 30. SyncIntervalStepInSeconds The amount, in seconds, to increase the interval of replicating when the user is idle. The default value is 5. In the example below SyncIntervalStepInSeconds has been configured to 50 for the HR site collection. Set-SPOneNoteWebAppConfig -Site "http://intranet.contoso.com/sites/HR" SyncIntervalMinInSeconds 50
Page 7
SharePoint 2010 - Office Web Apps, Installation, Configuration and Troubleshooting Guide, Prepared by Brendan Griffin "SharePoint 2010 - Office Web Apps" last modified on 29 Nov. 11, Rev 10
PowerPoint
A number of configuration options are available for the PowerPoint service applications. A number of these settings can be accessed via Central Administration > Application Management > Manage service applications > PowerPoint Service Application > Manage. Some settings can only be changed via Windows PowerShell.
Below are details on how the settings that are available in Central Administration can be changed using Windows PowerShell. Supported File Formats The EnableViewingOpenXmlFormats and EnableViewing97to2003Formats parameters of the Set-SPPowerPointServiceApplication cmdlet can be used to enable support for these document types. PowerPoint 97-2003 Presentation Scanning The DisableBinaryScan parameter of the Set-SPPowerPointServiceApplication cmdlet can be used to disable/enable scanning for PowerPoint presentations created in versions prior to PowerPoint 2007. In addition to these settings, there are a number of additional settings can only be configured via Windows PowerShell using the Set-SPPowerPointServiceApplication cmdlet, these are:
Page 8
SharePoint 2010 - Office Web Apps, Installation, Configuration and Troubleshooting Guide, Prepared by Brendan Griffin "SharePoint 2010 - Office Web Apps" last modified on 29 Nov. 11, Rev 10
BroadcastStateIdleTimeoutInSeconds The maximum total time, in seconds, that a broadcast connection is allowed to be idle before being automatically disconnected. The default value is 5400 seconds (90 minutes). BroadcastStateSessionTimeoutInSeconds The maximum total time in seconds that a broadcast session is allowed to be active before being automatically disconnected. Set this parameter to the same value as BroadcastSessionTimeoutInSeconds. The default value is 43200 seconds (12 hours). EditingWorkerProcessCount The number of active instances of the named application. This value must be less than the Windows Communication Foundation (WCF) connection limit for this computer. The default value is 100. EditingWorkerTimeoutInSeconds The time-out in seconds that the editing service is given for a request sent to the editing service. The default value is 60 seconds. EnableSandboxedEditing Specifies if the Microsoft PowerPoint Web App editing code should run in a sandboxed (lowpermission mode) environment. The default value is $True. EnableSandboxedViewing Specifies if the Microsoft PowerPoint Web App viewing code should run in a sandboxed (lowpermission mode) environment. The default value is $True. ViewingCacheExpirationPeriodInSeconds The maximum time, in seconds that items are kept in the back-end server cache. The default value is 600 seconds (10 minutes). ViewingMaximumConversionsPerWorker The number of conversion jobs that a given instance of the worker process is allowed to convert before recycling. The default value is 5. ViewingWorkerKeepAliveTimeoutInSeconds The time-out in seconds, for the keep alive signal interval between the start and end of a process on the viewing back-end. The default value is 120 seconds. ViewingWorkerProcessCount The number of active instances of the named application. This value must be less than the Windows Communication Foundation (WCF) connection limit for this computer. The default value is 3. ViewingWorkerTimeoutInSeconds The time-out in seconds that the viewing service is given for any job submitted by the application manager. The default is 300 seconds (5 minutes).
Page 9
SharePoint 2010 - Office Web Apps, Installation, Configuration and Troubleshooting Guide, Prepared by Brendan Griffin "SharePoint 2010 - Office Web Apps" last modified on 29 Nov. 11, Rev 10
In the example below Set-SPPowerPointServiceApplication has been used to configure ViewingWorkerTimeoutInSeconds to 600 seconds. $serviceAppId = (Get-SPServiceApplication | where {$_.DisplayName -eq "PowerPoint Service Application"}).ID Set-SPPowerPointServiceApplication -Identity $serviceAppId ViewingWorkerTimeoutInSeconds 600
The proxy for the PowerPoint service application has a number of settings that can be configured using the Windows PowerShell cmdlet Set-SPPowerPointServiceApplicationProxy. BroadcastBrowserDisconnectedStateThresholdInSecondsSpecifies The total time, in milliseconds, for which a broadcast attendee will tolerate failing GetData poll requests before changing to disconnected state. The default value is 60000 milliseconds. BroadcastBrowserGetDataTimeoutInSeconds The timeout value, in milliseconds, for broadcast attendee GetData requests. The default value is 20000. BroadcastBrowserHealthyStatePollIntervalInMilliSeconds The time, in milliseconds, between scheduled GetData poll requests for broadcast attendees when in healthy state. The default value is 1000 milliseconds. BroadcastBrowserReconnectingStatePollIntervalInSeconds The time, in seconds, between scheduled GetData poll requests for broadcast attendees when in a reconnecting state. The default value is 5. BroadcastBrowserReconnectingStateThresholdInSeconds The total time, in milliseconds, for which a broadcast attendee will tolerate failing GetData poll requests, before changing to the reconnecting state. The default value is 20000 milliseconds. BroadcastDataCacheCleanupPeriodInMilliSeconds The periodic time interval, in milliseconds, when the front-end BroadcastData cache clean-up operation is run. The default value is 3,600,000 milliseconds (60 mins). BroadcastDataCacheExpirationPeriodInMilliSeconds The time, in milliseconds, after which the cached BroadcastData entry expires. The default value is 300 milliseconds. BroadcastDataCacheMaxSessions The maximum number of sessions that will be cached in the front-end BroadcastData cache. The default value is 20,000. BroadcastPresenterIdleTimeoutInSeconds The presenter session idle time-out value in seconds. The default value is 0 seconds. A value of 0 indicates no time-out.
Page 10
SharePoint 2010 - Office Web Apps, Installation, Configuration and Troubleshooting Guide, Prepared by Brendan Griffin "SharePoint 2010 - Office Web Apps" last modified on 29 Nov. 11, Rev 10
BroadcastSessionTimeoutInSeconds The maximum total time, in seconds, that a broadcast session is allowed to be active before it is automatically disconnected. Set this parameter to the same value as BroadcastStateSessionTimeoutInSeconds. A value of 0 indicates no timeout. The default is 43200 seconds (12 hours). SilverlightCookieExpirationPeriodInDays Specifies the number of days after the Microsoft Silverlight 3 cookie will expire. The default value is 7.
This feature requires a site collection which is used to host slide shows that are to be broadcasted. To create a broadcast site collection you need to perform the following steps. Create a site collection using the PowerPoint Broadcast Site template Grant users permission to the use the broadcast site by adding them to the Broadcast Attendees and/or Broadcast Presenters group.
Page 11
SharePoint 2010 - Office Web Apps, Installation, Configuration and Troubleshooting Guide, Prepared by Brendan Griffin "SharePoint 2010 - Office Web Apps" last modified on 29 Nov. 11, Rev 10
The Windows PowerShell commands below can be used to automate the process of creating a site collection in each web application to host the broadcast site collection. $rootSites = Get-SPWebApplication | Get-SPSite -Limit ALL | where { $_.ServerRelativeUrl -eq "/" } $bcastTmpl = Get-SPWebTemplate | where { $_.Name -eq "PowerPointBroadcast#0" foreach ($rootSite in $rootSites) { $url = $rootSite.Url + "/sites/broadcast" New-SPSite -Url $url -OwnerAlias "contoso\admin" -Template $bcastTmpl} The process of assigning users permissions to the site can be automated using the Windows PowerShell commands below. New-SPUser -web $url -UserAlias "Contoso\Domain Users" -Group "Broadcast Attendees" New-SPUser -web $url -UserAlias "Contoso\Domain Users" -Group "Broadcast Presenters" Multiple PowerPoint Broadcast sites can be created; the site that a user uses to broadcast a slideshow (as well as a host of other options) can be managed using a group policy. Full details can be found here Configure Group Policy settings (Broadcast slide show) http://technet.microsoft.com/enus/library/ff431688.aspx
Word
A number of configuration options are available for the Word Viewing service applications. A number of these settings can be accessed via Central Administration > Application Management > Manage service applications > Word Viewing Service Application > Manage. Some settings can only be changed via Windows PowerShell.
Below are details on how the settings that are available in Central Administration can be changed using Windows PowerShell.
Page 12
SharePoint 2010 - Office Web Apps, Installation, Configuration and Troubleshooting Guide, Prepared by Brendan Griffin "SharePoint 2010 - Office Web Apps" last modified on 29 Nov. 11, Rev 10
Supported File Formats Viewing The EnableBinaryFormatSupport and EnableOpenXmlFormatSupport parameters of the SetSPWordViewingServiceApplication cmdlet can be used to configure support for these document types. Embedded Font Support The DisableEmbeddedFonts parameter of the Set-SPWordViewingServiceApplication cmdlet can be used to disable/enable support for embedded fonts. Word 97-2003 Document Scanning The DisableBinaryScan parameter of the Set-SPWordViewingServiceApplication cmdlet can be used to disable/enable scanning for Word documents created in versions prior to Word 2007.
Recycle Threshold The RecycleActiveProcessCount parameter of the Set-SPWordViewingServiceApplication cmdlet can be used to specify the number of files that a single process is allowed to render before the Word Viewing Service Application recycles the process Total Active Processes The MaxActiveProcessCount parameter of the Set-SPWordViewingServiceApplication cmdlet can be used to specify the number of active processes available to render Word documents. In addition to these there are some settings that arent available in the UI that can only be configured via Windows PowerShell using the Set-SPWordViewingServiceApplication cmdlet, these are KeepAliveTimeOutInSeconds Specifies the amount of time, in seconds, that a worker process is allowed to be nonresponsive before it is terminated. The default value for this setting is 120 seconds. MaxRenderingLifetimeInSeconds Specifies the total amount of time, in seconds, that a worker process is allowed to process a particular rendition. The default value for this setting is 300 seconds. LocalCacheStoreDirectory Specifies the location of the temporary cache for use by the Word Viewing Service application. The default value is %temp%\waccache LocalCacheTimeoutInSeconds Specifies the amount of time, in seconds, that an output file remains on the application server. The default value is 300 seconds. In the example below Set-SPWordViewingServiceApplication has been used to set MaxRenderingLifetimeInSeconds to 600 seconds. $serviceAppId = (Get-SPServiceApplication | where {$_.DisplayName -eq "Word Viewing Service"}).ID Set-SPWordViewingServiceApplication -Identity $serviceAppId MaxRenderingLifetimeInSeconds 600
Page 13
SharePoint 2010 - Office Web Apps, Installation, Configuration and Troubleshooting Guide, Prepared by Brendan Griffin "SharePoint 2010 - Office Web Apps" last modified on 29 Nov. 11, Rev 10
The proxy for the Word Viewing service application has a single setting that can only be configured using Windows PowerShell. The setting SilverlightOnly is used to force all documents to render in Silverlight, this requires all client to have at least Microsoft Silverlight 3 installed. $serviceAppProxyID = (Get-SPServiceApplicationProxy | where{$_.displayname -eq "Word Viewing Service"}).ID Set-SPWordViewingServiceApplicationProxy -identity $serviceAppProxyID Silverlightonly:$true
A number of settings can be configured for the cache, these are: Cache size The default cache size is 100GB. This can be changed using the Windows PowerShell cmdlet Set-SPOfficeWebAppsCache. In the example below the cache size is set to 200GB $200gbInBytes = 1024 * 1024 * 1024 * 200 Get-SPWebApplication | Set-SPOfficeWebAppsCache -MaxSizeInBytes $200gbInBytes This configures an individual quota for the site collection, as below:
Page 14
SharePoint 2010 - Office Web Apps, Installation, Configuration and Troubleshooting Guide, Prepared by Brendan Griffin "SharePoint 2010 - Office Web Apps" last modified on 29 Nov. 11, Rev 10
Expiration period The number of days that documents remain in the cache before they are deleted is 30 days. This can be changed using the Windows PowerShell cmdlet Set-SPOfficeWebAppsCache. In the example below the expiry period for the cache is configured to 15 days. Get-SPWebApplication | Set-SPOfficeWebAppsCache -ExpirationPeriodInDays 15
Location The content database that the Office_Viewing_Service_Cache site resides within can be changed using the Windows PowerShell cmdlet Move-SPSite. If Office Web Apps are going to be heavily used then it may be worthwhile creating a dedicated content database for this site collection.
MaxFrontEndCacheSizeInMB This setting is used to control the amount of memory that is used to cache Office Web Apps documents, the default value is 75. This can be amended using the Windows PowerShell cmdlet Set-SPOfficeWebAppsCache. In the example below the value was configured to 100. Get-SPWebApplication | Set-SPOfficeWebAppsCache -MaxFrontEndCacheSizeInMB 100
MaxFrontEndDocumentInfoCacheItems This setting is used to control the number of documents that are held in the in-memory cache, the default value is 1000. This can be amended using the Windows PowerShell cmdlet SetSPOfficeWebAppsCache. In the example below the value was configured to 2000.
Page 15
SharePoint 2010 - Office Web Apps, Installation, Configuration and Troubleshooting Guide, Prepared by Brendan Griffin "SharePoint 2010 - Office Web Apps" last modified on 29 Nov. 11, Rev 10
Timer Jobs The cache creation job ensures that each Web application has a cache is configured to run every 5 minutes by default. The expiration job expires documents and ensures that the cache does not run out of space runs daily, this job has an instance per Web application. These timer jobs can be amended via Central Administration > Monitoring > Review job definitions
Page 16
SharePoint 2010 - Office Web Apps, Installation, Configuration and Troubleshooting Guide, Prepared by Brendan Griffin "SharePoint 2010 - Office Web Apps" last modified on 29 Nov. 11, Rev 10
Page 17
SharePoint 2010 - Office Web Apps, Installation, Configuration and Troubleshooting Guide, Prepared by Brendan Griffin "SharePoint 2010 - Office Web Apps" last modified on 29 Nov. 11, Rev 10
Page 18
SharePoint 2010 - Office Web Apps, Installation, Configuration and Troubleshooting Guide, Prepared by Brendan Griffin "SharePoint 2010 - Office Web Apps" last modified on 29 Nov. 11, Rev 10