TAG | OperationsManager
6
SCOM / OpsMgr: Lync 2010 Management Pack – Deploying Synthetic transactions (STs)
5 Comments · Posted by Christopher Keyaert in OpsMgr / Scom
Introduction
Lync Server 2010 Monitoring Management Pack is a comprehensive End-to-End monitoring management pack for System Center Operations Manager 2007 R2. Extensive component event and performance monitoring is available, and new in this release is full support for Synthetic Transactions against a distributed Lync Server 2010 deployment.
The most part of the next lines are directly coming from the Microsoft Documentation available on pinpoint portal: http://pinpoint.microsoft.com/en-US/applications/Lync-Server-2010-Monitoring-Management-Pack-12884908254
But as I found that the “Synthetic Transaction” part a little bit complicated for non Lync 2010 Administrator, I added my comments, advises and screenshots below. I hope this will help in your Lync 2010 management pack deployment.
Setting up Synthetic transaction watcher node
Synthetic transactions are Lync Server 2010 cmdlets that are automatically triggered by the management pack on a preset interval. These are executed on a synthetic transaction watcher node which is an administrator designated server responsible for discovery and execution of STs for each pool.
It is not recommended to use an existing Lync Server 2010 server as a synthetic transaction watcher node. This is due to the high CPU/memory utilization requirements for running STs. It’s recommended to use a new server machine (or a virtual machine) for the synthetic transaction watcher node. (Recommended configuration is available in Microsoft documentation).
Add ST Watcher Node as a trusted Microsoft Lync Server 2010 Application pool
The following actions must be executed from any of your existing Lync servers.
-
Create external application pool with synthetic transaction watcher node machine as a member. While creating use machine FQDN as pool FQDN. To create the pool you can run the following cmdlet from the Lync Server Management Shell on any of your existing Lync server:
New-CsTrustedApplicationPool -Identity <PoolFQDN> -Site <SiteID> -Registrar <RegistrarPoolFQDN> -Verbose
Where
<PoolFQDN>: Is the FQDN of the external application pool to be created. Use watcher node machine FQDN (the fresh installed server) as Pool FQDN
<SiteID>: The ID of the site where the application pool belongs to
<RegistrarPoolFQDN>: The FQDN of the registrar pool that the external application pool depends on
Example:
New-CsTrustedApplicationPool -Identity bramomlyc001.dir.ucb-group.com -Site 1 -Registrar hqpool.dir.ucb-group.com -Verbose

- Verify that external application pool has been added by running Get-CsPool
-
Create an external application service entry in topology by using following cmdlet from the Lync Server Management Shell:
New-CsTrustedApplication -ApplicationId <AppID> -TrustedApplicationPoolFqdn <externalAppPoolFQDN> -Port <PortNumber> -Verbose
Where
<AppID>: Is an ID for the application. For example, you can use “STWatcherNode”
<externalAppPoolFQDN>: Is the FQDN of the external application pool that you created in step 1
<PortNumber>: Any unused port number.
Example:
New-CsTrustedApplication -ApplicationId “StWatcherNode” -TrustedApplicationPoolFqdn bramomlyc001.dir.ucb-group.com -Port 9999 –Verbose

Configure ST Watcher Node machine
The following actions must be executed from the new installed server.
-
Install Lync Server 2010 core MSI, after that launch the Deployment Wizard and install the “Local Configuration Store”



-
Skip the Step and go directly to the Step 3: Request, Install and Assign Certificates.



- From the Lync Server Management Shell, run Enable-CsComputer –verbose. This will assign group memberships and resource permissions to support Lync Server services running on the host computer.

-
In your Active Directory, create two domain users that will be used by the Synthetic transaction monitoring scripts. Don’t forget to fill the email field in the user configuration screen. (Just the Email field, a real mailbox is not necessary)
-
In your Lync configuration panel, enable the two users that you just created as Enterprise Voice. Verify that these two users have well received the Conferencing Policy and the External Access Policy but executing the following command :
Get-CSUser username

-
Assign Test Users to registrar and user service clusters by using Health Monitoring Configuration cmdlet
New-CsHealthMonitoringConfiguration -TargetFQDN <PoolFQDN> -FirstTestUserSipUri <FirstUserSipUri> -SecondTestUserSipUri <SecondUserSipUri> -Verbose
Where
<PoolFQDN>: Is the Pool FQDN you wish to run STs against (where users are hosted).
<FirstUserSipUri>: Sip Uri of first test user to be used for synthetic transaction.
<SecondUserSipUri>: Sip Uri of second test user to be used for synthetic transaction.
Example:
New-CsHealthMonitoringConfiguration hqpool.dir.ucb-group.com -FirstTestUserSipUri “sip:gbl.gmso.lyc1@ucb.com” -SecondTestUserSipUri “sip: gbl.gmso.lyc2@ucb.com ” –Verbose

-
Make sure synthetic transactions are working by running the following cmdlet from in the Lync Server Management Shell.
Test-CsRegistration <RegistrarPoolFQDN> -verbose

-
Set registry key for watcher node discovery and optionally for enabling logging by executing the following cmdlets from Lync Server Management Shell:
New-Item -Path “HKLM:\Software\Microsoft\Real-Time Communications\Health”
New-ItemProperty -Path “HKLM:\Software\Microsoft\Real-Time Communications\Health” -Name “IsSTWatcherNode” -Value true | Out-Null
New-ItemProperty -Path “HKLM:\Software\Microsoft\Real-Time Communications\Health” -Name “LogOpsMgr” -PropertyType DWord -value 2

Configuring Active directory
- Add the synthetic transaction watcher node machine as a member of RTCUniversalReadOnlyAdmins group.
- From Lync Server Management Shell on watcher node run Enable-CsComputer –Verbose

- Restart Machine (this is required after machine is added to RtcUniversalReadOnlyAdmins)
Configure Operations Manager Agent settings on ST Watcher Node
-
Increase the thread pool count for synthetic transaction watcher node by modifying the value for the below registry key.
-
HKLM:\System\CurrentControlSet\Services\HealthService\Parameters
[DWORD] Thread Pool CLR Max Thread Count Min 200 decimal
-
Note: Spaces between the words should be reserved as shown above.
If the registry key does not exist you can create it by running the following PS cmdlet
New-ItemProperty -Path “HKLM:\System\CurrentControlSet\Services\HealthService\Parameters” -Name “Thread Pool CLR Max Thread Count Min” -propertytype DWord -value 200

- Restart health service:
Net stop healthservice & Net start healthservice
Other Settings for Synthetic Transactions
Web (HTTP) Synthetic Transactions required the folder %SystemRoot%\temp to have write access by the Network Service identity. Please make sure that the ACL on %SystemRoot%\temp include write access for Network Service.
Testing the Synthetic Transaction with PowerShell
Execute the following command to ensure that the Synthetic Transaction are working well

Now, I invite you to continue the configuration of your Lync 2010 management pack with the official Microsoft documentation. http://pinpoint.microsoft.com/en-US/applications/Lync-Server-2010-Monitoring-Management-Pack-12884908254
Christopher KEYAERT
lync 2010 · microsoft · OperationsManager · opsmgr · PowerShell · Scom · Synthetic transactions
13
SCOM : Maintenance Mode History / Report
1 Comment · Posted by Christopher Keyaert in OpsMgr / Scom, PowerShell
By powershell :
http://blogs.technet.com/b/brianwren/archive/2008/03/11/mms-command-shell-presentation.aspx
$mc = get-monitoringClass -name Microsoft.Windows.Computer
$mo = get-monitoringObject -monitoringClass $mc | where {$_.name -eq ‘srv01′}
$mo | get-maintenanceWindow -history
By SQL :
maintenance mode history is available in the OperationsManager database or DW using this query
select * from dbo.vMaintenanceModeHistory
By a specific management pack :
http://www.systemcentercentral.com/tabid/145/indexId/70867/Default.aspx
This MP includes a report that allows tracking of who is using maintenance mode to disable monitoring and reports the maintenance start, end, comment, user id and reason code.
database · maintenance mode · Object · OperationsManager · start
