Office Web Apps 2013: Patching your WAC farm with no downtime

Tags: Office Web Apps, SharePoint 2013

I’m really glad to see some patches being rolled out for Office 2013, SharePoint 2013 and Office Web Apps 2013. There’s some really important fixes and some very interesting fixes that I’ve been waiting for. In this post we’ll take a look at the first Office Web Apps 2013 (WAC) update – specifically we’re looking at how to patch your WAC farm to minimize the downtime. If you follow my instructions you will have zero downtime (except for a brief moment where Excel stuff will not be accessible).

Background and preparations

RTM WACsFor this sample I will have a SharePoint 2013 (RTM) farm connected to a WAC 2013 (RTM) farm. The WAC farm is load balanced using NLB, like illustrated on the right.

On order to update our WAC farm we need to download the March 2013 patch for Office Web Apps 2013. You can find it at Microsoft Download center and it is called “Update for Microsoft Office Web Apps Server 2013 (KB2760445)”. The KB article does not reveal much of what has changed, but if you take a look at an earlier patch KB2760486 (March 5th) you’ll notice some really cool things. If you don’t have time to read it – I’ll show you some of them at the end of this post. Ok, you do not have to install KB2760486, you only need the KB2760445 one.

Patching the first WAC Server

After downloading the patch and copying it to our WAC machines we can start the patching process. We would like to do this without the users even noticing it. First of all we need to take one of the servers out of rotation in the WAC farm. You do this using the load balancer. In my case I’m using Microsoft NLB and using PowerShell this is an easy task. Next thing to do is just remove the WAC server from the WAC farm – that is also a one-line PowerShell command. WAC Servers should only be patched with the binaries installed, not when they are participating in a WAC farm.

These two lines does the trick:

Get-NlbClusterNode -NodeName $env:COMPUTERNAME | Stop-NlbClusterNode -Drain
Remove-OfficeWebAppsMachine
NOTE: You MUST remove the machines from the old farm before patching and then later create a new WAC farm (follow the instructions thoroughly). You cannot patch a running WAC Farm!

Once this is done the server is no longer receiving requests and it’s no longer a part of the WAC farm and we can start patching this machine. All our end-user requests are now going to the remaining server(s) in the WAC farm.

One RTM and one patching going on...

To patch the machine start the downloaded .exe file (wacserver2013-kb2760445-fullfile-x64-glb.exe) and just follow the instructions; accept license agreement etc. You will be asked to close any PowerShell (IDE) windows that has the Office Web Apps module loaded and you might get asked to reboot once the update is finished (there’s of course no harm in doing it anyways).

When the patching is done (and you rebooted) we need to create a new WAC farm, on the patched server. You do this using the same way as you did for the RTM version. Use the same server name as your old farm, same settings and the same certificate.

Patching the rest…

Once the new farm is created you have a few options depending on how many servers you have in your WAC farm. For instance if you have more than two, then you can take another one out of rotation, patch it and join it to the new and patched farm and then you flip the load balancer so it points to the new WAC farm. Depending on your load balancer you might have a brief moment where end-user request might be served by both versions. A bit funky situation but it works, as the illustration below shows:

Dual versions...

In my case I have two servers, so once I created the new farm I just put the patched server into the NLB rotation and then immediately take the RTM server out of rotation. Once the RTM WAC Server is taken out of rotation I remove WAC from that machine and start the patching process. All requests to the WAC farm are now on our patched server(s).

One March 2013 and the other one is being patched

As you can see, simple PowerShell operations this time as well, and this can (and should) be automated.

# On the new patched WAC Server
Get-NlbClusterNode -NodeName $env:COMPUTERNAME | Start-NlbClusterNode

# On the RTM WAC Server
Get-NlbClusterNode -NodeName $env:COMPUTERNAME | Stop-NlbClusterNode -Drain
Remove-OfficeWebAppsMachine

Once the other server(s) are patched, you need to join it to the newly created (and patched) WAC farm – just as you normally join a server to a WAC farm. And then you’re done. You’re farm is now patched and ready! But wait, there’s some stuff you have to do on the SharePoint side to enjoy all the new cool features.

All new and shiny!

Configuring new WOPI bindings

One of the most interesting new features in the March 2013 update of Office Web Apps is the ability to view PDF documents! Yup, you heard me right! The March 2013 update contains a couple of new WOPI bindings that enable viewing and previewing (even mobile views) for PDF documents. These new WOPI binding has an application name called WordPdf. If you try to use the New-SPWOPIBinding cmdlet and just specify the WAC server name, you will get an error – since you already have those WOPI bindings. What you need to do is to specify the name of the application as an extra parameter to the command, like this:

New-SPWOPIBinding - ServerName wac.corp.local -Application WordPdf

WOPI Bindings

Another approach could be to remove all the bindings and then add them all back again – of course this would cause a few seconds of downtime, and that’s not how I roll…

Once you’ve run that command (and waited a couple of seconds) you can start previewing PDF documents in your Document Libraries. And now we got yet another good reason not to install the crapware called Adobe Reader!

Viewing PDF documents

Now, your end users can start taking advantage of all the new features in the March 2013 update.

New Excel WOPI Bindings!

If you’re examining the WOPI bindings provided by the March 2013 update really carefully, you’ll notice that the Excel application has six new bindings, three each for the two new actions syndicate and legacywebservice. We cannot use these two bindings in SharePoint 2013 RTM – the New-SPWOPIBinding cmdlet does not accept those actions. They are not a part of the well-known WOPI action values (as specified in the WOPI specification available when this post is written) – and I have at the moment no clue of what they are doing…stay tuned…

Summary

You’ve just seen how simple patching an Office Web Apps 2013 farm is. Compare that to patching SharePoint! By using the load balancer effectively you can make sure that the end-users can continue to use the Office Web Apps features while you’re doing the patching. Enjoy!

22 Comments

  • Dennis said

    Thanks for this insightful article...

    "see some patches being rolled out for Office 2013, SharePoint 2013" - would you happen to have links to these Office 2013 + SHarePoint 2013 Updates as well?

  • Sorin said

    Hi
    After applying that patch my WAC server is useless.
    Processor goes to 100% hard disk is busy all the time.
    Especially this hard disk usage makes the server unresponsive.
    Any ideas ?

  • Wictor said

    1) Which processes are working - use the task manager?
    2) What is happening on the disk - use the resource manager?
    3) Any "interesting" stuff in the WAC ULS logs?

  • Sorin said

    I've seen just some WerFault processes but I can't dig further because everything was VERY VERY SLOW.
    If fact I can't use that computer.
    My luck was that it's a VM and I revert it to a good snapshot.

  • Wictor said

    If it's WerFault then it's the Windows Error Reporting that's reporting the errors. You should see the errors in the Event Log and in the WAC ULS logs.
    /WW

  • Wictor said

    I'd like to know more about these errors. Please feel free to e-mail me the ULS logs so I can take a look at them (mail 2 Wictor at Outlook dot com)

  • Aleksey Lukyanov said

    I ran into the same problem. A server with WebApps 2013 with the default settings. Works fine.
    After installing the updates KB2760445 or KB2760486 a have reboot the system prompts and then exe-files webapps services begin to fall.
    Here is what is written in this case in the system log:
    Faulting application name: WordViewerAppManagerWatchdog.exe, version: 15.0.4481.1000, time stamp: 0x50ee5a78
    Faulting module name: KERNELBASE.dll, version: 6.2.9200.16451, time stamp: 0x50988aa6
    Exception code: 0xe0434352
    Fault offset: 0x000000000003811c
    Faulting process id: 0x11f8
    Faulting application start time: 0x01ce20db4471f5d3
    Faulting application path: C:\Program Files\Microsoft Office Web Apps\WordViewerAppManagerWatchdog\WordViewerAppManagerWatchdog.exe
    Faulting module path: C:\Windows\system32\KERNELBASE.dll

    Report Id: 84cdef2b-8cce-11e2-93fe-00155d44ea02

    --------------------------

    Application: WordViewerWfeWatchdog.exe
    Framework Version: v4.0.30319
    Description: The process was terminated due to an unhandled exception.
    Exception Info: System.TypeInitializationException
    Stack:
    at Microsoft.Office.Web.Common.ServiceInstanceFinder.GetLocalAgentInstance(Microsoft.Office.Web.Common.OfficeServiceType)
    at Microsoft.Office.Web.Common.WatchdogHelper.PrepareRegistrations(Microsoft.Office.Web.Common.OfficeServiceType)
    at Microsoft.Office.Web.Common.WatchdogHelper.WatchMachines(Microsoft.Office.Web.Common.OfficeServiceType, CheckServiceInstance, Microsoft.Office.Web.Common.OfficeServiceType, System.String)

    at Microsoft.Office.Web.WordViewerWatchdog.Wfe.Program.Main()

    ---------------------------------------------

    Faulting application name: Microsoft.Office.Excel.Server.EcsWatchdog.exe, version: 15.0.4481.1000, time stamp: 0x50ee5ed2
    Faulting module name: KERNELBASE.dll, version: 6.2.9200.16451, time stamp: 0x50988aa6
    Exception code: 0xe0434352
    Fault offset: 0x000000000003811c
    Faulting process id: 0x1ea8
    Faulting application start time: 0x01ce20db42238d72
    Faulting application path: C:\Program Files\Microsoft Office Web Apps\ExcelServicesEcsWatchdog\Microsoft.Office.Excel.Server.EcsWatchdog.exe
    Faulting module path: C:\Windows\system32\KERNELBASE.dll

    Report Id: 815fc543-8cce-11e2-93fe-00155d44ea02

    -------------------------------------------

    Only backup can save me..

  • Dennis said

    Hah! I thought I was the only pne with the Watchdog exceptions spamming the event log like crazy. I had the same thing happen to me - even once before the update.
    Repair installing never solves the problem - the only way to solve it for me was to uninstall and reinstall - no problems afterwards. Reinstalling is quick as I only have to create a new Office Web Apps farm - Sharepoint retains all bindings.

  • Steven Van de Craen said

    The March update for WAC indeed causes a lot of crashes for all exe's and spams the event log. I think the config XML schema is changed between those two versions. After installing the March update just recreate your WAC farm (New-OfficeWebAppsFarm) and all will work fine again. It did for me (running WS2012).

  • Deleep said

    Wictor,

    Is the online viewer file size limited to 10 Mb? Is there a way to configure this? and is this size limit applicable to a custom WOPI client too ?

    Thanks,
    Deleep

  • Wictor said

    For all of you who are having trouble - make sure that you removed the server that you patched from the farm and created a NEW WAC farm. /WW

  • Dinesh said

    Hi Wictor,

    I have one question regarding installing Office web app 2013. Is it not possible to install the office web apps 2013 and Sharepoint 2013 in same Server?.

    Thank you.

  • Dome said

    Hi...

    after updating the WAC Servers i got the error message "Sorry, there was a Problem and we cant open this document" on Word Files...

    I configured the farm with ssl certificat.... no -allowhttp... no allow oauth over http etc...

    any ideas?

  • Ajay Iyer said

    Wictor - Thanks for sharing this. It seems that each time you load a pdf file in the word web app, it seems to squish the fonts. Not very clear.

    Have you run in to this?

    Thanks
    Ajay

  • khaled said

    this update you mentioned is supported by windows server 2008 only !
    as mentioned by the details of the updates

    did you apply this update on windows server 2012 ?

Comments have been disabled for this content.

About Wictor...

Wictor Wilén is the Nordic Digital Workplace Lead working at Avanade. Wictor has achieved the Microsoft Certified Architect (MCA) - SharePoint 2010, Microsoft Certified Solutions Master (MCSM) - SharePoint  and Microsoft Certified Master (MCM) - SharePoint 2010 certifications. He has also been awarded Microsoft Most Valuable Professional (MVP) for seven consecutive years.

And a word from our sponsors...