Deploying Office Online Server for Exchange 2016 – Part 2
In Part 1 of this series, I covered the basics of deploying a new OOS server farm. In this part, I am going to cover the configuration of OOS to support Exchange 2016.
Connecting OOS to Exchange
Your new OOS farm can be connected to any version of Exchange from 2007 to 2016. Connecting OOS to any version of Exchange previous to Exchange 2016 just allows users to open documents from OWA within the browser. That is not a terribly compelling feature, and I don’t recall ever deploying WAC for a customer to be used for just Exchange. The few times that I have connected WAC to Exchange, it was intended to be used for Lync or SharePoint and just connected to Exchange “because it was there”.
OotW/OWA can still open Office documents via Web Ready Viewing without a WAC/OOS server deployed. Web Ready Viewing is a pretty poor experience, but it’s good enough to figure out if you want to download the attachment locally to work on.
OOS Exchange 2016 features
As I mentioned in Part 1 of this series, the compelling reason to deploy OOS alongside of Exchange 2016 is to enable Modern Attachments.
- Enables Modern Attachments
- Allows users to preview attachments from within OWA (now called Outlook on the Web OotW)
Planning considerations for connecting OOS to Exchange
Before we look at how to connect our new OOS server or farm to Exchange, there are two main planning considerations we should think about for this deployment.
- OOS cannot open documents that are protected by Information Rights Management. If you have IRM applied to your attachments, you’ll need to use the regular old phat client Office applications to open those documents.
- OOS must be available accessible from the internet for users to take advantage of OOS from outside your network.
The PowerShell Command
Of course, connecting your new OOS server or farm to your Exchange 2016 environment can only be done via PowerShell. If you’re not familiar and comfortable with PowerShell by now I recommend to stop reading this and go learn PowerShell.
Set-OrganizationConfig –WACDiscoveryEndPoint https://oos.mcsmlab.com/hosting/discovery
You may have noticed that the parameter used is “WACDiscoveryEndPoint” for connecting to OOS in Exchange 2016. We could have a “Who’s on First” type conversation about using the acronym “WAC” which is short for “Office Web Apps Server” to connect your Exchange 2016 server to an Office Online Server farm. Let’s just skip past that and all agree that whomever is in charge of naming Office products for Microsoft should be sacked using an actual sack.
Once that command completes, you can verify the configuration by running
Get-OrginizationConfig | Format-List WACDisocveryEndPoint
You should be returned the URL you just entered in the Set-OrginizationConfig command. Finally, you’ll need to restart the Web Application Pool for Outlook on the Web before things will start working. The command for that is
Restart-WebAppPool –Name MSExchangeOWAAppPool
See the conversation a couple of paragraphs up for my feelings on the renaming of Outlook Web App to Outlook on the Web.
Configuring OOS for Exchange 2016
There are some additional configurations for OOS that I will now cover.
You can enable or disable rendering via the Set-OwaVirtualDirectory command. This command gives you the option enable or disable OOS viewing on public or private computers as well as forcing users to view documents via OOS before downloading them on public and/or private computers. It is important to point out that the user themselves is responsible for designating the computer they are logging into as public or private. To control this functionality run Set-OwaVirtualDirectory with the following parameters set to $true or $false
-WacViewingOnPrivateComputersEnabled -WacViewingOnPublicComputersEnabled -ForceWacViewingFirstOnPublicComputers -ForceWacViewingFirstOnPrivateComputers
Other PowerShell Command for OOS
There are some new PowerShell commands for OOS that as of this writing are not documented on TechNet. I’m not going to go into them here, mostly because I don’t want to sold like a fool when I completely misunderstand what they do. I will, however, list all the commands loaded by the OfficeWebApps PowerShell module on my newly installed OOS server.
- Get-OfficeWebAppsExcelBIServer
- Get-OfficeWebAppsExcelUserDefinedFunction
- Get-OfficeWebAppsFarm
- Get-OfficeWebAppsHost
- Get-OfficeWebAppsMachine
- New-OfficeWebAppsExcelBIServer
- New-OfficeWebAppsExcelUserDefinedFunction
- New-OfficeWebAppsFarm
- New-OfficeWebAppsHost
- New-OfficeWebAppsMachine
- Remove-OfficeWebAppsExcelBIServer
- Remove-OfficeWebAppsExcelUserDefinedFunction
- Remove-OfficeWebAppsHost
- Remove-OfficeWebAppsMachine
- Repair-OfficeWebAppsFarm
- Set-OfficeWebAppsExcelUserDefinedFunction
- Set-OfficeWebAppsFarm
- Set-OfficeWebAppsMachine
Wrapping it up
So that’s it for my dive into the Office Online Server preview. Of course this guide is not enough to get you running with Modern Attachments. Modern Attachments require a SharePoint server to store the actual Office documents. I think I'll leave that part of the equation to the SharePoint experts.
If you have any questions, please let me know in the comments below.
-Nathan