Friday, December 9, 2011

Lync Mobility Deployment - Part I

The big day has come. I will install and configure Lync Mobility Support in my lab. When done, I should expect my environment to have three new services:

  • Mobility service,  new virtual (Mcx) directories under both Internal and External websites of my Front End Server(s). This service will support various mobile devices and provide IM, presence, contacts etc.
  • Autodiscover service – new virtual (Autodiscover) directories under both Internal and External websites of my Front End Server(s). This service will be used from mobile device to locate the internal and external services which supports mobility.
  • Push Notification Service – This actually is a cloud-based service located in Lync Online datacenter. Because devices based on Windows Mobile and Apple iOS are designed to go in “suspended state” when not active, those cannot actively respond to new events (while suspended) and notification to “wake up” the application must be supplied somehow. This process will be described in later post.
*****I would like to emphasize on the importance of utilizing Autodiscover service. As we will see later, using Autodicover is not mandatory and users can manually specify the mobility service URL’s (internal and external). While this is relatively simple task, we as Administrators or support team members should be prepared for increased number of support calls (simple typo while entering the service URL will cause the signup process to fail) shall decide not to deploy Autodiscover service.

With this in mind, let’s proceed with introducing Lync Mobile device support to our environment.

First, I will need to make the necessary DNS entries. I already decided to use Automatic Discovery and for that, I will make an entry in my Internal DNS for ‘ pointing to the IP address of my only Front End server. Now, I do not use Director Role in my lab, else I would ponit to either the Director pool.

***I could also use CNAME record pointing to the FQDN of my FE server (or Director as described above), but this would mean an extra hop since after obtaining the FQDN, a second call to the DNS server will be made to discover the IP address of the server. Both records are valid scenario and it is up to you to decide which model to use.

Next, I will make an entry in my External DNS (currently hosted with GoDaddy and will not be shown here). I will point this record to the IP address of my Reverse Proxy, where new listener will be created on later stage.

Moving along on with the prerequisites. The new web service requires “Dynamic Content Compression” role service on our Web Server. This can be done either via Add/Remove roles or Lync Management shell by issuing the following commands:

Import-Module ServerManager
Add-WindowsFeature Web-Server, Web-Dyn-Compression

***If you are using IIS7.0, refer to the product manual for additional configuration steps.

***Before proceed further, it is imperative that you already installed “Cumulative Update for Lync Server 2010: November 2011” a.k.a. Lync CU4. Once installed, Lync server will be extended with new features.

In order to install the Mobile Support bits, I must set the ports for the Internal and External Web Services via Lync Management Shell:

Set-CsWebServer –Identity FQDN –McxSipPrimaryListeningPort 5086
Set-CsWebServer –Identity FQDN –McxSipExternalListeningPort 5087
…and run Enable-CsTopology –verbose to make the change.

***Note that this must be done on each Front End and Director in your environment where Mobile devices will be supported.

Navigate to "C:\ProgramData\Microsoft\Lync Server\Deployment\cache\4.0.7577.0\setup" and drop McxStandalone.msi there.

In Lync Management Shell, navigate to "C:\Program Files\Microsoft Lync Server 2010\Deployment" and run Bootstrapper.exe. At this point, we will see the two new web services installed.

So, I now have the virtual directories but what about the certificates? Indeed, I need to request and assign new certificates from my Internal CA to include the new DNS names I added above. Fortunately, with CU4, Lync Deployment Wizard become "smarter" and will do this for me.

Now I can test the deployment as described in the Deployment guide:

So far, so good. Later today I will deploy new listener on my TMG server and meanwhile hope the clients will be published soon...


Fader said...

You did not mention that Powershell consumes more then 1 Gb of memory during the P2PIM test! Be careful folks

Fader said...

The above is only true if you do it from a remote machine not from the FE server.

Server Support said...

I am getting server over usage emails from my hosting provider. I am looking for awesome server support that can offer better solutions for my issues. Thank you.

Brett said...

Thanks for the all the helpful and insightful information provided on your UCS blog. I look forward to part 2 being posted very soon!

Blogger said...

Bluehost is ultimately the best hosting company with plans for any hosting requirments.